Class RepositoryStateData

  • All Implemented Interfaces:
    VcsDataObject, VcsRepositoryState

    public class RepositoryStateData
    extends java.lang.Object
    implements VcsRepositoryState
    Represents repository state of changes collection. Value object //TODO: VCS - this object may contain NO VERSION, //TODO: VCS - while we have @NotNull for it
    Since:
    8.0
    Author:
    Eugene Petrenko (eugene.petrenko@jetbrains.com)
    • Field Detail

      • SPECIAL_BRANCH_NAME

        public static final java.lang.String SPECIAL_BRANCH_NAME
        See Also:
        Constant Field Values
    • Method Detail

      • getBranchRevisions

        @NotNull
        public java.util.Map<java.lang.String,​java.lang.String> getBranchRevisions()
        Returns map from branch name to branch revision
        Specified by:
        getBranchRevisions in interface VcsRepositoryState
        Returns:
        see above
      • isEmpty

        public boolean isEmpty()
        Specified by:
        isEmpty in interface VcsRepositoryState
        Returns:
        true if this RepositoryState doesn't contain any information, i.e. it is Null object
      • getDefaultBranchName

        @NotNull
        public java.lang.String getDefaultBranchName()
        //TODO: Is it required for plugin?
        Specified by:
        getDefaultBranchName in interface VcsRepositoryState
        Returns:
        The branch which is considered default for the moment of changes collecting
      • getDefaultBranchRevision

        @Nullable
        public java.lang.String getDefaultBranchRevision()
        Specified by:
        getDefaultBranchRevision in interface VcsRepositoryState
        Returns:
        revision for the #getDefaultBranchName branch
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • createSingleVersionState

        @NotNull
        public static RepositoryStateData createSingleVersionState​(@Nullable
                                                                   java.lang.String version)
        Parameters:
        version - version
        Returns:
        single version RevisionStateData
        Since:
        8.0
      • createVersionState

        @NotNull
        public static RepositoryStateData createVersionState​(@NotNull
                                                             java.lang.String defaultBranchName,
                                                             @NotNull
                                                             java.util.Map<java.lang.String,​java.lang.String> state)
        Parameters:
        defaultBranchName - default branch name
        state - map of branch to version
        Returns:
        revision state data
        Since:
        8.0
      • createFromState

        @NotNull
        public static RepositoryStateData createFromState​(VcsRepositoryState state)
        Parameters:
        state - state of a VCS Repository
        Returns:
        revision state data
        Since:
        8.0
      • createVersionState

        @NotNull
        public static RepositoryStateData createVersionState​(@NotNull
                                                             java.lang.String branch,
                                                             @NotNull
                                                             java.lang.String revision)
        Creates singleton state from given branch and revision
        Parameters:
        branch - branch name
        revision - revision name
        Returns:
        repository state data object
        Since:
        8.1