Class RequireEnvironmentVariable
- java.lang.Object
-
- org.apache.maven.plugins.enforcer.AbstractStandardEnforcerRule
-
- org.apache.maven.plugins.enforcer.AbstractNonCacheableEnforcerRule
-
- org.apache.maven.plugins.enforcer.AbstractPropertyEnforcerRule
-
- org.apache.maven.plugins.enforcer.RequireEnvironmentVariable
-
- All Implemented Interfaces:
EnforcerRule
,EnforcerRule2
public class RequireEnvironmentVariable extends AbstractPropertyEnforcerRule
This rule checks that certain environment variable is set.
-
-
Field Summary
Fields Modifier and Type Field Description private java.lang.String
variableName
Specify the required variable.
-
Constructor Summary
Constructors Constructor Description RequireEnvironmentVariable()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String
getCacheId()
If the rule is to be cached, this id is used as part of the key.java.lang.String
getName()
How the property that is being evaluated is calledjava.lang.String
getPropertyName()
The name of the property currently being evaluated, this is used for default message purposes onlyjava.lang.String
getVariableName()
boolean
isCacheable()
This method tells the enforcer if the rule results may be cached.boolean
isResultValid(EnforcerRule cachedRule)
If the rule is cacheable and the same id is found in the cache, the stored results are passed to this method to allow double checking of the results.java.lang.String
resolveValue(EnforcerRuleHelper helper)
Resolves the property valuevoid
setVariableName(java.lang.String variableName)
-
Methods inherited from class org.apache.maven.plugins.enforcer.AbstractPropertyEnforcerRule
execute, getRegex, getRegexMessage, setRegex, setRegexMessage
-
Methods inherited from class org.apache.maven.plugins.enforcer.AbstractStandardEnforcerRule
getLevel, getMessage, setLevel, setMessage
-
-
-
-
Method Detail
-
setVariableName
public final void setVariableName(java.lang.String variableName)
- Parameters:
variableName
- the variable name- See Also:
setVariableName(String)
,getVariableName()
-
getVariableName
public final java.lang.String getVariableName()
-
resolveValue
public java.lang.String resolveValue(EnforcerRuleHelper helper)
Description copied from class:AbstractPropertyEnforcerRule
Resolves the property value- Specified by:
resolveValue
in classAbstractPropertyEnforcerRule
-
isCacheable
public boolean isCacheable()
Description copied from interface:EnforcerRule
This method tells the enforcer if the rule results may be cached. If the result is true, the results will be remembered for future executions in the same build (ie children). Subsequent iterations of the rule will be queried to see if they are also cacheable. This will allow the rule to be uncached further down the tree if needed.- Specified by:
isCacheable
in interfaceEnforcerRule
- Overrides:
isCacheable
in classAbstractNonCacheableEnforcerRule
- Returns:
true
if rule is cacheable
-
isResultValid
public boolean isResultValid(EnforcerRule cachedRule)
Description copied from interface:EnforcerRule
If the rule is cacheable and the same id is found in the cache, the stored results are passed to this method to allow double checking of the results. Most of the time this can be done by generating unique ids, but sometimes the results of objects returned by the helper need to be queried. You may for example, store certain objects in your rule and then query them later.- Specified by:
isResultValid
in interfaceEnforcerRule
- Overrides:
isResultValid
in classAbstractNonCacheableEnforcerRule
- Parameters:
cachedRule
- the last cached instance of the rule. This is to be used by the rule to potentially determine if the results are still valid (ie if the configuration has been overridden)- Returns:
true
if the stored results are valid for the same id.
-
getCacheId
public java.lang.String getCacheId()
Description copied from interface:EnforcerRule
If the rule is to be cached, this id is used as part of the key. This can allow rules to take parameters that allow multiple results of the same rule to be cached.- Specified by:
getCacheId
in interfaceEnforcerRule
- Overrides:
getCacheId
in classAbstractNonCacheableEnforcerRule
- Returns:
- id to be used by the enforcer to determine uniqueness of cache results. The ids only need to be unique within a given rule implementation as the full key will be [classname]-[id]
-
getPropertyName
public java.lang.String getPropertyName()
Description copied from class:AbstractPropertyEnforcerRule
The name of the property currently being evaluated, this is used for default message purposes only- Specified by:
getPropertyName
in classAbstractPropertyEnforcerRule
- Returns:
- the name of the property
-
getName
public java.lang.String getName()
Description copied from class:AbstractPropertyEnforcerRule
How the property that is being evaluated is called- Specified by:
getName
in classAbstractPropertyEnforcerRule
- Returns:
- kind of property
-
-