Class GitHubConfigurationExporter

  • All Implemented Interfaces:
    VcsRepositoryDataExporter<com.atlassian.bamboo.specs.builders.repository.github.GitHubRepository,​com.atlassian.bamboo.specs.model.repository.github.GitHubRepositoryProperties>

    public class GitHubConfigurationExporter
    extends Object
    implements VcsRepositoryDataExporter<com.atlassian.bamboo.specs.builders.repository.github.GitHubRepository,​com.atlassian.bamboo.specs.model.repository.github.GitHubRepositoryProperties>
    • Constructor Detail

      • GitHubConfigurationExporter

        public GitHubConfigurationExporter()
    • Method Detail

      • getEntityPropertiesBuilder

        @NotNull
        public @NotNull com.atlassian.bamboo.specs.builders.repository.github.GitHubRepository 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.builders.repository.github.GitHubRepository,​com.atlassian.bamboo.specs.model.repository.github.GitHubRepositoryProperties>
        Returns:
        instance of a builder
      • appendLocationData

        @NotNull
        public @NotNull com.atlassian.bamboo.specs.builders.repository.github.GitHubRepository appendLocationData​(@NotNull
                                                                                                                  @NotNull com.atlassian.bamboo.specs.builders.repository.github.GitHubRepository 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.builders.repository.github.GitHubRepository,​com.atlassian.bamboo.specs.model.repository.github.GitHubRepositoryProperties>
      • appendBranchData

        @NotNull
        public @NotNull com.atlassian.bamboo.specs.builders.repository.github.GitHubRepository appendBranchData​(@NotNull
                                                                                                                @NotNull com.atlassian.bamboo.specs.builders.repository.github.GitHubRepository 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.builders.repository.github.GitHubRepository,​com.atlassian.bamboo.specs.model.repository.github.GitHubRepositoryProperties>
      • appendChangeDetectionOptions

        @NotNull
        public @NotNull com.atlassian.bamboo.specs.builders.repository.github.GitHubRepository appendChangeDetectionOptions​(@NotNull
                                                                                                                            @NotNull com.atlassian.bamboo.specs.builders.repository.github.GitHubRepository 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.builders.repository.github.GitHubRepository,​com.atlassian.bamboo.specs.model.repository.github.GitHubRepositoryProperties>
      • appendBranchDetectionOptions

        @NotNull
        public @NotNull com.atlassian.bamboo.specs.builders.repository.github.GitHubRepository appendBranchDetectionOptions​(@NotNull
                                                                                                                            @NotNull com.atlassian.bamboo.specs.builders.repository.github.GitHubRepository 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.builders.repository.github.GitHubRepository,​com.atlassian.bamboo.specs.model.repository.github.GitHubRepositoryProperties>
      • importLocationData

        @Nullable
        public @Nullable Map<String,​String> importLocationData​(@NotNull
                                                                     @NotNull com.atlassian.bamboo.specs.model.repository.github.GitHubRepositoryProperties repositoryProperties,
                                                                     @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.builders.repository.github.GitHubRepository,​com.atlassian.bamboo.specs.model.repository.github.GitHubRepositoryProperties>
        Returns:
      • importBranchData

        @Nullable
        public @Nullable Map<String,​String> importBranchData​(@NotNull
                                                                   @NotNull com.atlassian.bamboo.specs.model.repository.github.GitHubRepositoryProperties repositoryProperties,
                                                                   @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.builders.repository.github.GitHubRepository,​com.atlassian.bamboo.specs.model.repository.github.GitHubRepositoryProperties>
        Returns:
      • importChangeDetectionOptions

        @Nullable
        public @Nullable Map<String,​String> importChangeDetectionOptions​(@NotNull
                                                                               @NotNull com.atlassian.bamboo.specs.model.repository.github.GitHubRepositoryProperties repositoryProperties,
                                                                               @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.builders.repository.github.GitHubRepository,​com.atlassian.bamboo.specs.model.repository.github.GitHubRepositoryProperties>
        Returns:
      • importBranchDetectionOptions

        @Nullable
        public @Nullable Map<String,​String> importBranchDetectionOptions​(@NotNull
                                                                               @NotNull com.atlassian.bamboo.specs.model.repository.github.GitHubRepositoryProperties repositoryProperties,
                                                                               @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.builders.repository.github.GitHubRepository,​com.atlassian.bamboo.specs.model.repository.github.GitHubRepositoryProperties>
        Returns:
      • toYaml

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