|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object com.atlassian.jira.bc.projectroles.DefaultProjectRoleService
public class DefaultProjectRoleService
Default implementation of the ProjectRoleService
Field Summary |
---|
Fields inherited from interface com.atlassian.jira.bc.projectroles.ProjectRoleService |
---|
PROJECTROLE_ISSUE_SECURITY_TYPE, PROJECTROLE_NOTIFICATION_TYPE, PROJECTROLE_PERMISSION_TYPE |
Constructor Summary | |
---|---|
DefaultProjectRoleService(ProjectRoleManager projectRoleManager,
PermissionManager permissionManager,
JiraAuthenticationContext jiraAuthenticationContext,
RoleActorFactory roleActorFactory,
NotificationSchemeManager notificationSchemeManager,
PermissionSchemeManager permissionSchemeManager,
WorkflowManager workflowManager,
ProjectManager projectManager,
ProjectFactory projectFactory,
SchemeFactory schemeFactory,
IssueSecurityLevelManager issueSecurityLevelManager)
|
Method Summary | |
---|---|
void |
addActorsToProjectRole(User currentUser,
Collection actors,
ProjectRole projectRole,
Project project,
String actorType,
ErrorCollection errorCollection)
Will add project role actor associations based off the passed in actors and checking
the currentUser has the correct permissions to perform the update operation. |
void |
addDefaultActorsToProjectRole(User currentUser,
Collection actors,
ProjectRole projectRole,
String type,
ErrorCollection errorCollection)
Will add default role actor associations based off the passed in actors and checking
the currentUser has the correct permissions to perform the update operation. |
(package private) boolean |
canRemoveCurrentUser(User currentUser,
Collection actors,
ProjectRole projectRole,
Project project,
String actorType)
This method makes certain that the currentUser can not remove themselves from a project role if it means that they will no longer be a roleMember by the action of the removal. |
ProjectRole |
createProjectRole(User currentUser,
ProjectRole projectRole,
ErrorCollection errorCollection)
Will create the project role based off the passed in projectRole.getName() ,
projectRole.getDescription() and checking the currentUser has the correct permissions
to perform the create operation. |
void |
deleteProjectRole(User currentUser,
ProjectRole projectRole,
ErrorCollection errorCollection)
Will delete the project role based off the passed in projectRole and checking
the currentUser has the correct permissions to perform the delete operation. |
(package private) boolean |
doesProjectRoleExistForAdministerProjectsPermission(Project project,
ProjectRole projectRole)
Check if the Project Role is in "Administer Projects" for the permission scheme that is associated with the Project. |
Collection |
getAssociatedIssueSecuritySchemes(User currentUser,
ProjectRole projectRole,
ErrorCollection errorCollection)
Will get all issue security scheme's that the specified projectRole is currently used in. |
Collection |
getAssociatedNotificationSchemes(User currentUser,
ProjectRole projectRole,
ErrorCollection errorCollection)
Will get all notification scheme's that the specified projectRole is currently used in. |
Collection |
getAssociatedPermissionSchemes(User currentUser,
ProjectRole projectRole,
ErrorCollection errorCollection)
Will get all permission scheme's that the specified projectRole is currently used in. |
org.apache.commons.collections.MultiMap |
getAssociatedWorkflows(User currentUser,
ProjectRole projectRole,
ErrorCollection errorCollection)
Returns workflows and their actions that are associated with the given ProjectRole . |
DefaultRoleActors |
getDefaultRoleActors(User currentUser,
ProjectRole projectRole,
ErrorCollection errorCollection)
Will return a DefaultRoleActors object based off the passed in projectRole checking the currentUser
has the correct permissions to perform the get operation. |
com.atlassian.license.LicenseManager |
getLicenseManager()
|
Map |
getProjectIdsForUserInGroupsBecauseOfRole(User currentUser,
List projectsToLimitBy,
ProjectRole projectRole,
String projectRoleType,
String userName,
ErrorCollection errorCollection)
Returns a Map of Lists. |
ProjectRole |
getProjectRole(User currentUser,
Long id,
ErrorCollection errorCollection)
Will return the project role based off the passed in id , and checking the currentUser
has the correct permissions to perform the operation. |
ProjectRoleActors |
getProjectRoleActors(User currentUser,
ProjectRole projectRole,
Project project,
ErrorCollection errorCollection)
Will return a {@link ProjectRoleActors) object based off the passed in projectRole and project checking
the currentUser has the correct permissions to perform the get operation. |
ProjectRole |
getProjectRoleByName(User currentUser,
String name,
ErrorCollection errorCollection)
Will return the project role based off the passed in name , and checking the currentUser
has the correct permissions to perform the operation. |
Collection |
getProjectRoles(User currentUser,
ErrorCollection errorCollection)
Get all the ProjectRoles available in JIRA. |
Collection |
getProjectsContainingRoleActorByNameAndType(User currentUser,
String name,
String type,
ErrorCollection errorCollection)
Returns the Project 's which contain a role actor of the specified name and type within any role. |
boolean |
isProjectRoleNameUnique(User currentUser,
String name,
ErrorCollection errorCollection)
Will tell you if a role name exists or not. |
void |
removeActorsFromProjectRole(User currentUser,
Collection actors,
ProjectRole projectRole,
Project project,
String actorType,
ErrorCollection errorCollection)
Will remove project role actor associations based off the passed in actors and checking
the currentUser has the correct permissions to perform the update operation. |
void |
removeAllRoleActorsByNameAndType(User currentUser,
String name,
String type,
ErrorCollection errorCollection)
Will remove all role actors with the specified name and the specified type. |
void |
removeAllRoleActorsByProject(User currentUser,
Project project,
ErrorCollection errorCollection)
Will remove all role actors associated with the specified project. |
void |
removeDefaultActorsFromProjectRole(User currentUser,
Collection actors,
ProjectRole projectRole,
String actorType,
ErrorCollection errorCollection)
Will remove default actor associations based off the passed in actors , projectRole and
actorType and checking the currentUser has the correct permissions to perform the update operation. |
List |
roleActorOfTypeExistsForProjects(User currentUser,
List projectsToLimitBy,
ProjectRole projectRole,
String projectRoleType,
String projectRoleParameter,
ErrorCollection errorCollection)
Returns a list of projectId's for which the role actor of the specified type exists in the project for the provided projectRole. |
void |
setLicenseManager(com.atlassian.license.LicenseManager licenseManager)
|
void |
updateProjectRole(User currentUser,
ProjectRole projectRole,
ErrorCollection errorCollection)
Will update the project role based off the passed in projectRole and checking
the currentUser has the correct permissions to perform the update operation. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public DefaultProjectRoleService(ProjectRoleManager projectRoleManager, PermissionManager permissionManager, JiraAuthenticationContext jiraAuthenticationContext, RoleActorFactory roleActorFactory, NotificationSchemeManager notificationSchemeManager, PermissionSchemeManager permissionSchemeManager, WorkflowManager workflowManager, ProjectManager projectManager, ProjectFactory projectFactory, SchemeFactory schemeFactory, IssueSecurityLevelManager issueSecurityLevelManager)
Method Detail |
---|
public Collection getProjectRoles(User currentUser, ErrorCollection errorCollection)
ProjectRoleService
getProjectRoles
in interface ProjectRoleService
public ProjectRole getProjectRole(User currentUser, Long id, ErrorCollection errorCollection)
ProjectRoleService
id
, and checking the currentUser
has the correct permissions to perform the operation.
The passed in errorCollection
will contain any errors that are generated, such as permission violations.
getProjectRole
in interface ProjectRoleService
errorCollection
- will contain any errors in calling the method
public ProjectRole getProjectRoleByName(User currentUser, String name, ErrorCollection errorCollection)
ProjectRoleService
name
, and checking the currentUser
has the correct permissions to perform the operation.
The passed in errorCollection
will contain any errors that are generated, such as permission violations.
getProjectRoleByName
in interface ProjectRoleService
name
- the name of the project role to returnerrorCollection
- will contain any errors in calling the method
public ProjectRole createProjectRole(User currentUser, ProjectRole projectRole, ErrorCollection errorCollection)
ProjectRoleService
projectRole.getName()
,
projectRole.getDescription()
and checking the currentUser
has the correct permissions
to perform the create operation. The passed in errorCollection
will contain any errors that are
generated, such as permission violations.
createProjectRole
in interface ProjectRoleService
projectRole
- can not be null and will contain the name and description for the project role to createerrorCollection
- will contain any errors in calling the method
public boolean isProjectRoleNameUnique(User currentUser, String name, ErrorCollection errorCollection)
ProjectRoleService
isProjectRoleNameUnique
in interface ProjectRoleService
name
- the name of the project role to check
public void deleteProjectRole(User currentUser, ProjectRole projectRole, ErrorCollection errorCollection)
ProjectRoleService
projectRole
and checking
the currentUser
has the correct permissions to perform the delete operation.
This will also delete all ProjectRoleActor associations that it is the parent of.
The passed in errorCollection
will contain any errors that are generated, such as permission violations.
deleteProjectRole
in interface ProjectRoleService
errorCollection
- will contain any errors in calling the methodpublic void updateProjectRole(User currentUser, ProjectRole projectRole, ErrorCollection errorCollection)
ProjectRoleService
projectRole
and checking
the currentUser
has the correct permissions to perform the update operation.
The passed in errorCollection
will contain any errors that are generated, such as permission violations.
updateProjectRole
in interface ProjectRoleService
errorCollection
- will contain any errors in calling the methodpublic ProjectRoleActors getProjectRoleActors(User currentUser, ProjectRole projectRole, Project project, ErrorCollection errorCollection)
ProjectRoleService
projectRole
and project
checking
the currentUser
has the correct permissions to perform the get operation.
The passed in errorCollection
will contain any errors that are generated, such as permission violations.
getProjectRoleActors
in interface ProjectRoleService
errorCollection
- will contain any errors in calling the method
public void addActorsToProjectRole(User currentUser, Collection actors, ProjectRole projectRole, Project project, String actorType, ErrorCollection errorCollection)
ProjectRoleService
actors
and checking
the currentUser
has the correct permissions to perform the update operation.
The passed in errorCollection
will contain any errors that are generated, such as permission violations.
addActorsToProjectRole
in interface ProjectRoleService
actors
- is a list of strings that they RoleActor impl should be able to handleprojectRole
- is the project role to associate withproject
- is the project to associate withactorType
- is a type that defines the type of role actor to instantiate (ex./ UserRoleActor.TYPE, GroupRoleActor.TYPE)errorCollection
- will contain any errors in calling the methodpublic void removeActorsFromProjectRole(User currentUser, Collection actors, ProjectRole projectRole, Project project, String actorType, ErrorCollection errorCollection)
ProjectRoleService
actors
and checking
the currentUser
has the correct permissions to perform the update operation.
The passed in errorCollection
will contain any errors that are generated, such as permission violations.
removeActorsFromProjectRole
in interface ProjectRoleService
actors
- is a list of strings that they RoleActor impl should be able to handleprojectRole
- is the project role to associate withproject
- is the project to associate withactorType
- is a type that defines the type of role actor to instantiate (ex./ UserRoleActor.TYPE, GroupRoleActor.TYPE)errorCollection
- will contain any errors in calling the methodboolean canRemoveCurrentUser(User currentUser, Collection actors, ProjectRole projectRole, Project project, String actorType)
boolean doesProjectRoleExistForAdministerProjectsPermission(Project project, ProjectRole projectRole)
public void setLicenseManager(com.atlassian.license.LicenseManager licenseManager)
public com.atlassian.license.LicenseManager getLicenseManager()
public DefaultRoleActors getDefaultRoleActors(User currentUser, ProjectRole projectRole, ErrorCollection errorCollection)
ProjectRoleService
DefaultRoleActors
object based off the passed in projectRole
checking the currentUser
has the correct permissions to perform the get operation.
The passed in errorCollection
will contain any errors that are generated, such as permission violations.
getDefaultRoleActors
in interface ProjectRoleService
public void addDefaultActorsToProjectRole(User currentUser, Collection actors, ProjectRole projectRole, String type, ErrorCollection errorCollection)
ProjectRoleService
actors
and checking
the currentUser
has the correct permissions to perform the update operation.
The passed in errorCollection
will contain any errors that are generated, such as permission violations.
addDefaultActorsToProjectRole
in interface ProjectRoleService
actors
- is a list of strings that they RoleActor impl should be able to handleprojectRole
- is the project role to associate withtype
- is a type that defines the type of role actor to instantiate (ex./ UserRoleActor.TYPE, GroupRoleActor.TYPE)errorCollection
- will contain any errors in calling the methodpublic void removeDefaultActorsFromProjectRole(User currentUser, Collection actors, ProjectRole projectRole, String actorType, ErrorCollection errorCollection)
ProjectRoleService
actors
, projectRole
and
actorType
and checking the currentUser
has the correct permissions to perform the update operation.
The passed in errorCollection
will contain any errors that are generated, such as permission violations.
removeDefaultActorsFromProjectRole
in interface ProjectRoleService
actors
- is a list of strings that they RoleActor impl should be able to handleprojectRole
- is the project role to associate withactorType
- is a type that defines the type of role actor to instantiate (ex./ UserRoleActor.TYPE, GroupRoleActor.TYPE)errorCollection
- will contain any errors in calling the methodpublic void removeAllRoleActorsByNameAndType(User currentUser, String name, String type, ErrorCollection errorCollection)
ProjectRoleService
removeAllRoleActorsByNameAndType
in interface ProjectRoleService
name
- this is the name that the role actor is stored under (ex. username of 'admin', group name of
'jira-users')type
- this is the role type parameter, (ex. GroupRoleActor.TYPE, UserRoleActor.TYPE)errorCollection
- will contain any errors in calling the methodpublic void removeAllRoleActorsByProject(User currentUser, Project project, ErrorCollection errorCollection)
ProjectRoleService
removeAllRoleActorsByProject
in interface ProjectRoleService
errorCollection
- will contain any errors in calling the methodpublic Collection getAssociatedNotificationSchemes(User currentUser, ProjectRole projectRole, ErrorCollection errorCollection)
ProjectRoleService
getAssociatedNotificationSchemes
in interface ProjectRoleService
errorCollection
- will contain any errors in calling the method
public Collection getAssociatedIssueSecuritySchemes(User currentUser, ProjectRole projectRole, ErrorCollection errorCollection)
ProjectRoleService
getAssociatedIssueSecuritySchemes
in interface ProjectRoleService
errorCollection
- will contain any errors in calling the method
public Collection getAssociatedPermissionSchemes(User currentUser, ProjectRole projectRole, ErrorCollection errorCollection)
ProjectRoleService
getAssociatedPermissionSchemes
in interface ProjectRoleService
errorCollection
- will contain any errors in calling the method
public org.apache.commons.collections.MultiMap getAssociatedWorkflows(User currentUser, ProjectRole projectRole, ErrorCollection errorCollection)
ProjectRoleService
ProjectRole
. e.g. InProjectRoleCondition
workflow elements that block workflow transition unless the acting user is
in the ProjectRole.
getAssociatedWorkflows
in interface ProjectRoleService
currentUser
- the acting user.projectRole
- the project role.errorCollection
- will contain any errors in calling the method
public Collection getProjectsContainingRoleActorByNameAndType(User currentUser, String name, String type, ErrorCollection errorCollection)
ProjectRoleService
Project
's which contain a role actor of the specified name and type within any role. This is a method
that is provided so that you can efficiently tell which users or groups have been associated with
any role within projects.
getProjectsContainingRoleActorByNameAndType
in interface ProjectRoleService
currentUser
- the acting user.name
- this is the name that the role actor is stored under (ex. username of 'admin', group name of
'jira-users')type
- this is the role type parameter, (ex. GroupRoleActor.TYPE, UserRoleActor.TYPE)errorCollection
- will contain any errors in calling the method
Project
's which have a role which contains the role actor with the
specified name and type.public List roleActorOfTypeExistsForProjects(User currentUser, List projectsToLimitBy, ProjectRole projectRole, String projectRoleType, String projectRoleParameter, ErrorCollection errorCollection)
ProjectRoleService
roleActorOfTypeExistsForProjects
in interface ProjectRoleService
currentUser
- the acting user.projectsToLimitBy
- this will limit the range of projects the method queries. This is a list of Long, project
id's. The returned list will be either the same as this list or a subset.projectRole
- the project role to find out if an actor is a member of.projectRoleType
- the type of role actor you want to query for, in most cases this will be UserRoleActor.TYPE.projectRoleParameter
- the parameter describing the role actor, in the case of a UserRoleActor this will be
the username.errorCollection
- will contain any errors in calling the method
public Map getProjectIdsForUserInGroupsBecauseOfRole(User currentUser, List projectsToLimitBy, ProjectRole projectRole, String projectRoleType, String userName, ErrorCollection errorCollection)
ProjectRoleService
getProjectIdsForUserInGroupsBecauseOfRole
in interface ProjectRoleService
currentUser
- the acting user.projectsToLimitBy
- this will limit the range of projects the method queries. This is a list of Long, project
id's. The returned list will be either the same as this list or a subset.projectRole
- the project role to find out if an actor is a member of.projectRoleType
- the type of role actor you want to query for, in most cases this will be UserRoleActor.TYPE.userName
- the username to find out if the user is in the role because of a grouperrorCollection
- will contain any errors in calling the method
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |