Class AbstractEnforcerRule

java.lang.Object
org.apache.maven.enforcer.rule.api.AbstractEnforcerRule
All Implemented Interfaces:
EnforcerRuleBase
Direct Known Subclasses:
AbstractStandardEnforcerRule

public abstract class AbstractEnforcerRule extends Object
Entry point for custom Enforcer Rule.

Please see Writing a custom rule

Since:
3.2.1
Author:
Slawomir Jaranowski
  • Constructor Details

  • Method Details

    • getLevel

      Current Enforcer execution level
      Returns:
      an Enforcer execution level
    • getCacheId

      public String getCacheId()
      If the rule is to be cached during session scope, whole executing of Maven build, this id is used as part of the key.

      Rule of the same class and the same cache id will be executed once.

      Returns:
      id to be used by the Enforcer to determine uniqueness of cache results. Return null disable cache of rule executing.
    • execute

      public abstract void execute() throws EnforcerRuleException
      This is the interface into the rule. This method should throw an exception containing a reason message if the rule fails the check. The plugin will then decide based on the fail flag and rule level if it should stop or just log the message as a warning.
      Throws:
      EnforcerRuleException - the enforcer rule exception
      EnforcerRuleError - in order to brake a build immediately
    • setLog

      public void setLog(EnforcerLogger log)
      Used by EnforcerMojo to inject logger instance
      Specified by:
      setLog in interface EnforcerRuleBase
      Parameters:
      log - an EnforcerLogger instance
    • getLog

      public EnforcerLogger getLog()
      Provide an EnforcerLogger instance for Rule

      NOTICE A logger is not available in constructors.

      Returns:
      an EnforcerLogger instance