Class DefaultVcsRepositoryDataExporter

  • All Implemented Interfaces:
    VcsRepositoryDataExporter<com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository,​com.atlassian.bamboo.specs.api.model.repository.AnyVcsRepositoryProperties>

    public class DefaultVcsRepositoryDataExporter
    extends Object
    implements VcsRepositoryDataExporter<com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository,​com.atlassian.bamboo.specs.api.model.repository.AnyVcsRepositoryProperties>
    • Constructor Detail

      • DefaultVcsRepositoryDataExporter

        public DefaultVcsRepositoryDataExporter()
    • Method Detail

      • getEntityPropertiesBuilder

        @NotNull
        public @NotNull com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository getEntityPropertiesBuilder​(@NotNull
                                                                                                                       @NotNull VcsRepositoryData repositoryData)
        Description copied from interface: VcsRepositoryDataExporter
        Create empty instance of a properties builder appropriate for the exported repository data.
        Specified by:
        getEntityPropertiesBuilder in interface VcsRepositoryDataExporter<com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository,​com.atlassian.bamboo.specs.api.model.repository.AnyVcsRepositoryProperties>
        Returns:
        instance of a builder
      • appendLocationData

        @NotNull
        public @NotNull com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository appendLocationData​(@NotNull
                                                                                                               @NotNull com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository builder,
                                                                                                               @NotNull
                                                                                                               @NotNull VcsLocationDefinition vcsLocationDefinition,
                                                                                                               @NotNull
                                                                                                               @NotNull VcsRepositoryContext repositoryContext)
        Description copied from interface: VcsRepositoryDataExporter
        Fill in the builder passed as the first argument with vcs server data.
        Specified by:
        appendLocationData in interface VcsRepositoryDataExporter<com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository,​com.atlassian.bamboo.specs.api.model.repository.AnyVcsRepositoryProperties>
      • appendBranchData

        @NotNull
        public @NotNull com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository appendBranchData​(@NotNull
                                                                                                             @NotNull com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository builder,
                                                                                                             @NotNull
                                                                                                             @NotNull VcsBranchDefinition vcsBranchDefinition)
        Description copied from interface: VcsRepositoryDataExporter
        Fill in the builder passed as the first argument with vcs branch data. Return the first argument if not applicable.
        Specified by:
        appendBranchData in interface VcsRepositoryDataExporter<com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository,​com.atlassian.bamboo.specs.api.model.repository.AnyVcsRepositoryProperties>
      • appendChangeDetectionOptions

        @NotNull
        public @NotNull com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository appendChangeDetectionOptions​(@NotNull
                                                                                                                         @NotNull com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository builder,
                                                                                                                         @NotNull
                                                                                                                         @NotNull VcsChangeDetectionOptions changeDetectionOptions)
        Description copied from interface: VcsRepositoryDataExporter
        Fill in the builder passed as the first argument with change detection configuration. Return the first argument if not applicable.
        Specified by:
        appendChangeDetectionOptions in interface VcsRepositoryDataExporter<com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository,​com.atlassian.bamboo.specs.api.model.repository.AnyVcsRepositoryProperties>
      • appendBranchDetectionOptions

        @NotNull
        public @NotNull com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository appendBranchDetectionOptions​(@NotNull
                                                                                                                         @NotNull com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository builder,
                                                                                                                         @NotNull
                                                                                                                         @NotNull VcsBranchDetectionOptions branchDetectionOptions)
        Description copied from interface: VcsRepositoryDataExporter
        Fill in the builder passed as the first argument with branch detection configuration. Return the first argument if not applicable.
        Specified by:
        appendBranchDetectionOptions in interface VcsRepositoryDataExporter<com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository,​com.atlassian.bamboo.specs.api.model.repository.AnyVcsRepositoryProperties>
      • importLocationData

        @NotNull
        public @NotNull Map<String,​String> importLocationData​(@NotNull
                                                                    @NotNull com.atlassian.bamboo.specs.api.model.repository.AnyVcsRepositoryProperties properties,
                                                                    @Nullable
                                                                    @Nullable VcsLocationDefinition existingData,
                                                                    @NotNull
                                                                    @NotNull VcsRepositoryContext repositoryContext)
        Description copied from interface: VcsRepositoryDataExporter
        Extract vcs location configuration from properties object. Should return null if respective data is undefined in properties object. If data is returned, it should be validated for correctness and completeness.
        Specified by:
        importLocationData in interface VcsRepositoryDataExporter<com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository,​com.atlassian.bamboo.specs.api.model.repository.AnyVcsRepositoryProperties>
        Returns:
      • importBranchData

        @NotNull
        public @NotNull Map<String,​String> importBranchData​(@NotNull
                                                                  @NotNull com.atlassian.bamboo.specs.api.model.repository.AnyVcsRepositoryProperties properties,
                                                                  @Nullable
                                                                  @Nullable VcsBranchDefinition existingData)
        Description copied from interface: VcsRepositoryDataExporter
        Extract branch configuration from properties object. Should return null if respective data is undefined in properties object. If data is returned, it should be validated for correctness and completeness.
        Specified by:
        importBranchData in interface VcsRepositoryDataExporter<com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository,​com.atlassian.bamboo.specs.api.model.repository.AnyVcsRepositoryProperties>
        Returns:
      • importChangeDetectionOptions

        @NotNull
        public @NotNull Map<String,​String> importChangeDetectionOptions​(@NotNull
                                                                              @NotNull com.atlassian.bamboo.specs.api.model.repository.AnyVcsRepositoryProperties properties,
                                                                              @Nullable
                                                                              @Nullable VcsChangeDetectionOptions existingData)
        Description copied from interface: VcsRepositoryDataExporter
        Extract change detection configuration from properties object. Should return null if respective data is undefined in properties object. If data is returned, it should be validated for correctness and completeness.
        Specified by:
        importChangeDetectionOptions in interface VcsRepositoryDataExporter<com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository,​com.atlassian.bamboo.specs.api.model.repository.AnyVcsRepositoryProperties>
        Returns:
      • importBranchDetectionOptions

        @NotNull
        public @NotNull Map<String,​String> importBranchDetectionOptions​(@NotNull
                                                                              @NotNull com.atlassian.bamboo.specs.api.model.repository.AnyVcsRepositoryProperties properties,
                                                                              @Nullable
                                                                              @Nullable VcsBranchDetectionOptions existingData)
        Description copied from interface: VcsRepositoryDataExporter
        Extract branch detection configuration from properties object. Should return null if respective data is undefined in properties object. If data is returned, it should be validated for correctness and completeness.
        Specified by:
        importBranchDetectionOptions in interface VcsRepositoryDataExporter<com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository,​com.atlassian.bamboo.specs.api.model.repository.AnyVcsRepositoryProperties>
        Returns:
      • importStandardChangeDetectionOptions

        @Nullable
        public static @Nullable Map<String,​String> importStandardChangeDetectionOptions​(@NotNull
                                                                                              @NotNull com.atlassian.bamboo.specs.api.model.repository.VcsRepositoryProperties repositoryProperties,
                                                                                              @Nullable
                                                                                              @Nullable com.atlassian.bamboo.specs.api.model.repository.VcsChangeDetectionProperties cdOptionInput)
      • exportStandardChangeDetectionOptions

        public static com.atlassian.bamboo.specs.api.builders.repository.VcsChangeDetection exportStandardChangeDetectionOptions​(@NotNull
                                                                                                                                 @NotNull VcsChangeDetectionOptions changeDetectionOptions)
      • toYaml

        @Nullable
        public @Nullable Node toYaml​(@NotNull
                                     @NotNull com.atlassian.bamboo.specs.api.model.repository.AnyVcsRepositoryProperties repo)
                              throws com.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException
        Specified by:
        toYaml in interface VcsRepositoryDataExporter<com.atlassian.bamboo.specs.api.builders.repository.AnyVcsRepository,​com.atlassian.bamboo.specs.api.model.repository.AnyVcsRepositoryProperties>
        Throws:
        com.atlassian.bamboo.specs.api.exceptions.PropertiesValidationException