public class

PluginDelegatingRoleActorFactory

extends Object
implements RoleActorFactory
java.lang.Object
   ↳ com.atlassian.jira.security.roles.PluginDelegatingRoleActorFactory

Class Overview

Creator of RoleActor objects that have been registered dynamically.

Summary

Public Constructors
PluginDelegatingRoleActorFactory(PluginAccessor pluginAccessor)
Public Methods
ProjectRoleActor createRoleActor(Long id, Long projectRoleId, Long projectId, String type, String parameter)
Create instance of the ProjectRoleActor representing a role actor stored in the database.
@Nonnull Set<ProjectRoleActor> getAllRoleActorsForUser(ApplicationUser user)
Find and return all role actors for the given user.
Set<RoleActor> optimizeRoleActorSet(Set<RoleActor> roleActors)
if RoleActors can be aggregated and queried in a more optimised way, then optimize the set to reduce its size so we reduce the number of iterations across the set.
[Expand]
Inherited Methods
From class java.lang.Object
From interface com.atlassian.jira.security.roles.RoleActorFactory

Public Constructors

public PluginDelegatingRoleActorFactory (PluginAccessor pluginAccessor)

Public Methods

public ProjectRoleActor createRoleActor (Long id, Long projectRoleId, Long projectId, String type, String parameter)

Create instance of the ProjectRoleActor representing a role actor stored in the database. In order to add a new role actor please pass a null id.

Parameters
id of the ProjectRoleActor
projectRoleId of the ProjectRole associated with the actor.
projectId of the Project associated with the actor.
type of the actor which determines the implementation.
parameter saying with which exact entity is actor associated ie. group name, user name.
Returns
  • implementation representing ProjectRoleActor.

@Nonnull public Set<ProjectRoleActor> getAllRoleActorsForUser (ApplicationUser user)

Find and return all role actors for the given user.

Parameters
user for which actors will be obtained
Returns
  • a set of actors being associated with the given user or empty set if none found.

public Set<RoleActor> optimizeRoleActorSet (Set<RoleActor> roleActors)

if RoleActors can be aggregated and queried in a more optimised way, then optimize the set to reduce its size so we reduce the number of iterations across the set.

Parameters
roleActors a Set of RoleActor instances
Returns
  • the optimized Set perhaps containing aggregations that can be queried more efficiently.