Class CreateInProjectVoter

java.lang.Object
org.acegisecurity.vote.AbstractAclVoter
org.acegisecurity.vote.AclEntryVoter
com.atlassian.bamboo.security.acegi.vote.AbstractBambooAclEntryVoter
com.atlassian.bamboo.security.acegi.vote.CreateInProjectVoter
All Implemented Interfaces:
org.acegisecurity.vote.AccessDecisionVoter

public class CreateInProjectVoter extends AbstractBambooAclEntryVoter
Voter which may allow creation of a plan based on project permissions in which the plan is being created.

If project level BambooPermission.CREATE permission is granted to the current user, this voter will vote to allow the operation. Otherwise, it will abstain from voting.

Global BambooPermission.CREATE permission overrides project level BambooPermission.CREATE, so to correctly check permissions, make sure GlobalCreateVoter is used subsequently.

  • Constructor Details

    • CreateInProjectVoter

      public CreateInProjectVoter(org.acegisecurity.acls.AclService aclService, String processConfigAttribute)
  • Method Details

    • vote

      public int vote(org.acegisecurity.Authentication authentication, Object object, org.acegisecurity.ConfigAttributeDefinition config)
      Description copied from class: AbstractBambooAclEntryVoter
      Copied and improved voting logic from the parent class.
      Specified by:
      vote in interface org.acegisecurity.vote.AccessDecisionVoter
      Overrides:
      vote in class AbstractBambooAclEntryVoter
    • getDomainObjectInstance

      @Nullable protected @Nullable Object getDomainObjectInstance(@NotNull @NotNull Object secureObject)
      Overrides:
      getDomainObjectInstance in class org.acegisecurity.vote.AbstractAclVoter