org.apache.maven.plugins.enforcer
Class RequireOS

java.lang.Object
  extended by org.apache.maven.plugins.enforcer.AbstractStandardEnforcerRule
      extended by org.apache.maven.plugins.enforcer.RequireOS
All Implemented Interfaces:
EnforcerRule

public class RequireOS
extends AbstractStandardEnforcerRule

This rule checks that the OS is allowed by combinations of family, name, version and cpu architecture. The behavior is exactly the same as the Maven Os profile activation so the same values are allowed here.

Version:
$Id: RequireOS.java 675992 2008-07-11 15:42:48Z hboutemy $
Author:
Brian Fox

Field Summary
 java.lang.String arch
          The OS architecture desired.
 boolean display
          Display detected OS information.
 java.lang.String family
          The OS family type desired
Possible values: dos mac netware os/2 tandem unix windows win9x z/os os/400
 java.lang.String message
          Specify an optional message to the user if the rule fails.
 java.lang.String name
          The OS name desired.
 java.lang.String version
          The OS version desired.
 
Constructor Summary
RequireOS()
          Instantiates a new RequireOS.
 
Method Summary
 boolean allParamsEmpty()
          Helper method to check that at least one of family, name, version or arch is set.
 void displayOSInfo(org.apache.maven.plugin.logging.Log log, boolean info)
          Log the current OS information.
 void execute(EnforcerRuleHelper helper)
           
 java.lang.String getArch()
          Gets the arch.
 java.lang.String getCacheId()
           
 java.lang.String getFamily()
          Gets the family.
 java.lang.String getName()
          Gets the name.
 java.lang.String getVersion()
          Gets the version.
 boolean isAllowed()
          Helper method to determine if the current OS is allowed based on the injected values for family, name, version and arch.
 boolean isCacheable()
           
 boolean isResultValid(EnforcerRule theCachedRule)
           
 boolean isValidFamily(java.lang.String theFamily)
          Helper method to check if the given family is in the following list: dos mac netware os/2 tandem unix windows win9x z/os os/400 Note: '!' is allowed at the beginning of the string and still considered valid.
 void setArch(java.lang.String theArch)
          Sets the arch.
 void setFamily(java.lang.String theFamily)
          Sets the family.
 void setName(java.lang.String theName)
          Sets the name.
 void setVersion(java.lang.String theVersion)
          Sets the version.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

family

public java.lang.String family
The OS family type desired
Possible values:


name

public java.lang.String name
The OS name desired.


version

public java.lang.String version
The OS version desired.


arch

public java.lang.String arch
The OS architecture desired.


message

public java.lang.String message
Specify an optional message to the user if the rule fails.


display

public boolean display
Display detected OS information.

Constructor Detail

RequireOS

public RequireOS()
Instantiates a new RequireOS.

Method Detail

execute

public void execute(EnforcerRuleHelper helper)
             throws EnforcerRuleException
Throws:
EnforcerRuleException

displayOSInfo

public void displayOSInfo(org.apache.maven.plugin.logging.Log log,
                          boolean info)
Log the current OS information.

Parameters:
log - the log
info - the info

isAllowed

public boolean isAllowed()
Helper method to determine if the current OS is allowed based on the injected values for family, name, version and arch.

Returns:
true if the version is allowed.

allParamsEmpty

public boolean allParamsEmpty()
Helper method to check that at least one of family, name, version or arch is set.

Returns:
true if all parameters are empty.

isValidFamily

public boolean isValidFamily(java.lang.String theFamily)
Helper method to check if the given family is in the following list: Note: '!' is allowed at the beginning of the string and still considered valid.

Parameters:
theFamily - the family to check.
Returns:
true if one of the valid families.

getArch

public java.lang.String getArch()
Gets the arch.

Returns:
the arch

setArch

public void setArch(java.lang.String theArch)
Sets the arch.

Parameters:
theArch - the arch to set

getFamily

public java.lang.String getFamily()
Gets the family.

Returns:
the family

setFamily

public void setFamily(java.lang.String theFamily)
Sets the family.

Parameters:
theFamily - the family to set

getName

public java.lang.String getName()
Gets the name.

Returns:
the name

setName

public void setName(java.lang.String theName)
Sets the name.

Parameters:
theName - the name to set

getVersion

public java.lang.String getVersion()
Gets the version.

Returns:
the version

setVersion

public void setVersion(java.lang.String theVersion)
Sets the version.

Parameters:
theVersion - the version to set

getCacheId

public java.lang.String getCacheId()

isCacheable

public boolean isCacheable()

isResultValid

public boolean isResultValid(EnforcerRule theCachedRule)


Copyright © 2007-2011 Apache Software Foundation. All Rights Reserved.