Class SecuredResponsibilityFacade
- java.lang.Object
-
- jetbrains.buildServer.responsibility.impl.SecuredResponsibilityFacade
-
- All Implemented Interfaces:
BuildProblemResponsibilityFacade,BuildTypeResponsibilityFacade,ResponsibilityFacadeEx,TestNameResponsibilityFacade
public class SecuredResponsibilityFacade extends Object implements ResponsibilityFacadeEx, BuildTypeResponsibilityFacade, TestNameResponsibilityFacade, BuildProblemResponsibilityFacade
- Author:
- Maxim Podkolzine (maxim.podkolzine@jetbrains.com)
-
-
Constructor Summary
Constructors Constructor Description SecuredResponsibilityFacade(SecurityContextEx securityContext)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description List<TestNameResponsibilityEntry>findAllTestNameResponsibilities(long testNameId, String projectId)Returns all responsibility entries for the test name in a project.List<TestNameResponsibilityEntry>findAllTestNameResponsibilities(TestName testName, String projectId)Returns all responsibility entries for the test name in a project.List<BuildProblemResponsibilityEntry>findBuildProblemResponsibilities(BuildProblemInfo buildProblem, String projectId)Returns all responsibility entries for a build problem in the project's treeBuildProblemResponsibilityEntryfindBuildProblemResponsibility(BuildProblemInfo buildProblem, String projectId)Returns responsibility entry for a build problem direct in a project, or null if it does not existResponsibilityEntryfindBuildTypeResponsibility(BuildType buildType)Returns the responsibility entry for a build type, or null if it does not exist.List<BuildProblemResponsibilityEntry>findEffectiveBuildProblemResponsibilities(BuildProblemInfo buildProblem, String projectId)Returns all responsibility entries for a build problem in the project and it's parentsTestNameResponsibilityEntryfindTestNameResponsibility(TestName testName, String projectId)Returns the responsibility entry for a test name in a project, or null if it does not exist.SProjectgetProject(ResponsibilityEntry entry)StringgetProjectId(ResponsibilityEntry entry)TODO: temporary solution, should be moved to ResponsibilityEntry interface (kir)Map<User,List<ResponsibilityEntry>>getResponsibilitiesMap(String projectId)Returns the map of all responsibility entries classified by users.List<BuildProblemResponsibilityEntry>getUserBuildProblemResponsibilities(User user, String projectId)Returns the list of responsibility entries associated with the specified user in a specified project.List<BuildTypeResponsibilityEntry>getUserBuildTypeResponsibilities(User user, String projectId)Returns the list of entries associated with the user (if specified) in a specified project (or globally).List<TestNameResponsibilityEntry>getUserTestNameResponsibilities(User user, String projectId)Returns the list of entries associated with the user (if specified) in a specified project.List<TestNameResponsibilityEntry>getUserTestNameResponsibilities(User user, Collection<String> projectIds)Same as {TestNameResponsibilityFacade.getUserTestNameResponsibilities(User, String)but performs operation for set of project ids.voidremoveBuildProblemResponsibility(BuildProblemInfo buildProblem, String projectId)Removes responsibility entry associated with specified build problemvoidremoveBuildTypeResponsibility(BuildType buildType)Deletes the build type entry associated with the build type.voidremoveTestNameResponsibility(TestName testName, String projectId)Removes the responsibility entry associated with the test name.voidsetBuildProblemResponsibility(Collection<BuildProblemInfo> buildProblems, String projectId, ResponsibilityEntry entry)Sets responsibility for several build problems at once in a specified project.voidsetBuildProblemResponsibility(Collection<BuildProblemInfo> buildProblems, String projectId, ResponsibilityEntry entry, boolean removeResponsibilitiesInChildProjects)Sets responsibility for several build problems at once in a specified projectvoidsetBuildProblemResponsibility(BuildProblemInfo buildProblem, String projectId, ResponsibilityEntry entry)Sets the responsibility for build problem in a specified projectvoidsetBuildTypeResponsibility(BuildType buildType, ResponsibilityEntry entry)Sets the responsibility entry for the build type.voidsetDelegate(ResponsibilityFacadeEx delegate)voidsetTestNameResponsibility(Collection<TestName> testNames, String projectId, ResponsibilityEntry entry)Sets the responsibility for several tests at once in a specified project.voidsetTestNameResponsibility(Collection<TestName> testNames, String projectId, ResponsibilityEntry entry, boolean removeResponsibilitiesInChildProjects)Sets the responsibility for several tests at once in a specified project.voidsetTestNameResponsibility(TestName testName, String projectId, ResponsibilityEntry entry)Sets the responsibility entry for the test name in a specified project.
-
-
-
Constructor Detail
-
SecuredResponsibilityFacade
public SecuredResponsibilityFacade(@NotNull SecurityContextEx securityContext)
-
-
Method Detail
-
setDelegate
public void setDelegate(ResponsibilityFacadeEx delegate)
-
findBuildTypeResponsibility
public ResponsibilityEntry findBuildTypeResponsibility(@NotNull BuildType buildType)
Description copied from interface:BuildTypeResponsibilityFacadeReturns the responsibility entry for a build type, or null if it does not exist.- Specified by:
findBuildTypeResponsibilityin interfaceBuildTypeResponsibilityFacade- Parameters:
buildType- the build type- Returns:
- responsibility entry, or null
-
getUserBuildTypeResponsibilities
@NotNull public List<BuildTypeResponsibilityEntry> getUserBuildTypeResponsibilities(@Nullable User user, @Nullable String projectId)
Description copied from interface:BuildTypeResponsibilityFacadeReturns the list of entries associated with the user (if specified) in a specified project (or globally).- Specified by:
getUserBuildTypeResponsibilitiesin interfaceBuildTypeResponsibilityFacade- Parameters:
user- the responsible user; null means all usersprojectId- the project id; null means all projects- Returns:
- list of responsibilities
-
setBuildTypeResponsibility
public void setBuildTypeResponsibility(@NotNull BuildType buildType, @NotNull ResponsibilityEntry entry)Description copied from interface:BuildTypeResponsibilityFacadeSets the responsibility entry for the build type.Note: if new reporter user isn't set (
entry.getReporterUser() == null), it is not overwritten.- Specified by:
setBuildTypeResponsibilityin interfaceBuildTypeResponsibilityFacade- Parameters:
buildType- the build typeentry- responsibility entry
-
removeBuildTypeResponsibility
public void removeBuildTypeResponsibility(@NotNull BuildType buildType)Description copied from interface:BuildTypeResponsibilityFacadeDeletes the build type entry associated with the build type. Does nothing, if it doesn't exist.- Specified by:
removeBuildTypeResponsibilityin interfaceBuildTypeResponsibilityFacade- Parameters:
buildType- the build type
-
findTestNameResponsibility
public TestNameResponsibilityEntry findTestNameResponsibility(@NotNull TestName testName, @NotNull String projectId)
Description copied from interface:TestNameResponsibilityFacadeReturns the responsibility entry for a test name in a project, or null if it does not exist.- Specified by:
findTestNameResponsibilityin interfaceTestNameResponsibilityFacade- Parameters:
testName- the test nameprojectId- project internal id- Returns:
- responsibility entry, or null
-
findAllTestNameResponsibilities
@NotNull public List<TestNameResponsibilityEntry> findAllTestNameResponsibilities(@NotNull TestName testName, @NotNull String projectId)
Description copied from interface:TestNameResponsibilityFacadeReturns all responsibility entries for the test name in a project.- Specified by:
findAllTestNameResponsibilitiesin interfaceTestNameResponsibilityFacade- Parameters:
testName- the test nameprojectId- project internal id- Returns:
- list of entries for this test; since 2018.1 entries of the given projectId go first in the list
-
findAllTestNameResponsibilities
@NotNull public List<TestNameResponsibilityEntry> findAllTestNameResponsibilities(long testNameId, @NotNull String projectId)
Description copied from interface:TestNameResponsibilityFacadeReturns all responsibility entries for the test name in a project.- Specified by:
findAllTestNameResponsibilitiesin interfaceTestNameResponsibilityFacade- Parameters:
testNameId- the test name IDprojectId- project internal id- Returns:
- list of entries for this test; since 2018.1 entries of the given projectId go first in the list
-
getUserTestNameResponsibilities
@NotNull public List<TestNameResponsibilityEntry> getUserTestNameResponsibilities(@Nullable User user, @Nullable String projectId)
Description copied from interface:TestNameResponsibilityFacadeReturns the list of entries associated with the user (if specified) in a specified project.- Specified by:
getUserTestNameResponsibilitiesin interfaceTestNameResponsibilityFacade- Parameters:
user- the responsible user; null means all usersprojectId- the project internal id; null means all projects- Returns:
- list of responsibilities
-
getUserTestNameResponsibilities
@NotNull public List<TestNameResponsibilityEntry> getUserTestNameResponsibilities(@Nullable User user, @NotNull Collection<String> projectIds)
Description copied from interface:TestNameResponsibilityFacadeSame as {TestNameResponsibilityFacade.getUserTestNameResponsibilities(User, String)but performs operation for set of project ids.- Specified by:
getUserTestNameResponsibilitiesin interfaceTestNameResponsibilityFacade- Parameters:
user- the responsible user; null means all usersprojectIds- collection of project internal ids- Returns:
- list of responsibilities in requested projects
-
setTestNameResponsibility
public void setTestNameResponsibility(@NotNull TestName testName, @NotNull String projectId, @NotNull ResponsibilityEntry entry)Description copied from interface:TestNameResponsibilityFacadeSets the responsibility entry for the test name in a specified project.Note: if new reporter user isn't set (
entry.getReporterUser() == null), it is not overwritten.- Specified by:
setTestNameResponsibilityin interfaceTestNameResponsibilityFacade- Parameters:
testName- the test nameprojectId- the project internal identry- responsibility entry
-
setTestNameResponsibility
public void setTestNameResponsibility(@NotNull Collection<TestName> testNames, @NotNull String projectId, @NotNull ResponsibilityEntry entry)Description copied from interface:TestNameResponsibilityFacadeSets the responsibility for several tests at once in a specified project.- Specified by:
setTestNameResponsibilityin interfaceTestNameResponsibilityFacade- Parameters:
testNames- collection of test namesprojectId- the project internal identry- new responsibility entry- See Also:
#setTestNameResponsibility(TestName, String, ResponsibilityEntry, Boolean)
-
setTestNameResponsibility
public void setTestNameResponsibility(@NotNull Collection<TestName> testNames, @NotNull String projectId, @NotNull ResponsibilityEntry entry, boolean removeResponsibilitiesInChildProjects)Description copied from interface:TestNameResponsibilityFacadeSets the responsibility for several tests at once in a specified project.- Specified by:
setTestNameResponsibilityin interfaceTestNameResponsibilityFacade- Parameters:
testNames- collection of test namesprojectId- the project internal identry- new responsibility entryremoveResponsibilitiesInChildProjects- indiciates whether relevant responsibilities in child projects should be removed.
-
removeTestNameResponsibility
public void removeTestNameResponsibility(@NotNull TestName testName, @NotNull String projectId)Description copied from interface:TestNameResponsibilityFacadeRemoves the responsibility entry associated with the test name.- Specified by:
removeTestNameResponsibilityin interfaceTestNameResponsibilityFacade- Parameters:
testName- the test nameprojectId- the project internal id
-
getResponsibilitiesMap
@NotNull public Map<User,List<ResponsibilityEntry>> getResponsibilitiesMap(@Nullable String projectId)
Description copied from interface:ResponsibilityFacadeExReturns the map of all responsibility entries classified by users. Both build type and test responsibilities are included.- Specified by:
getResponsibilitiesMapin interfaceResponsibilityFacadeEx- Returns:
- the map of all responsibility entries classified by users
-
getProjectId
public String getProjectId(ResponsibilityEntry entry)
Description copied from interface:ResponsibilityFacadeExTODO: temporary solution, should be moved to ResponsibilityEntry interface (kir)- Specified by:
getProjectIdin interfaceResponsibilityFacadeEx- Returns:
- project ID for the given ResponsibilityEntry
-
getProject
@Nullable public SProject getProject(ResponsibilityEntry entry) throws AccessDeniedException
- Specified by:
getProjectin interfaceResponsibilityFacadeEx- Throws:
AccessDeniedException
-
setBuildProblemResponsibility
public void setBuildProblemResponsibility(@NotNull Collection<BuildProblemInfo> buildProblems, @NotNull String projectId, @NotNull ResponsibilityEntry entry)Description copied from interface:BuildProblemResponsibilityFacadeSets responsibility for several build problems at once in a specified project. Cleans up responsibilities in the child projects.- Specified by:
setBuildProblemResponsibilityin interfaceBuildProblemResponsibilityFacade- Parameters:
buildProblems- collection of build problemsprojectId- project internal identry- new responsibility entry- See Also:
BuildProblemResponsibilityFacade.setBuildProblemResponsibility(Collection, String, ResponsibilityEntry, boolean)
-
setBuildProblemResponsibility
public void setBuildProblemResponsibility(@NotNull BuildProblemInfo buildProblem, @NotNull String projectId, @NotNull ResponsibilityEntry entry)Description copied from interface:BuildProblemResponsibilityFacadeSets the responsibility for build problem in a specified project- Specified by:
setBuildProblemResponsibilityin interfaceBuildProblemResponsibilityFacade- Parameters:
buildProblem- build problemprojectId- project internal id
-
setBuildProblemResponsibility
public void setBuildProblemResponsibility(@NotNull Collection<BuildProblemInfo> buildProblems, @NotNull String projectId, @NotNull ResponsibilityEntry entry, boolean removeResponsibilitiesInChildProjects)Description copied from interface:BuildProblemResponsibilityFacadeSets responsibility for several build problems at once in a specified project- Specified by:
setBuildProblemResponsibilityin interfaceBuildProblemResponsibilityFacade- Parameters:
buildProblems- collection of build problemsprojectId- project internal identry- new responsibility entryremoveResponsibilitiesInChildProjects- indicates whether relevant responsibilities in the child projects should be removed.- See Also:
BuildProblemResponsibilityFacade.setBuildProblemResponsibility(jetbrains.buildServer.serverSide.problems.BuildProblemInfo, String, ResponsibilityEntry)
-
findBuildProblemResponsibility
@Nullable public BuildProblemResponsibilityEntry findBuildProblemResponsibility(@NotNull BuildProblemInfo buildProblem, @NotNull String projectId)
Description copied from interface:BuildProblemResponsibilityFacadeReturns responsibility entry for a build problem direct in a project, or null if it does not exist- Specified by:
findBuildProblemResponsibilityin interfaceBuildProblemResponsibilityFacade- Parameters:
buildProblem- build problemprojectId- project internal id- Returns:
- responsibility entry, or null
-
findBuildProblemResponsibilities
@NotNull public List<BuildProblemResponsibilityEntry> findBuildProblemResponsibilities(@NotNull BuildProblemInfo buildProblem, @NotNull String projectId)
Description copied from interface:BuildProblemResponsibilityFacadeReturns all responsibility entries for a build problem in the project's tree- Specified by:
findBuildProblemResponsibilitiesin interfaceBuildProblemResponsibilityFacade- Parameters:
buildProblem- build problemprojectId- project internal id- Returns:
- responsibility entries list; since 2018.1 entries for the specified project go first in the list
-
findEffectiveBuildProblemResponsibilities
@NotNull public List<BuildProblemResponsibilityEntry> findEffectiveBuildProblemResponsibilities(@NotNull BuildProblemInfo buildProblem, @NotNull String projectId)
Description copied from interface:BuildProblemResponsibilityFacadeReturns all responsibility entries for a build problem in the project and it's parents- Specified by:
findEffectiveBuildProblemResponsibilitiesin interfaceBuildProblemResponsibilityFacadeprojectId- project internal id- Returns:
- responsibility entries list
-
getUserBuildProblemResponsibilities
@NotNull public List<BuildProblemResponsibilityEntry> getUserBuildProblemResponsibilities(@Nullable User user, @Nullable String projectId)
Description copied from interface:BuildProblemResponsibilityFacadeReturns the list of responsibility entries associated with the specified user in a specified project.- Specified by:
getUserBuildProblemResponsibilitiesin interfaceBuildProblemResponsibilityFacade- Parameters:
user- the responsible user; null means all usersprojectId- the project internal id; null means all projects- Returns:
- list of responsibility entries
-
removeBuildProblemResponsibility
public void removeBuildProblemResponsibility(@NotNull BuildProblemInfo buildProblem, @NotNull String projectId)Description copied from interface:BuildProblemResponsibilityFacadeRemoves responsibility entry associated with specified build problem- Specified by:
removeBuildProblemResponsibilityin interfaceBuildProblemResponsibilityFacade- Parameters:
buildProblem- buils problemprojectId- project internal id
-
-