public class CachingProjectRoleAndActorStore extends Object implements ProjectRoleAndActorStore
ProjectRoleAndActorStore that delegates to another ProjectRoleAndActorStore.
This class maintains two separate unrelated caches, one for ProjectRoles and another for the actors associated with a Project/ProjectRole combination.
ProjectRoleAndActorStore.RoleTypeMapping| Constructor and Description |
|---|
CachingProjectRoleAndActorStore(ProjectRoleAndActorStore delegate,
RoleActorFactory roleActorFactory,
com.atlassian.cache.CacheManager cacheManager,
ReplicationPauserManager replicationPauserManager,
ApplicationPropertiesManager applicationPropertiesManager) |
public CachingProjectRoleAndActorStore(ProjectRoleAndActorStore delegate, RoleActorFactory roleActorFactory, com.atlassian.cache.CacheManager cacheManager, ReplicationPauserManager replicationPauserManager, ApplicationPropertiesManager applicationPropertiesManager)
public Collection<ProjectRole> getAllProjectRoles()
getAllProjectRoles in interface ProjectRoleAndActorStorepublic ProjectRole getProjectRole(Long id)
getProjectRole in interface ProjectRoleAndActorStorepublic ProjectRole getProjectRoleByName(String name)
getProjectRoleByName in interface ProjectRoleAndActorStorepublic ProjectRole addProjectRole(ProjectRole projectRole)
addProjectRole in interface ProjectRoleAndActorStorepublic void updateProjectRole(ProjectRole projectRole)
updateProjectRole in interface ProjectRoleAndActorStorepublic void deleteProjectRole(ProjectRole projectRole)
deleteProjectRole in interface ProjectRoleAndActorStorepublic DefaultRoleActors getDefaultRoleActors(Long projectRoleId)
ProjectRoleAndActorStoreProjectRoleActors for a given project role ID.getDefaultRoleActors in interface ProjectRoleAndActorStoreprojectRoleId - the ID of the project role.ProjectRoleActors object containing the default role actors for the given project. If none are
found, a ProjectRoleActors object with an empty set will be returned.public ProjectRoleActors getProjectRoleActors(@Nonnull Long projectRoleId, Long projectId)
ProjectRoleAndActorStoreProjectRoleActors for a given project role ID and project ID.getProjectRoleActors in interface ProjectRoleAndActorStoreprojectRoleId - the ID of the project role.projectId - the ID of the project.ProjectRoleActors object containing the role actors for the given project with the given
project role id. If none are found, a ProjectRoleActors object with an empty set will be returned.public void updateProjectRoleActors(ProjectRoleActors projectRoleActors)
updateProjectRoleActors in interface ProjectRoleAndActorStorepublic void updateDefaultRoleActors(DefaultRoleActors defaultRoleActors)
updateDefaultRoleActors in interface ProjectRoleAndActorStorepublic void applyDefaultsRolesToProject(Project project)
applyDefaultsRolesToProject in interface ProjectRoleAndActorStorepublic void removeAllRoleActorsByKeyAndType(String key, String type)
removeAllRoleActorsByKeyAndType in interface ProjectRoleAndActorStorepublic void removeAllRoleActorsByProject(Project project)
removeAllRoleActorsByProject in interface ProjectRoleAndActorStorepublic void clearCacheForProject(Project project)
public Collection<Long> getProjectIdsContainingRoleActorByKeyAndType(String key, String type)
getProjectIdsContainingRoleActorByKeyAndType in interface ProjectRoleAndActorStorepublic List<Long> roleActorOfTypeExistsForProjects(List<Long> projectsToLimitBy, ProjectRole projectRole, String projectRoleType, String projectRoleParameter)
roleActorOfTypeExistsForProjects in interface ProjectRoleAndActorStorepublic Map<Long,List<String>> getProjectIdsForUserInGroupsBecauseOfRole(List<Long> projectsToLimitBy, ProjectRole projectRole, String projectRoleType, String userKey)
getProjectIdsForUserInGroupsBecauseOfRole in interface ProjectRoleAndActorStore@EventListener public void onClearCache(ClearCacheEvent event)
@EventListener public void onProjectRoleActorFKChanged(ProjectRoleActorFKChangedEvent event)
public void clearCaches()
public boolean isGroupUsed(@Nonnull String group)
isGroupUsed in interface ProjectRoleAndActorStorepublic ProjectRoleManager.ProjectIdToProjectRoleIdsMap getProjectIdToRoleIds(@Nonnull String roleTypeParameter, @Nonnull String roleType)
getProjectIdToRoleIds in interface ProjectRoleAndActorStorepublic List<ProjectRoleAndActorStore.RoleTypeMapping> getRoleActorsParametersAndTypeByProjectId(@Nonnull Long projectId)
getRoleActorsParametersAndTypeByProjectId in interface ProjectRoleAndActorStorepublic List<ProjectRoleAndActorStore.RoleTypeMapping> getRoleActorsParametersAndTypeByProjectRoleId(@Nonnull Long projectRoleId)
getRoleActorsParametersAndTypeByProjectRoleId in interface ProjectRoleAndActorStoreCopyright © 2002-2024 Atlassian. All Rights Reserved.