Class AbstractRequireRoles<T extends org.apache.maven.model.Contributor>

java.lang.Object
org.apache.maven.plugins.enforcer.AbstractMojoHausEnforcerRule
org.apache.maven.plugins.enforcer.AbstractRequireRoles<T>
All Implemented Interfaces:
org.apache.maven.enforcer.rule.api.EnforcerRule, org.apache.maven.enforcer.rule.api.EnforcerRule2
Direct Known Subclasses:
RequireContributorRoles, RequireDeveloperRoles

abstract class AbstractRequireRoles<T extends org.apache.maven.model.Contributor> extends AbstractMojoHausEnforcerRule
This rule checks that certain roles are filled.
Since:
1.0-alpha-3
  • Field Details

    • requiredRoles

      private String requiredRoles
      Specify the required roles as comma separated list.
    • validRoles

      private String validRoles
      Specify the allowed roles as comma separated list. These are combined with the requiredRoles.
  • Constructor Details

    • AbstractRequireRoles

      AbstractRequireRoles()
  • Method Details

    • execute

      public void execute(org.apache.maven.enforcer.rule.api.EnforcerRuleHelper helper) throws org.apache.maven.enforcer.rule.api.EnforcerRuleException
      Execute the rule.
      Parameters:
      helper - the helper
      Throws:
      org.apache.maven.enforcer.rule.api.EnforcerRuleException - the enforcer rule exception
    • checkRequiredRoles

      private void checkRequiredRoles(Set<String> requiredRolesSet, Set<String> rolesFromProject) throws org.apache.maven.enforcer.rule.api.EnforcerRuleException
      Throws:
      org.apache.maven.enforcer.rule.api.EnforcerRuleException
    • checkValidRoles

      private void checkValidRoles(Set<String> requiredRolesSet, Set<String> rolesFromProject) throws org.apache.maven.enforcer.rule.api.EnforcerRuleException
      Throws:
      org.apache.maven.enforcer.rule.api.EnforcerRuleException
    • getRolesFromProject

      final Set<String> getRolesFromProject(org.apache.maven.project.MavenProject mavenProject)
      Returns the roles from the POM.
      Parameters:
      mavenProject -
      Returns:
      roles from POM.
    • getRoleName

      protected abstract String getRoleName()
      Returns the rolename.
      Returns:
      rolename.
    • getRoles

      protected abstract List<T> getRoles(org.apache.maven.project.MavenProject mavenProject)
      Returns the roles from the POM.
      Parameters:
      mavenProject -
      Returns:
      the list of Contributors or Developers.
    • getRolesFromString

      Set<String> getRolesFromString(String csRoles)
      Returns the set of required roles from the property.
      Parameters:
      csRoles - comma-separated roles to be split
      Returns:
    • splitCsvToSet

      static Set<String> splitCsvToSet(String csv)
    • getMavenProject

      org.apache.maven.project.MavenProject getMavenProject(org.apache.maven.enforcer.rule.api.EnforcerRuleHelper helper) throws org.apache.maven.enforcer.rule.api.EnforcerRuleException
      Extracted for easier testability.
      Parameters:
      helper -
      Returns:
      the MavenProject enforcer is running on.
      Throws:
      org.apache.maven.enforcer.rule.api.EnforcerRuleException
    • setRequiredRoles

      void setRequiredRoles(String requiredRoles)
      Parameters:
      requiredRoles - the requiredRoles to set.
    • setValidRoles

      void setValidRoles(String validRoles)
    • getCacheId

      public String getCacheId()
    • isCacheable

      public boolean isCacheable()
    • isResultValid

      public boolean isResultValid(org.apache.maven.enforcer.rule.api.EnforcerRule cachedRule)