public interface VcsRepositoryConfigurationService
Modifier and Type | Field and Description |
---|---|
static String |
LEGACY_VCS_PLUGINS_USED_BANDANA_KEY |
Modifier and Type | Method and Description |
---|---|
ErrorCollection |
configureRssDetection(long repositoryId,
PartialVcsRepositoryData vcsRepositoryData,
boolean isEnabled)
Sets detection of Bamboo Specs for repository and saves new config.
|
PartialVcsRepositoryData |
convertToNewRepositoryConfiguration(PartialVcsRepositoryData vcsRepositoryData)
Deprecated.
since 5.14 should be used for backward compatibility and upgrade task only
|
PartialVcsRepositoryData |
createLinkedRepository(PartialVcsRepositoryData newVcsConfiguration,
com.atlassian.user.User user,
RepositoryConfigurationService.LinkedRepositoryAccess accessOption)
Creates new linked repository.
|
PartialVcsRepositoryData |
createPlanRepository(Plan plan,
PartialVcsRepositoryData newVcsConfiguration)
Creates "plan local" repository and adds it to a plan.
|
void |
deleteLinkedRepository(long repositoryId)
Removes linked repository.
|
void |
deleteRepository(Plan plan,
long repositoryId,
Long replacementRepositoryId)
Removes repository definition from a plan
|
PartialVcsRepositoryData |
editLinkedRepository(long repositoryId,
PartialVcsRepositoryData newVcsConfiguration)
Edits existing linked repository
|
PartialVcsRepositoryData |
editRepository(Plan plan,
long repositoryId,
PartialVcsRepositoryData newVcsConfiguration)
Edits existing "plan local" repository.
|
Map<ImmutableJob,List<TaskDefinition>> |
getRelevantJobsForRepositoryIdChange(ImmutablePlan plan,
long repositoryId)
Deprecated.
since 5.14
|
PartialVcsRepositoryData |
linkRepositoryToPlan(Plan plan,
long selectedRepositoryId)
Connects a linked repository to a plan by creating a new repository that inherits all the data from the linked repository
and adding it to the plan.
|
PartialVcsRepositoryData |
mergeLinkedRepository(PartialVcsRepositoryData vcsRepositoryData)
Merges the state of the given linked repository into the database.
|
void |
mergePlanRepositories(Plan plan,
List<PartialVcsRepositoryData> vcsRepositoryDataList)
Merges the state of the given plan repositories into the database.
|
void |
moveRepository(Plan plan,
long repositoryId,
long beforePosition,
long afterPosition)
Changes position of repository in the repository list.
|
PartialVcsRepositoryData |
replaceRepositoryInPlan(Plan plan,
VcsRepositoryData parentRepository,
PartialVcsRepositoryData oldRepository,
PartialVcsRepositoryData newRepository)
Replaces uses of a repository with another one.
|
void |
setParentOfPlanRepository(ImmutablePlan plan,
long repositoryId,
long parentRepositoryId)
Creates or changes parent-child relationship for a plan repository.
|
void |
shareRepository(Plan plan,
PartialVcsRepositoryData repositoryData,
String repositoryName,
String userDescription,
com.atlassian.user.User user)
Converts existing Plan repository to Linked repository.
|
void |
validateLinkedRepository(PartialVcsRepositoryData vcsRepositoryData)
Validate linked repository before saving it in database.
|
boolean |
validateLinkedRepositoryName(String repositoryName,
BambooIdProvider vcsRepositoryData)
Checks if name of a linked repository is unique.
|
void |
validatePlanRepository(Plan plan,
PartialVcsRepositoryData vcsRepositoryData)
Validate plan repository before saving it in database.
|
boolean |
validateRepositoryName(ImmutablePlan immutablePlan,
String repositoryName,
BambooIdProvider repositoryDefinition)
Checks if provided name for repository is unique in the Plan
|
boolean |
validateRestartableStatus(ResultsSummary resultSummary)
Checks that repositories referenced by a result still exists in Bamboo db.
|
static final String LEGACY_VCS_PLUGINS_USED_BANDANA_KEY
@NotNull PartialVcsRepositoryData createLinkedRepository(@NotNull PartialVcsRepositoryData newVcsConfiguration, @NotNull com.atlassian.user.User user, @NotNull RepositoryConfigurationService.LinkedRepositoryAccess accessOption)
newVcsConfiguration
- user
- accessOption
- @NotNull PartialVcsRepositoryData editLinkedRepository(long repositoryId, @NotNull PartialVcsRepositoryData newVcsConfiguration)
repositoryId
- newVcsConfiguration
- boolean validateLinkedRepositoryName(@NotNull String repositoryName, @Nullable BambooIdProvider vcsRepositoryData)
repositoryName
- vcsRepositoryData
- boolean validateRepositoryName(@NotNull ImmutablePlan immutablePlan, @NotNull String repositoryName, @Nullable BambooIdProvider repositoryDefinition)
@NotNull PartialVcsRepositoryData linkRepositoryToPlan(@NotNull Plan plan, long selectedRepositoryId)
plan
- selectedRepositoryId
- @NotNull PartialVcsRepositoryData createPlanRepository(@NotNull Plan plan, @NotNull PartialVcsRepositoryData newVcsConfiguration)
plan
- newVcsConfiguration
- @NotNull PartialVcsRepositoryData editRepository(@NotNull Plan plan, long repositoryId, @NotNull PartialVcsRepositoryData newVcsConfiguration)
plan
- repositoryId
- newVcsConfiguration
- void deleteRepository(@NotNull Plan plan, long repositoryId, @Nullable Long replacementRepositoryId)
plan
- repositoryId
- replacementRepositoryId
- repository id to replace removed one in tasks depending on itvoid deleteLinkedRepository(long repositoryId)
repositoryId
- void moveRepository(@NotNull Plan plan, long repositoryId, long beforePosition, long afterPosition)
plan
- repositoryId
- the RepositoryDefinition to movebeforePosition
- position of the RepositoryDefinition that will be before the moving Repository, -1 if the beginning of the listafterPosition
- position of the RepositoryDefinition that will be after the moving Repository, -1 if the end of the listvoid shareRepository(@NotNull Plan plan, @NotNull PartialVcsRepositoryData repositoryData, @NotNull String repositoryName, @Nullable String userDescription, @NotNull com.atlassian.user.User user)
plan
- plan that owns the repositoryrepositoryData
- repository to sharerepositoryName
- new name of the repositoryuserDescription
- of the repositoryvoid setParentOfPlanRepository(@NotNull ImmutablePlan plan, long repositoryId, long parentRepositoryId)
plan
- repositoryId
- parentRepositoryId
- PartialVcsRepositoryData replaceRepositoryInPlan(@NotNull Plan plan, @NotNull VcsRepositoryData parentRepository, @NotNull PartialVcsRepositoryData oldRepository, @NotNull PartialVcsRepositoryData newRepository)
plan
- parentRepository
- oldRepository
- newRepository
- boolean validateRestartableStatus(@NotNull ResultsSummary resultSummary)
resultSummary
- @Deprecated Map<ImmutableJob,List<TaskDefinition>> getRelevantJobsForRepositoryIdChange(@NotNull ImmutablePlan plan, long repositoryId)
plan
- repositoryId
- @Deprecated PartialVcsRepositoryData convertToNewRepositoryConfiguration(@NotNull PartialVcsRepositoryData vcsRepositoryData)
vcsRepositoryData
- void validateLinkedRepository(@NotNull PartialVcsRepositoryData vcsRepositoryData) throws com.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException
vcsRepositoryData
- imported linked repositorycom.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException
PartialVcsRepositoryData mergeLinkedRepository(@NotNull PartialVcsRepositoryData vcsRepositoryData) throws com.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException
This service will attempt to merge the entity based on ImmutableEntityWithOid.getOid()
, and if there's no
match, based on DescriptionProvider.getName()
. If an existing entity is found, then it will be updated.
Otherwise, a new database entity will be created.
It's assumed that this method is used in specs import only as it's sending analytic event.
vcsRepositoryData
- imported linked repositorycom.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException
void validatePlanRepository(@NotNull Plan plan, @NotNull PartialVcsRepositoryData vcsRepositoryData) throws com.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException
plan
- vcsRepositoryData
- imported plan repositorycom.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException
void mergePlanRepositories(@NotNull Plan plan, @NotNull List<PartialVcsRepositoryData> vcsRepositoryDataList) throws com.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException
This service will attempt to merge the entities based on ImmutableEntityWithOid.getOid()
, and if there's no
match, based on PartialVcsRepositoryData.getParentId()
}. If an existing entity is found, then it will be updated.
Otherwise, a new database entity will be created. All other repositories in plan will be removed.
plan
- vcsRepositoryDataList
- list of imported plan repositoriescom.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException
@NotNull ErrorCollection configureRssDetection(long repositoryId, PartialVcsRepositoryData vcsRepositoryData, boolean isEnabled)
repositoryId
- id of repositoryvcsRepositoryData
- repository configuration, remains unchangedisEnabled
- true if Specs detection should be enabled, false otherwiseCopyright © 2019 Atlassian Software Systems Pty Ltd. All rights reserved.