com.collabnet.ce.soap60.webservices.scm

## Interface IScmAppSoap

- All Known Implementing Classes:
    ScmAppSoapMockStub, ScmAppSoapStub

      public interface IScmAppSoap

  Provides SOAP services for managing the SCM system.

  Change History

  Version 18.2
  - Added new method getExternalSystemList2: Same as getExternalSystemList, in addition the response includes 'frozen' property

  Version 8.1
  - Added new method getReplicaRepositoryList
  - Added new method replicateRepository
  - Added new method removeRepositoryFromReplica
  - Added new method getReplicaListForExternalSystemId
  - Added new method getSCMCheckoutCommands
  - Added new method getSCMCheckoutCommandsForReplica
  - Added new method getReplicaData
  - Added new method setReplicaData

  Version 8.0
  - Added new method getExternalSystemList
  - Added new method deleteRepository

  Version 7.2
  - Added new method setAuthorizedKeysForUser.
  - Recommended to use this method in place of setAuthorizedKeys(String sessionId, String username, String authorizedKeys).

  Version 7.1
  - Added new method getExternalSystem: Returns information associated with an external system integrated with Teamforge.
  - Added new method setExternalSystemData: Updates external system information that is integrated with Teamforge.

  Version 7.0.0.1
  - Added new method getCommitData2: Returns the same as getCommitData, but the File list does not contain commit message. Recommended to use this method in place of getCommitData

  Version 7.0
  - Added new method createRepository2: now has the repository parameters information.
  - Added new method getRepositoryData2: now has the repository parameters information.
  - Added new method getRepository2DataById: now has the repository parameters information.
  - Added new method setRepositoryData: sets the repository data including the parameters.

  Version 6.2
  - Added new method getAuthorizedKeysForUser.
  - Added new method getAuthorizedKeys.
  - Added new method getRepositoryListForExternalSystem.
  - Added new method setAuthorizedKeys.

  Version 6.1.1
  - getScmAdapterNames: now users with Manage SCM integration Site-wide permission are allowed to use this.
  - getScmAdapterParameterNamesWithType: now users with Manage SCM integration Site-wide permission are allowed to use this.
  - addExternalSystem: now users with Manage SCM integration Site-wide permission are allowed to use this.

  Version 6.1
  - Added new method getReplicableScmExternalSystemList.
  - Added new method getReplicatedRepositoryList.
  - getRepositoryData2: Renamed to getRepositoryDataById.
  - createRepository2: Removed and merged into createRepository.

  Version 6.0
  - Added new method getCommitId.

  Version 5.4
  - Added new method moveRepository.
  - Added new method getScmAdapterNames.
  - Added new method getScmAdapterParameterNamesWithType.
  - Added new method addExternalSystem.

  Version 5.3
  - Added new method getSCMCheckoutCommand.
  - All methods taking SoapFilter arguments now support ORing filter conditions if multiple SoapFilter objects with the same name but different values are passed.

  Version 5.2
  - getRepositoryList: Modified in 5.2 to observe path based permission.
  - getCommitList: Modified in 5.2 to observe path based permission.
  - getCommitData: Modified in 5.2 to observe path based permission.
  - getRepositoryData:Rendered obsolete in 5.2; getRepositoryData2() returns additional fields. Modified in 5.2 to observe path based permission.
  - createRepository:Rendered obsolete in 5.2; createRepository2() supports additional field.

  - getRepositoryData2: New operation added in 5.2, to support new repository field.
  - createRepository2: New operation added in 5.2, to support new repository field.
  Since:
    4.1

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Deprecated Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `addExternalSystem(String sessionId, String adapterType, String title, String description, com.collabnet.ce.soap60.types.SoapNamedValues adapterTypeParameters)` Adds an external system of the given adapter type with its title, description and respective list of parameters.
    `RepositorySoapDO` | `createRepository(String sessionId, String projectId, String externalSystemId, String repositoryDirectory, String title, String description, boolean idRequiredOnCommit, boolean hideMonitoringDetails, String comment)` Creates a new repository in the given SCM server.
    `Repository2SoapDO` | `createRepository2(String sessionId, String projectId, String externalSystemId, String repositoryDirectory, String title, String description, boolean idRequiredOnCommit, boolean hideMonitoringDetails, String comment, RepositoryParameter2SoapDO[] params)` Creates a new repository in the given SCM server.
    `void` | `deleteRepository(String sessionId, String repositoryId)` Delete the repository with specified ID.
    `String` | `getAuthorizedKeys(String sessionId)` Get all authorized keys for calling user.
    `String` | `getAuthorizedKeysForUser(String sessionId, String username)` Get all authorized keys for a user with a given username.
    `CommitSoapDO` | `getCommitData(String sessionId, String commitId)` Deprecated. from 7.0.0.1 in favour of getCommitData2() that returns Commit2SoapDO, similar to CommitSoapDO except that the scmfile list does not contain the commit message for each file.
    `Commit2SoapDO` | `getCommitData2(String sessionId, String commitId)` Returns data associated with a specific commit.
    `String` | `getCommitId(String sessionId, String revision, String externalSystemId, String repoPath)` Returns a commit Id corresponding to an commit version.
    `CommitSoapList` | `getCommitList(String sessionId, String repositoryId, com.collabnet.ce.soap60.types.SoapFilter[] filters)` Lists the commits on a given repository.
    `ExternalSystemSoapDO` | `getExternalSystem(String sessionId, String systemId)` Returns information associated with an external system integrated with TeamForge.
    `ExternalSystemSoapList` | `getExternalSystemList(String sessionId)` Gets a list of external scm systems integrated with TeamForge.
    `ExternalSystem2SoapList` | `getExternalSystemList2(String sessionId)` Gets a list of external scm systems integrated with TeamForge.
    `ReplicableScmExternalSystemSoapList` | `getReplicableScmExternalSystemList(String sessionId)` Deprecated. since 8.1 as this call does not return replicable Git external systems. To get the all replicable external systems use getReplicableScmExternalSystemList2 with `null` parameter.
    `ReplicableScmExternalSystemSoapList` | `getReplicableScmExternalSystemList2(String sessionId, String adapterName)` Lists the replicable external systems for all adapter types or for a given adapter type.
    `ReplicaDataSoapDO` | `getReplicaData(String sessionId, String replicaId)` For a given replica server id get the replica server data.
    `ReplicaServerSoapList` | `getReplicaListForExternalSystem(String sessionId, String externalSystemId, boolean approvedOnly)` Returns list of replicas for given external system id.
    `ReplicaRepositorySoapList` | `getReplicaRepositoryList(String sessionId, String replicaId)` Lists repositories of the specified replica.
    `ReplicatedRepositorySoapList` | `getReplicatedRepositoryList(String sessionId, String masterRepositoryId)` Lists replicated repositories of the specified SCM master.
    `Repository2SoapDO` | `getRepository2Data(String sessionId, String externalSystemId, String repositoryDirectory)` Returns data associated with a specific repository.
    `Repository2SoapDO` | `getRepository2DataById(String sessionId, String repositoryId)` Returns data associated with a specific repository Note that a user has permission to view the repository data if the user belongs to a role that has either full view permission or any path-based permission on this repository.
    `RepositorySoapDO` | `getRepositoryData(String sessionId, String externalSystemId, String repositoryDirectory)` Returns data associated with a specific repository.
    `RepositorySoapDO` | `getRepositoryDataById(String sessionId, String repositoryId)` Returns data associated with a specific repository Note that a user has permission to view the repository data if the user belongs to a role that has either full view permission or any path-based permission on this repository.
    `RepositorySoapList` | `getRepositoryList(String sessionId, String projectId)` Lists the repositories within a given project that the current user has been granted view permission through roles and path based permission.
    `RepositorySoapList` | `getRepositoryListForExternalSystem(String sessionId, String externalSystemId, String userName)` Lists the repositories on a given external system (SCM Adapter) for which the specified user has been granted view permission.
    `String[]` | `getScmAdapterNames(String sessionId)` Returns a string array containing the known list of supported SCM adapters on the server.
    `com.collabnet.ce.soap60.types.SoapNamedValues` | `getScmAdapterParameterNamesWithType(String sessionId, String adapterName)` Returns the SCM adapter parameter names with their corresponding type.
    `String` | `getSCMCheckoutCommand(String sessionId, String repositoryId, String userName)` Returns the command needed to check out a specific repository.
    `CheckoutCommandSoapList` | `getSCMCheckoutCommands(String sessionId, String repositoryId)` Returns the list of commands that might be used to check out a specific repository.
    `CheckoutCommandSoapList` | `getSCMCheckoutCommandsForReplica(String sessionId, String repositoryId, String replicaId)` Returns the list of commands that might be used to check out a repository's replica.
    `RepositorySoapDO` | `moveRepository(String sessionId, String repositoryId, String projectId)` Moves the repository from its current project to the one specified.
    `void` | `removeRepositoryFromReplica(String sessionId, String repositoryId, String replicaId)` Remove process of replicating of a given repository on a given replica.
    `void` | `replicateRepository(String sessionId, String repositoryId, String replicaId)` Initiates the process of replicating of a given repository on a given replica.
    `void` | `setAuthorizedKeys(String sessionId, String authorizedKeys)` Set authorized keys for calling user.
    `void` | `setAuthorizedKeys(String sessionId, String username, String authorizedKeys)` Deprecated. from 7.2.0.0 in favour of setAuthorizedKeysForUser() which does the same.
    `void` | `setAuthorizedKeysForUser(String sessionId, String username, String authorizedKeys)` Set authorized keys for given user.
    `void` | `setExternalSystemData(String sessionId, ExternalSystemSoapDO systemData)` Updates information associated with an external system integrated with TeamForge.
    `void` | `setReplicaData(String sessionId, ReplicaDataSoapDO replica)` Sets replica server data.
    `void` | `setRepositoryData(String sessionId, Repository2SoapDO repository)` Sets the repository data

- - ### Method Detail

    - #### getRepositoryList

          RepositorySoapList getRepositoryList(String sessionId,
                                               String projectId)
                                        throws RemoteException

      Lists the repositories within a given project that the current user has been granted view permission through roles and path based permission.

      Note that if a user belongs to a role that has set up path based permission on a repository, that repository will appear in this list.

      Parameters:
        `sessionId` - User session id.
        `projectId` - The project id.
      Returns:
        List of SCM repositories within the specified project.
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified project id is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user has insufficient privileges.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
        `RemoteException`
      Since:
        4.1

    - #### getRepositoryListForExternalSystem

          RepositorySoapList getRepositoryListForExternalSystem(String sessionId,
                                                                String externalSystemId,
                                                                String userName)
                                                         throws RemoteException

      Lists the repositories on a given external system (SCM Adapter) for which the specified user has been granted view permission.
      Parameters:
        `sessionId` - User session id. Must be site admin.
        `externalSystemId` - The external system (SCM adapter) id.
        `userName` - Name of the user.
      Returns:
        List of repositories on a given external system (SCM Adapter) for which the current user has been granted view permission.
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified external system id is not valid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user has insufficient privileges.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - when any of the parameters is null/empty
        `RemoteException`
      Since:
        6.2

    - #### getCommitList

          CommitSoapList getCommitList(String sessionId,
                                       String repositoryId,
                                       com.collabnet.ce.soap60.types.SoapFilter[] filters)
                                throws RemoteException

      Lists the commits on a given repository.

      Note that if a user belongs to a role that has set up path based permission on a repository, that user can view all the commits for the repository, even for commits to paths for which the user does not have view permission (though file details will be filtered appropriately when getCommitDetails() is called).

      Change History
      Version 4.3
      - Added additional parameter `filters`. The valid filter names are: createdAfter, createdBefore, createdBy.
      - The list is always paired down to include no more than 5000 results.
      Parameters:
        `sessionId` - User session id.
        `repositoryId` - The repository id.
        `filters` - Array of filters to apply (null to return unfiltered list).
      Returns:
        List of SCM commits on the specified repository.
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified repository id is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user has insufficient privileges.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
        `com.collabnet.ce.soap60.fault.InvalidFilterFault` - If the filters are not valid.
        `RemoteException`
      Since:
        4.1

    - #### getCommitData

          CommitSoapDO getCommitData(String sessionId,
                                     String commitId)
                              throws RemoteException

      Deprecated. from 7.0.0.1 in favour of getCommitData2() that returns Commit2SoapDO, similar to CommitSoapDO except that the scmfile list does not contain the commit message for each file.
      Returns data associated with a specific commit. Only files that are visible through roles or path based permission are included in the commit data.

      Recommended to use getCommitData2() in place of getCommitData()

      Parameters:
        `sessionId` - User session id.
        `commitId` - The commit id.
      Returns:
        Commit data.
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified commit id is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user has insufficient privileges.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
        `RemoteException`
      Since:
        4.1

    - #### getCommitData2

          Commit2SoapDO getCommitData2(String sessionId,
                                       String commitId)
                                throws RemoteException

      Returns data associated with a specific commit. Only files that are visible through roles or path based permission are included in the commit data. Commit Message is not appended to each file. Recommended to use this method in place of getCommitData()
      Parameters:
        `sessionId` - User session id.
        `commitId` - The commit id.
      Returns:
        Commit data
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified commit id is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user has insufficient privileges.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
        `RemoteException`
      Since:
        7.0.0.1

    - #### getRepositoryData

          RepositorySoapDO getRepositoryData(String sessionId,
                                             String externalSystemId,
                                             String repositoryDirectory)
                                      throws RemoteException

      Returns data associated with a specific repository.

      Note that a user has permission to view the repository data if the user belongs to a role that has either full view permission or any path-based permission on this repository.

      Parameters:
        `sessionId` - User session id.
        `externalSystemId` - The id of the external system that the repository is located on
        `repositoryDirectory` - The directory on the external system that the repository is located in
      Returns:
        Repository Data
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified repository id is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user has insufficient privileges.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
        `RemoteException`
      Since:
        4.2SP1

    - #### getRepository2Data

          Repository2SoapDO getRepository2Data(String sessionId,
                                               String externalSystemId,
                                               String repositoryDirectory)
                                        throws RemoteException

      Returns data associated with a specific repository.

      Note that a user has permission to view the repository data if the user belongs to a role that has either full view permission or any path-based permission on this repository.

      Parameters:
        `sessionId` - User session id.
        `externalSystemId` - The id of the external system that the repository is located on
        `repositoryDirectory` - The directory on the external system that the repository is located in
      Returns:
        Repository Data
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified repository id is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user has insufficient privileges.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
        `RemoteException`
      Since:
        7.0

    - #### getRepositoryDataById

          RepositorySoapDO getRepositoryDataById(String sessionId,
                                                 String repositoryId)
                                          throws RemoteException

      Returns data associated with a specific repository

      Note that a user has permission to view the repository data if the user belongs to a role that has either full view permission or any path-based permission on this repository.

      Parameters:
        `sessionId` - User session id.
        `repositoryId` - The id of the repository
      Returns:
        Repository Data
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified repository id is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user has insufficient privileges.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
        `RemoteException`
      Since:
        4.2SP1 (renamed from getRepositoryData2 in 6.1)

    - #### getRepository2DataById

          Repository2SoapDO getRepository2DataById(String sessionId,
                                                   String repositoryId)
                                            throws RemoteException

      Returns data associated with a specific repository

      Note that a user has permission to view the repository data if the user belongs to a role that has either full view permission or any path-based permission on this repository.

      Parameters:
        `sessionId` - User session id.
        `repositoryId` - The id of the repository
      Returns:
        Repository Data
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified repository id is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user has insufficient privileges.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
        `RemoteException`
      Since:
        7.0

    - #### setRepositoryData

          void setRepositoryData(String sessionId,
                                 Repository2SoapDO repository)
                          throws RemoteException

      Sets the repository data
      Parameters:
        `sessionId` - User session id.
        `repository` - The repository data
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified repository id is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user has insufficient privileges.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
        `RemoteException`
      Since:
        7.0

    - #### getReplicaData

          ReplicaDataSoapDO getReplicaData(String sessionId,
                                           String replicaId)
                                    throws RemoteException

      For a given replica server id get the replica server data.
      Parameters:
        `sessionId` - the user session
        `replicaId` - the replica server id
      Returns:
        the replica server data
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault`
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault`
        `com.collabnet.ce.soap60.fault.SystemFault`
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault`
        `RemoteException`

    - #### setReplicaData

          void setReplicaData(String sessionId,
                              ReplicaDataSoapDO replica)
                       throws RemoteException

      Sets replica server data.
      Parameters:
        `sessionId` - user session id
        `replica` - the replica server data to be set
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault`
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault`
        `com.collabnet.ce.soap60.fault.SystemFault`
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault`
        `com.collabnet.ce.soap60.fault.VersionMismatchFault`
        `RemoteException`

    - #### getSCMCheckoutCommand

          String getSCMCheckoutCommand(String sessionId,
                                       String repositoryId,
                                       String userName)
                                throws RemoteException

      Returns the command needed to check out a specific repository.

      Note that a user has permission to view the checkout command if the user belongs to a role that has either full view permission or any path-based permission on this repository.

      Parameters:
        `sessionId` - User session id.
        `repositoryId` - The id of the repository
        `userName` - User name.
      Returns:
        command to check out the repository
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified repository id is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user has insufficient privileges.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
        `RemoteException`
      Since:
        5.3

    - #### getSCMCheckoutCommands

          CheckoutCommandSoapList getSCMCheckoutCommands(String sessionId,
                                                         String repositoryId)
                                                  throws RemoteException

      Returns the list of commands that might be used to check out a specific repository. Note that a user has permission to view the checkout command if the user belongs to a role that has either full view permission or any path-based permission on this repository.
      Parameters:
        `sessionId` - User session id.
        `repositoryId` - The id of the repository
      Returns:
        protocol to checkout command tuples
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified repository id is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user has insufficient privileges.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
        `RemoteException`
      Since:
        8.1

    - #### getSCMCheckoutCommandsForReplica

          CheckoutCommandSoapList getSCMCheckoutCommandsForReplica(String sessionId,
                                                                   String repositoryId,
                                                                   String replicaId)
                                                            throws RemoteException

      Returns the list of commands that might be used to check out a repository's replica. Note that a user has permission to view the checkout command if the user belongs to a role that has either full view permission or any path-based permission on this repository.
      Parameters:
        `sessionId` - User session id.
        `repositoryId` - The id of the repository
        `replicaId` - The id of the replica to which checkout command should point
      Returns:
        protocol to checkout command tuples
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified repository id is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user has insufficient privileges.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
        `RemoteException`
      Since:
        8.1

    - #### createRepository

          RepositorySoapDO createRepository(String sessionId,
                                            String projectId,
                                            String externalSystemId,
                                            String repositoryDirectory,
                                            String title,
                                            String description,
                                            boolean idRequiredOnCommit,
                                            boolean hideMonitoringDetails,
                                            String comment)
                                     throws RemoteException

      Creates a new repository in the given SCM server. Create repository request for Site Admin and SCM Admin will not go for approval. For non-admin user, if the create repository request is sent for approval, then it returns the empty RepositoryDO.
      Parameters:
        `sessionId` - User session id.
        `projectId` - The project that will host the new repository
        `externalSystemId` - The id of the external system on which the new repository will be created
        `repositoryDirectory` - The directory on the external system for the new repository
        `title` - The name of the new repository
        `description` - The description for the new repository
        `idRequiredOnCommit` - Whether an artifact ID is required for commits to this repository
        `hideMonitoringDetails` - Controls whether monitoring messages for commit include full details
        `comment` - The comment for documenting the creation of the repository
      Returns:
        Repository Data
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified repository id is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user has insufficient privileges.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
        `RemoteException`
      Since:
        4.2SP1

    - #### createRepository2

          Repository2SoapDO createRepository2(String sessionId,
                                              String projectId,
                                              String externalSystemId,
                                              String repositoryDirectory,
                                              String title,
                                              String description,
                                              boolean idRequiredOnCommit,
                                              boolean hideMonitoringDetails,
                                              String comment,
                                              RepositoryParameter2SoapDO[] params)
                                       throws RemoteException

      Creates a new repository in the given SCM server. Create repository request for Site Admin and SCM Admin will not go for approval. For non-admin user, if the create repository request is sent for approval, then it returns the empty RepositoryDO.
      Parameters:
        `sessionId` - User session id.
        `projectId` - The project that will host the new repository
        `externalSystemId` - The id of the external system on which the new repository will be created
        `repositoryDirectory` - The directory on the external system for the new repository
        `title` - The name of the new repository
        `description` - The description for the new repository
        `idRequiredOnCommit` - Whether an artifact ID is required for commits to this repository
        `hideMonitoringDetails` - Controls whether monitoring messages for commit include full details
        `comment` - The comment for documenting the creation of the repository
        `params` - The repository parameter
      Returns:
        Repository Data
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified repository id is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user has insufficient privileges.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
        `RemoteException`
      Since:
        7.0

    - #### deleteRepository

          void deleteRepository(String sessionId,
                                String repositoryId)
                         throws RemoteException

      Delete the repository with specified ID. Delete repository request for Site Admin and SCM Admin will not go for approval.
      Parameters:
        `sessionId` - The user's SOAP session id
        `repositoryId` - The id of the repository to be deleted
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the user's session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have proper permissions to delete the repository
        `com.collabnet.ce.soap60.fault.SystemFault` - All other faults
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - If repository id doesn't exist
        `RemoteException`
      Since:
        8.0

    - #### moveRepository

          RepositorySoapDO moveRepository(String sessionId,
                                          String repositoryId,
                                          String projectId)
                                   throws RemoteException

      Moves the repository from its current project to the one specified.
      Parameters:
        `sessionId` - The user's SOAP session id
        `repositoryId` - The id of the repository to move
        `projectId` - The id of the project to move the repository to
      Returns:
        RepositorySoapDO The repository object post-move
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the user's session is invalid
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - If either the repository id or project id doesn't exist
        `com.collabnet.ce.soap60.fault.ObjectAlreadyExistsFault` - If the destination project is the same as the current project
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have proper permissions on either the repository or the project
        `com.collabnet.ce.soap60.fault.SystemFault` - All other faults
        `RemoteException`
      Since:
        5.4

    - #### getScmAdapterNames

          String[] getScmAdapterNames(String sessionId)
                               throws RemoteException

      Returns a string array containing the known list of supported SCM adapters on the server.
      Parameters:
        `sessionId` - The user's SOAP session id
      Returns:
        String[] The known SCM adapter names
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user is not a site administrator
        `com.collabnet.ce.soap60.fault.SystemFault` - If anything else goes wrong
        `RemoteException`
      Since:
        5.4

    - #### getScmAdapterParameterNamesWithType

          com.collabnet.ce.soap60.types.SoapNamedValues getScmAdapterParameterNamesWithType(String sessionId,
                                                                                            String adapterName)
                                                                                     throws RemoteException

      Returns the SCM adapter parameter names with their corresponding type.
      Parameters:
        `sessionId` - The user's SOAP session id
        `adapterName` - The SCM adapter's name
      Returns:
        SoapNamedValues The named values with type for the SCM adapter parameters
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - If the adapter name is not available
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user is not a site administrator
        `com.collabnet.ce.soap60.fault.SystemFault` - If anything else goes wrong
        `RemoteException`
      Since:
        5.4

    - #### addExternalSystem

          String addExternalSystem(String sessionId,
                                   String adapterType,
                                   String title,
                                   String description,
                                   com.collabnet.ce.soap60.types.SoapNamedValues adapterTypeParameters)
                            throws RemoteException

      Adds an external system of the given adapter type with its title, description and respective list of parameters.

    - Pre-condition: the adapter type and adapter type parameters must be the ones expected as documented.

Parameters:
  `sessionId` - is the user session id.
  `adapterType` - is be the adapter type created, which is one value of the call "getScmAdapterNames()".
  `title` - is the title of the external system.
  `description` - is the description of the external system.
  `adapterTypeParameters` - is the list of parameters of names and associated values for the given adapter type. The list of the needed parameters and their expected associated data type is retrieved by calling "getScmAdapterParameterNamesWithType(adapterType)".
Returns:
  The GUID of the newly added external system.
Throws:
  `com.collabnet.ce.soap60.fault.InvalidSessionFault` - When the specified session id is invalid.
  `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - If the adapter does not exist internally.
  `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - When the user has insufficient privileges.
  `com.collabnet.ce.soap60.fault.SystemFault` - When wrong parameters are provided or an unexpected system error occurs.
  `RemoteException`
Since:
  5.4

- #### getExternalSystem

      ExternalSystemSoapDO getExternalSystem(String sessionId,
                                             String systemId)
                                      throws RemoteException

  Returns information associated with an external system integrated with TeamForge.
  Parameters:
    `sessionId` - the user session id.
    `systemId` - The GUID of the external system.
  Returns:
    the external system data.
  Throws:
    `com.collabnet.ce.soap60.fault.InvalidSessionFault` - When the specified session id is invalid.
    `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - If the external system does not exist internally.
    `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - When the user has insufficient privileges.
    `com.collabnet.ce.soap60.fault.SystemFault` - When wrong parameters are provided or an unexpected system error occurs.
    `RemoteException`
  Since:
    7.1

- #### getExternalSystemList

      ExternalSystemSoapList getExternalSystemList(String sessionId)
                                            throws RemoteException

  Gets a list of external scm systems integrated with TeamForge.
  Parameters:
    `sessionId` - the user session id.
  Returns:
    the external system list.
  Throws:
    `com.collabnet.ce.soap60.fault.InvalidSessionFault` - When the specified session id is invalid.
    `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - When the user has insufficient privileges.
    `com.collabnet.ce.soap60.fault.SystemFault` - When wrong parameters are provided or an unexpected system error occurs.
    `RemoteException`
  Since:
    8.0

- #### getExternalSystemList2

      ExternalSystem2SoapList getExternalSystemList2(String sessionId)
                                              throws RemoteException

  Gets a list of external scm systems integrated with TeamForge.
  Parameters:
    `sessionId` - the user session id.
  Returns:
    the external system list.
  Throws:
    `com.collabnet.ce.soap60.fault.InvalidSessionFault` - When the specified session id is invalid.
    `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - When the user has insufficient privileges.
    `com.collabnet.ce.soap60.fault.SystemFault` - When wrong parameters are provided or an unexpected system error occurs.
    `RemoteException`
  Since:
    18.2

- #### setExternalSystemData

      void setExternalSystemData(String sessionId,
                                 ExternalSystemSoapDO systemData)
                          throws RemoteException

  Updates information associated with an external system integrated with TeamForge.
  Parameters:
    `sessionId` - the user session id.
    `systemData` - the external system data to be updated
  Throws:
    `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - If the external system does not exist internally.
    `com.collabnet.ce.soap60.fault.SystemFault` - When wrong parameters are provided or an unexpected system error occurs.
    `com.collabnet.ce.soap60.fault.InvalidSessionFault` - When the specified session id is invalid.
    `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - When the user has insufficient privileges.
    `com.collabnet.ce.soap60.fault.InvalidOperationFault` - When an attempt is made to set different adapterName or adapterCatrogory.
    `RemoteException`
  Since:
    7.1

- #### getCommitId

      String getCommitId(String sessionId,
                         String revision,
                         String externalSystemId,
                         String repoPath)
                  throws RemoteException

  Returns a commit Id corresponding to an commit version.
  Parameters:
    `sessionId` - User session id.
    `revision` - The Revision Number
    `externalSystemId` - External system id.
    `repoPath` - Repository path.
  Returns:
    The commit Id
  Throws:
    `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the session is invalid (expired / time out)
    `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user does not have read access.
    `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
    `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified repository id is invalid.
    `RemoteException`
  Since:
    6.0

- #### getReplicableScmExternalSystemList

      ReplicableScmExternalSystemSoapList getReplicableScmExternalSystemList(String sessionId)
                                                                      throws RemoteException

  Deprecated. since 8.1 as this call does not return replicable Git external systems. To get the all replicable external systems use getReplicableScmExternalSystemList2 with `null` parameter.
  Lists the replicable external systems. That is, the list of SvnEdge external systems that supports replication.
  Parameters:
    `sessionId` - User session id.
  Returns:
    List of the replicable external systems
  Throws:
    `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
    `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
    `RemoteException`
  Since:
    6.1

- #### getReplicableScmExternalSystemList2

      ReplicableScmExternalSystemSoapList getReplicableScmExternalSystemList2(String sessionId,
                                                                              String adapterName)
                                                                       throws RemoteException

  Lists the replicable external systems for all adapter types or for a given adapter type.
  Parameters:
    `sessionId` - User session id.
    `adapterName` - the adapter name or `null` to list replicable systems for all adapters.
  Returns:
    List of the replicable external systems.
  Throws:
    `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
    `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
    `RemoteException`
  Since:
    8.1

- #### getReplicatedRepositoryList

      ReplicatedRepositorySoapList getReplicatedRepositoryList(String sessionId,
                                                               String masterRepositoryId)
                                                        throws RemoteException

  Lists replicated repositories of the specified SCM master.
  Parameters:
    `sessionId` - the session key
    `masterRepositoryId` - the repository Id for which to find replicas
  Returns:
    a list of ReplicatedRepository
  Throws:
    `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
    `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified master repository id is invalid.
    `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user has insufficient privileges.
    `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
    `RemoteException`
  Since:
    6.1

- #### getReplicaListForExternalSystem

      ReplicaServerSoapList getReplicaListForExternalSystem(String sessionId,
                                                            String externalSystemId,
                                                            boolean approvedOnly)
                                                     throws RemoteException

  Returns list of replicas for given external system id.
  Parameters:
    `sessionId` - the user session id.
    `externalSystemId` - The GUID of the external system.
    `approvedOnly` - The GUID of the external system.
  Returns:
    replicas list.
  Throws:
    `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - When wrong parameters are provided.
    `com.collabnet.ce.soap60.fault.InvalidSessionFault` - When the specified session id is invalid.
    `RemoteException`
  Since:
    8.1

- #### getReplicaRepositoryList

      ReplicaRepositorySoapList getReplicaRepositoryList(String sessionId,
                                                         String replicaId)
                                                  throws RemoteException

  Lists repositories of the specified replica.
  Parameters:
    `sessionId` - the session key
    `replicaId` - the replica Id for which to find repositories
  Returns:
    a list of ReplicatedRepository
  Throws:
    `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
    `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified replica id is invalid.
    `RemoteException`
  Since:
    8.1

- #### replicateRepository

      void replicateRepository(String sessionId,
                               String repositoryId,
                               String replicaId)
                        throws RemoteException

  Initiates the process of replicating of a given repository on a given replica.
  Parameters:
    `sessionId` - the session key
    `repositoryId` - the id of the given repository
    `replicaId` - the id of the given replica
  Throws:
    `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - when the repositoryId or replicaId are null or empty
    `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
    `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified master repository or replica are not valid
    `com.collabnet.ce.soap60.fault.SystemFault` - if replica command creation fails
    `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - if the user has no permission
    `RemoteException`
  Since:
    8.1

- #### removeRepositoryFromReplica

      void removeRepositoryFromReplica(String sessionId,
                                       String repositoryId,
                                       String replicaId)
                                throws RemoteException

  Remove process of replicating of a given repository on a given replica.
  Parameters:
    `sessionId` - the session key
    `repositoryId` - the id of the given repository
    `replicaId` - the id of the given replica
  Throws:
    `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - when the repositoryId or replicaId are null or empty
    `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
    `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified master repository or replica are not valid
    `com.collabnet.ce.soap60.fault.SystemFault` - if replica command creation fails
    `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - if the user has no permission
    `RemoteException`
  Since:
    8.1

- #### getAuthorizedKeysForUser

      String getAuthorizedKeysForUser(String sessionId,
                                      String username)
                               throws RemoteException

  Get all authorized keys for a user with a given username.
  Parameters:
    `sessionId` - the session key
    `username` - name of the user
  Returns:
    Authorized keys, separated by '\n' character. Returns empty string if the user has no keys or cannot be found.
  Throws:
    `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
    `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user has insufficient privileges (the sessionId is not of a site admin).
    `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
    `RemoteException`
  Since:
    6.2

- #### getAuthorizedKeys

      String getAuthorizedKeys(String sessionId)
                        throws RemoteException

  Get all authorized keys for calling user.
  Parameters:
    `sessionId` - the session key
  Returns:
    Authorized keys, separated by '\n' character. Returns empty string if the user has no keys.
  Throws:
    `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
    `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
    `RemoteException`
  Since:
    6.2

- #### setAuthorizedKeys

      void setAuthorizedKeys(String sessionId,
                             String authorizedKeys)
                      throws RemoteException

  Set authorized keys for calling user. Note: overwrites previous keys, if any.
  Parameters:
    `sessionId` - the session key
    `authorizedKeys` - the string containing authorized keys, separated by '\n' character.
  Throws:
    `com.collabnet.ctf.common.exceptions.InvalidUsernameException` - when username is invalid
    `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
    `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
    `RemoteException`
  Since:
    6.2

- #### setAuthorizedKeysForUser

      void setAuthorizedKeysForUser(String sessionId,
                                    String username,
                                    String authorizedKeys)
                             throws RemoteException

  Set authorized keys for given user. Note: overwrites previous keys, if any. Recommended to use this method in place of setAuthorizedKeys(String sessionId, String username, String authorizedKeys).
  Parameters:
    `sessionId` - the session key
    `username` - username for whom the authorized keys to be set
    `authorizedKeys` - the string containing authorized keys, separated by '\n' character.
  Throws:
    `RemoteException` - when username is invalid
  Since:
    7.2

- #### setAuthorizedKeys

      void setAuthorizedKeys(String sessionId,
                             String username,
                             String authorizedKeys)
                      throws RemoteException

  Deprecated. from 7.2.0.0 in favour of setAuthorizedKeysForUser() which does the same.
  Set authorized keys for given user. Note: overwrites previous keys, if any. Recommended to use setAuthorizedKeysForUser() in place of this.
  Parameters:
    `sessionId` - the session key
    `username` - username for whom the authorized keys to be set
    `authorizedKeys` - the string containing authorized keys, separated by '\n' character.
  Throws:
    `com.collabnet.ctf.common.exceptions.InvalidUsernameException` - when username is invalid
    `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
    `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs.
    `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user has insufficient privileges.
    `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified username is invalid.
    `RemoteException`
  Since:
    6.2

Copyright © 2019 CollabNet. All rights reserved.