com.collabnet.ce.soap60.webservices.rbac

## Class RbacAppSoapStub

- java.lang.Object
- - com.collabnet.ce.soap60.webservices.ClientSoapStub
  - - com.collabnet.ce.soap60.webservices.rbac.RbacAppSoapStub

- All Implemented Interfaces:
    IRbacAppSoap

      public class RbacAppSoapStub
      extends com.collabnet.ce.soap60.webservices.ClientSoapStub
      implements IRbacAppSoap

- - ### Field Summary

    - ### Fields inherited from class com.collabnet.ce.soap60.webservices.ClientSoapStub

      `DEFAULT_CLIENT_TIME_OUT`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `RbacAppSoapStub(String soapServerUrl)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `addCluster(String sessionId, String roleId, String operationCluster, String folderId)` Adds an operation cluster to a role, expanding the permission set that the role grants access to.
    `void` | `addGroup(String sessionId, String groupId, String roleId, String projectOrProjectGroupId)` Adds a user group to a role, within the Project/ProjectGroup scope.
    `void` | `addIntegratedApplicationPermission(String sessionId, String roleId, String integratedAppName, String permission)` Adds an integrated application permission to a role, expanding the permission set that the role grants access to.
    `void` | `addUser(String sessionId, String roleId, String username)` Adds a user to the role, giving them all of the permissions of that role
    `void` | `addUserToProjectRole(String sessionId, String roleId, String username, String projectOrProjectGroupId)` Adds a user to the role in the given project context, giving them all of the permissions of that role in that project Same as `addUser` but also takes projectOrProjectGroupId as an additional parameter.
    `void` | `approveRoleRequest(String sessionId, String requestId, String projectId)` Approves a role request
    `RoleSoapDO` | `createGlobalRole(String sessionId, String title, String description, boolean preventInheritance, boolean requestable)` Creates a global role.
    `RoleSoapDO` | `createRole(String sessionId, String projectOrProjectGroupId, String title, String description, boolean preventInheritance, boolean requestable, boolean autoGrant)` Creates a role in a given project
    `RoleSoapDO` | `createSiteWideRole(String sessionId, String title, String description, boolean preventInheritance)` Creates a site-wide role.
    `void` | `deleteRole(String sessionId, String roleId)` Deletes a role.
    `boolean` | `getAutomaticallyGrantOnRequest(String sessionId, String roleId, String projectId)` Gets the role's Automatically Grant On Request for the given project.
    `RoleSoapList` | `getGlobalRoleList(String sessionId)` Returns a list of all the global roles available on the site.
    `RoleSoapList` | `getGlobalRolesForAssignment(String sessionId, String projectOrProjectGroupId)` Returns a list of global roles available in the project or project group for user/user group assignment.
    `RoleSoapList` | `getGroupRoleList(String sessionId, String groupId, String projectIdOrProjectGroupId)` Returns a list of roles the user group is associated with in a project or projectGroup.
    `RoleSoapList` | `getInheritedRoleList(String sessionId, String projectId)` Gets a list of roles inherited from any of the parent projects.
    `com.collabnet.ce.soap60.webservices.rbac.IntegratedAppProjectPermissionSoapList` | `getIntegratedAppPermissions(String sessionId, String[] projectIds, String baseUrl)` Returns list of integratedApp permissions for the user associated with specified projects
    `String[]` | `getIntegratedAppPermissionsForProject(String sessionId, String projectId, String linkId)` Returns integratedApp permissions for the user associated with a project
    `RoleRequestSoapList` | `getPendingRequestedRoles(String sessionId, String projectId)` Lists the pending requested roles for the given projectId
    `UserSoapList` | `getProjectRoleMemberList(String sessionId, String roleId, String projectOrProjectGroupId)` Returns a list of users that are in a specified role in the given project or project group. 1.
    `String[]` | `getProjectsByIntegratedAppPermission(String sessionId, String perm, String integratedAppName)` Returns the list of projects by integratedApp permission.
    `ProjectSoapList` | `getProjectsForAction(String sessionId, String operationString, String userName)` Gets the list of all projects in which the given user has given permission.
    `RoleSoapDO` | `getRoleData(String sessionId, String roleId)` Get a role data.
    `UserGroupSoapList` | `getRoleGroupList(String sessionId, String roleId)` Returns a list of user groups that belong to the specified role.
    `UserSoapList` | `getRoleGroupUsers(String sessionId, String projectIdOrProjectGroupId, String roleId)` Returns a list of users who are part of a group and associated with the specified role.
    `RoleSoapList` | `getRoleList(String sessionId, String projectOrProjectGroupId)` Gets a list of Roles in a project context.
    `UserSoapList` | `getRoleMemberList(String sessionId, String roleId)` Returns a list of users that are assigned to the specified role.
    `RoleSoapList` | `getSiteWideRoleList(String sessionId)` Returns a list of all the site-wide roles available on the site.
    `RoleSoapList` | `getUserRoleList(String sessionId, String projectOrProjectGroupId, String username)` Returns a list of roles that a user is a member of in the specified project or project group.
    `RoleSoapList` | `getUserSiteWideRoleList(String sessionId, String username)` Returns a list of roles that a user is a member of site wide role.
    `void` | `grantRolesToMembers(String sessionId, UserRolesSoapDO[] userRolesSoapDOs, String projectId)` Grants roles to list of users in a given project and user is made as member of the project if not already.
    `RoleCluster2SoapList` | `listClusterForDefaultAccessPermissions(String sessionId, String projectId)` Gets the list of operation cluster with default access permission.
    `RoleClusterSoapList` | `listClusters(String sessionId, String roleId)` Gets the list of operation cluster assigned to a role.
    `RoleGroupSoapList` | `listGroupRolesByProject(String sessionId, String projectId)` Returns a list of user groups and the roles it is associated with in a project.
    `RoleGroupSoapList` | `listGroupRolesByProjectGroup(String sessionId, String projectGroupId)` Returns a list of user groups and the roles it is associated with in a project group.
    `com.collabnet.ce.soap60.types.SoapNamedValues` | `listRolePaths(String sessionId, String roleId, String repositoryId)` Gets the list of paths for a role.
    `void` | `rejectRoleRequest(String sessionId, String requestId, String projectId)` Rejects a role request
    `void` | `removeCluster(String sessionId, String roleId, String operationCluster, String folderId)` Removes an operation cluster to a role, removing the permission set.
    `void` | `removeGroup(String sessionId, String groupId, String roleId, String projectOrProjectGroupId)` Removes the user group for the role, within the Project/ProjectGroup scope
    `void` | `removeIntegratedApplicationPermission(String sessionId, String roleId, String integratedAppName, String permission)` Removes an integrated application permission from the given role.
    `void` | `removeUser(String sessionId, String roleId, String username)` Removes a user from a role The behavior of this API is as follows. 1) Removing users is not supported for global role.
    `void` | `removeUserFromProjectRole(String sessionId, String roleId, String username, String projectOrProjectGroupId)` Removes a user from a role in the given project Same as `removeUser` but also takes projectOrProjectGroupId as an additional parameter.
    `void` | `requestRole(String sessionId, String roleId, String projectId)` Requests a role
    `void` | `revokeRolesFromMembers(String sessionId, UserRolesSoapDO[] userRolesSoapDOs, String projectId)` Removes roles from users in the project
    `void` | `setAutomaticallyGrantOnRequest(String sessionId, String roleId, String projectId, boolean autoGrant)` Sets the role's Automatically Grant On Request for the given project.
    `void` | `setRoleData(String sessionId, RoleSoapDO roleData)` Saves a role object.
    `void` | `setRolePaths(String sessionId, String roleId, String repositoryId, com.collabnet.ce.soap60.types.SoapNamedValues rolePaths)` Sets the list of paths for a role.

    - ### Methods inherited from class com.collabnet.ce.soap60.webservices.ClientSoapStub

      `getServiceCall, getSoapServer, getTimeout, setTimeout`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### RbacAppSoapStub

          public RbacAppSoapStub(String soapServerUrl)

  - ### Method Detail

    - #### createRole

          public RoleSoapDO createRole(String sessionId,
                                       String projectOrProjectGroupId,
                                       String title,
                                       String description,
                                       boolean preventInheritance,
                                       boolean requestable,
                                       boolean autoGrant)
                                throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Creates a role in a given project
      Specified by:
        `createRole` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `projectOrProjectGroupId` - The project /project group Id to create the role in
        `title` - The title of the role
        `description` - A description of the role
        `preventInheritance` - If the role's permission is prevented from applying to private subprojects.
        `requestable` - If the role is available upon request:Only applicable for Project Roles Not for Project Groups.
        `autoGrant` - If the role is granted automatically on request:Only applicable for Project Roles Not for Project Groups.
      Returns:
        The Role2SoapDO that was created
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the projectId is invalid or the created roleId is invalid.
        `com.collabnet.ce.soap60.fault.ObjectAlreadyExistsFault` - If the role exists with the specified title in the project
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `RemoteException`

    - #### createSiteWideRole

          public RoleSoapDO createSiteWideRole(String sessionId,
                                               String title,
                                               String description,
                                               boolean preventInheritance)
                                        throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Creates a site-wide role. Users with site-admin permissions or users having rolecreate permissions for creating site-wide role will be able to create site-wide role.
      Specified by:
        `createSiteWideRole` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `title` - The title of the site-wide role
        `description` - A description of the role
        `preventInheritance` - If the role's permission is prevented from applying to private projects.
      Returns:
        The Role2SoapDO that was created
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the created roleId is invalid
        `com.collabnet.ce.soap60.fault.ObjectAlreadyExistsFault` - If the role exists with the specified title in the project
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `RemoteException`

    - #### createGlobalRole

          public RoleSoapDO createGlobalRole(String sessionId,
                                             String title,
                                             String description,
                                             boolean preventInheritance,
                                             boolean requestable)
                                      throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Creates a global role. Only Super-users or users having Role-Create permission can create global role.
      Specified by:
        `createGlobalRole` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `title` - The title of the global role
        `description` - The description of the global role
        `preventInheritance` - If the role's permission is prevented from applying to private projects.
        `requestable` - If the role is available upon request
      Returns:
        The Role2SoapDO that was created
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the created roleId is invalid
        `com.collabnet.ce.soap60.fault.ObjectAlreadyExistsFault` - If the global role exists with the specified title
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `RemoteException`

    - #### setRoleData

          public void setRoleData(String sessionId,
                                  RoleSoapDO roleData)
                           throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Saves a role object. Project Admins in the case of a project-level role and users having Role - Edit permissions through a site-wide role in the case of SiteWide/Global roles are allowed to save.
      Specified by:
        `setRoleData` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `roleData` - the role object to save
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.VersionMismatchFault` - The role version being edited is not the latest one
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId is invalid
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `RemoteException`

    - #### getRoleData

          public RoleSoapDO getRoleData(String sessionId,
                                        String roleId)
                                 throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Get a role data.
      Specified by:
        `getRoleData` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `roleId` - The id of the role to be fetch
      Returns:
        The RoleSoapDO that was fetched
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId is invalid
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - When the roleId is invalid
        `RemoteException`

    - #### deleteRole

          public void deleteRole(String sessionId,
                                 String roleId)
                          throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Deletes a role.
      Specified by:
        `deleteRole` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `roleId` - The id of the role to be deleted
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the projectId is invalid
        `RemoteException`

    - #### addCluster

          public void addCluster(String sessionId,
                                 String roleId,
                                 String operationCluster,
                                 String folderId)
                          throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Adds an operation cluster to a role, expanding the permission set that the role grants access to.
      Specified by:
        `addCluster` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `roleId` - The role id to add the cluster to
        `operationCluster` - The cluster name to add to the role. See OperationClusterConstants.
        `folderId` - the folder id for the specified cluster. Pass in empty string to apply to all folders of the same type in the project. Note that passing in an empty folder id will not replace existing folder specific clusters.
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId is invalid
        `com.collabnet.ce.soap60.fault.ObjectAlreadyExistsFault` - If the cluster already exists in the role
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `RemoteException`

    - #### addIntegratedApplicationPermission

          public void addIntegratedApplicationPermission(String sessionId,
                                                         String roleId,
                                                         String integratedAppName,
                                                         String permission)
                                                  throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Adds an integrated application permission to a role, expanding the permission set that the role grants access to.
      Specified by:
        `addIntegratedApplicationPermission` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `roleId` - The role id to add the integrated application permission to
        `integratedAppName` - The integrated application name (e.g: 'Pebble Blog')
        `permission` - The integrated application permission name to add to the role. (e.g: 'Blog Reader' for Pebble Blog integrated application)
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId is invalid
        `com.collabnet.ce.soap60.fault.ObjectAlreadyExistsFault` - If the cluster already exists in the role
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `RemoteException`

    - #### removeIntegratedApplicationPermission

          public void removeIntegratedApplicationPermission(String sessionId,
                                                            String roleId,
                                                            String integratedAppName,
                                                            String permission)
                                                     throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Removes an integrated application permission from the given role.
      Specified by:
        `removeIntegratedApplicationPermission` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `roleId` - The role id from which the integrated application permission to be removed
        `integratedAppName` - The integrated application name (e.g: 'Pebble Blog')
        `permission` - The integrated application permission to be removed from the role. (e.g: 'Blog Reader' for Pebble Blog integrated application)
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId is invalid
        `com.collabnet.ce.soap60.fault.ObjectAlreadyExistsFault` - If the cluster already exists in the role
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `RemoteException`

    - #### removeCluster

          public void removeCluster(String sessionId,
                                    String roleId,
                                    String operationCluster,
                                    String folderId)
                             throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Removes an operation cluster to a role, removing the permission set.
      Specified by:
        `removeCluster` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `roleId` - The role id to remove the cluster to
        `operationCluster` - The cluster name to add to the role
        `folderId` - the folder id for the specified cluster. Pass in empty string to remove a cluster defined for all folders. Note that passing in an empty folder id will not remove existing folder specific clusters.
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId is invalid
        `RemoteException`

    - #### listClusters

          public RoleClusterSoapList listClusters(String sessionId,
                                                  String roleId)
                                           throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Gets the list of operation cluster assigned to a role.
      Specified by:
        `listClusters` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `roleId` - The ID of the role for which clusters will be listed
      Returns:
        list of clusters for a role
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId is invalid
        `RemoteException`

    - #### listClusterForDefaultAccessPermissions

          public RoleCluster2SoapList listClusterForDefaultAccessPermissions(String sessionId,
                                                                             String projectId)
                                                                      throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Gets the list of operation cluster with default access permission.
      Specified by:
        `listClusterForDefaultAccessPermissions` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `projectId` - The ID of the project for which clusters will be listed
      Returns:
        list of clusters for a project
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId is invalid
        `com.collabnet.ce.soap60.fault.SystemFault`
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault`
        `RemoteException`

    - #### addUser

          public void addUser(String sessionId,
                              String roleId,
                              String username)
                       throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Adds a user to the role, giving them all of the permissions of that role
      Specified by:
        `addUser` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User sessionId
        `roleId` - The role id to add the user to
        `username` - The username of the user to add to the role
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId is invalid
        `com.collabnet.ce.soap60.fault.ObjectAlreadyExistsFault` - If the user already exists in the role
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `RemoteException`

    - #### grantRolesToMembers

          public void grantRolesToMembers(String sessionId,
                                          UserRolesSoapDO[] userRolesSoapDOs,
                                          String projectId)
                                   throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Grants roles to list of users in a given project and user is made as member of the project if not already.
      Specified by:
        `grantRolesToMembers` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User sessionId
        `userRolesSoapDOs` - user to roles data container, simulation of map - key as user and lists of roles as values
        `projectId` - project to which users would be the members with the given roles.
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId is invalid
        `com.collabnet.ce.soap60.fault.ObjectAlreadyExistsFault` - If the user already exists in the role
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `RemoteException`

    - #### removeUser

          public void removeUser(String sessionId,
                                 String roleId,
                                 String username)
                          throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Removes a user from a role The behavior of this API is as follows. 1) Removing users is not supported for global role. When a global role's id is passed to this API it will throw a NoSuchObjectFault.
      Specified by:
        `removeUser` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User sessionId
        `roleId` - The role id to add the user to
        `username` - The username of the user to add to the role
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId is invalid
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `RemoteException`

    - #### revokeRolesFromMembers

          public void revokeRolesFromMembers(String sessionId,
                                             UserRolesSoapDO[] userRolesSoapDOs,
                                             String projectId)
                                      throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Removes roles from users in the project
      Specified by:
        `revokeRolesFromMembers` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User sessionId
        `userRolesSoapDOs` - user to roles data container, simulation of map - key as user and lists of roles to remove as values
        `projectId` - project in which roles would be removed from the users.
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId is invalid
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `RemoteException`

    - #### addUserToProjectRole

          public void addUserToProjectRole(String sessionId,
                                           String roleId,
                                           String username,
                                           String projectOrProjectGroupId)
                                    throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Adds a user to the role in the given project context, giving them all of the permissions of that role in that project

      Same as `addUser` but also takes projectOrProjectGroupId as an additional parameter. If a Project Group's role is being assigned in a normal project (even if it is a member of this Project Group) or in another Project Group a SystemFault will be thrown. Because A Project Group's role can only be assigned within that Project Group and nowhere else.

      Also site-wide role are not supported. For site-wide role use addUser method.

      Specified by:
        `addUserToProjectRole` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User sessionId
        `roleId` - The role id to add the user to
        `username` - The username of the user to add to the role
        `projectOrProjectGroupId` - projectId (or) Project group ID. The project/Project Group in which the role has to be added to the user. The permission check varies accordingly for Project- User with Edit Role permissions. ProjectGroup-ProjectGroup.Admin Permission
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId is invalid
        `com.collabnet.ce.soap60.fault.ObjectAlreadyExistsFault` - If the user already exists in the role
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `RemoteException`
      See Also:
        `IRbacAppSoap.addUser(java.lang.String, java.lang.String, java.lang.String)`

    - #### removeUserFromProjectRole

          public void removeUserFromProjectRole(String sessionId,
                                                String roleId,
                                                String username,
                                                String projectOrProjectGroupId)
                                         throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Removes a user from a role in the given project Same as `removeUser` but also takes projectOrProjectGroupId as an additional parameter.
      Specified by:
        `removeUserFromProjectRole` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User sessionId
        `roleId` - The role id to add the user to
        `username` - The username of the user to add to the role
        `projectOrProjectGroupId` - projectId (or) Project group ID. The project/Project Group in which the role has to be removed from the user. The permission check varies accordingly: for Project - User with Edit Role permissions. for ProjectGroup - ProjectGroup.Admin Permission
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId is invalid
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `RemoteException`
      See Also:
        `IRbacAppSoap.removeUser(java.lang.String, java.lang.String, java.lang.String)`

    - #### addGroup

          public void addGroup(String sessionId,
                               String groupId,
                               String roleId,
                               String projectOrProjectGroupId)
                        throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Adds a user group to a role, within the Project/ProjectGroup scope.

      If a Project Group's role is being assigned in a normal project (even if it is a member of this Project Group) or in another Project Group a SystemFault will be thrown. Because A Project Group's role can only be assigned within that Project Group and nowhere else.

      Specified by:
        `addGroup` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User sessionId.
        `groupId` - the user group to be added.
        `roleId` - The role to which the user group is to be added.
        `projectOrProjectGroupId` - The project/projectgroup id to which the role belongs.
      Throws:
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid.
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user does not have permission to perform the operation.
        `com.collabnet.ce.soap60.fault.SystemFault` - When an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId is invalid.
        `com.collabnet.ce.soap60.fault.ObjectAlreadyExistsFault` - If the user group already exists in the role.
        `RemoteException`

    - #### removeGroup

          public void removeGroup(String sessionId,
                                  String groupId,
                                  String roleId,
                                  String projectOrProjectGroupId)
                           throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Removes the user group for the role, within the Project/ProjectGroup scope
      Specified by:
        `removeGroup` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User sessionId.
        `groupId` - the user group to be added.
        `roleId` - The role to which the user group is to be added.
        `projectOrProjectGroupId` - The project/projectgroup id to which the role belongs.
      Throws:
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid.
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user does not have permission to perform the operation.
        `com.collabnet.ce.soap60.fault.SystemFault` - When an unexpected system level error occurs.
        `RemoteException`

    - #### getRoleList

          public RoleSoapList getRoleList(String sessionId,
                                          String projectOrProjectGroupId)
                                   throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Gets a list of Roles in a project context. This call required project admin permissions.
      Specified by:
        `getRoleList` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `projectOrProjectGroupId` - The Project/Project Group Id to list roles from
      Returns:
        The RoleSoapList describing all roles in the project
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the projectId is invalid
        `com.collabnet.ce.soap60.fault.ObjectAlreadyExistsFault` - If the role exists with the specified title in the project
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `RemoteException`

    - #### getInheritedRoleList

          public RoleSoapList getInheritedRoleList(String sessionId,
                                                   String projectId)
                                            throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Gets a list of roles inherited from any of the parent projects. This call requires project admin permission.
      Specified by:
        `getInheritedRoleList` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `projectId` - The project Id to list the inherited roles from
      Returns:
        The Role2SoapList describing all inherited roles in the project
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the projectId is invalid
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `RemoteException`

    - #### getRoleMemberList

          public UserSoapList getRoleMemberList(String sessionId,
                                                String roleId)
                                         throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Returns a list of users that are assigned to the specified role.

      The behavior of this API is as follows. 1) Retrieving users assigned to a global role is not supported. When a global role's id is passed to this API it will throw a IllegalArgumentFault 2) When invoked on a project role (i.e., a role created in a project) returns all the users assigned to this role in that project and any users assigned to this role in any of the sub projects of the project in which this role is created. 3) When invoked on a site-wide role returns all the users assigned to that site-wide role. 4) When invoked on a role created in a Project Group, returns all the users assigned to that role in the Project Group.

      Specified by:
        `getRoleMemberList` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session id.
        `roleId` - Role id.
      Returns:
        List of users in the specified role.
      Throws:
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - Role id is not specified or invalid.
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - if the session is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - if the user does not have permission to perform the operation
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified role id is invalid
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `RemoteException`

    - #### getProjectRoleMemberList

          public UserSoapList getProjectRoleMemberList(String sessionId,
                                                       String roleId,
                                                       String projectOrProjectGroupId)
                                                throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Returns a list of users that are in a specified role in the given project or project group. 1. Supports depreciated method getRoleMemberListForProject 2. Supports project roles assigned in the project where the role is created. 3. Supports inherited role assignments in any of its subprojects. 4. Assignments to roles created in Project Groups. 5. Global role assignments in projects and project groups.
      Specified by:
        `getProjectRoleMemberList` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session id.
        `roleId` - Role id.
        `projectOrProjectGroupId` - Project or Project Group Id
      Returns:
        List of users in the specified role in the given project or project group.
      Throws:
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - Role id is not specified or invalid.
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - if the session is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - if the user does not have permission to perform the operation
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified role id is invalid
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `RemoteException`

    - #### getUserRoleList

          public RoleSoapList getUserRoleList(String sessionId,
                                              String projectOrProjectGroupId,
                                              String username)
                                       throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Returns a list of roles that a user is a member of in the specified project or project group. In order to view the list of roles another user belongs to, the caller must be an admin of that project or project group.
      Specified by:
        `getUserRoleList` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session id.
        `projectOrProjectGroupId` - Project or Project Group id.
        `username` - Name of the user.
      Returns:
        List of roles that a user is a member of.
      Throws:
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - Username is not specified or invalid.
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - if the session is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - if the user does not have permission to perform the operation
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified project or project group id is invalid
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `RemoteException`

    - #### getUserSiteWideRoleList

          public RoleSoapList getUserSiteWideRoleList(String sessionId,
                                                      String username)
                                               throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Returns a list of roles that a user is a member of site wide role. To view the site wide role members the uses must have admin permissions or role view permissions.
      Specified by:
        `getUserSiteWideRoleList` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session id.
        `username` - Name of the user.
      Returns:
        List of site-wide roles that a user is a member of.
      Throws:
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - Username is not specified or invalid.
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - if the session is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - if the user does not have permission to perform the operation
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified project id is invalid
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `RemoteException`

    - #### getSiteWideRoleList

          public RoleSoapList getSiteWideRoleList(String sessionId)
                                           throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Returns a list of all the site-wide roles available on the site. The user must have site admin permission or site-wide role admin permission to list all the site-wide roles.
      Specified by:
        `getSiteWideRoleList` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session id.
      Returns:
        List of site-wide roles available
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - if the session is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - if the user does not have the permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `RemoteException`

    - #### getGlobalRoleList

          public RoleSoapList getGlobalRoleList(String sessionId)
                                         throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Returns a list of all the global roles available on the site. The user must have site admin permission or site-wide role admin/view permission to list all the global roles.
      Specified by:
        `getGlobalRoleList` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session id.
      Returns:
        List of global roles available
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - if the session is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - if the user does not have the permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `RemoteException`

    - #### getGlobalRolesForAssignment

          public RoleSoapList getGlobalRolesForAssignment(String sessionId,
                                                          String projectOrProjectGroupId)
                                                   throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Returns a list of global roles available in the project or project group for user/user group assignment. The user must be an admin of that project or project group to get the list.
      Specified by:
        `getGlobalRolesForAssignment` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session id.
        `projectOrProjectGroupId` - the project or project group from which to get the global roles list
      Returns:
        List of global roles available
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - if the session is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - if the user does not have the permission to perform the operation
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified project or project group id is invalid
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `RemoteException`

    - #### getGroupRoleList

          public RoleSoapList getGroupRoleList(String sessionId,
                                               String groupId,
                                               String projectIdOrProjectGroupId)
                                        throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Returns a list of roles the user group is associated with in a project or projectGroup.
      Specified by:
        `getGroupRoleList` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session id.
        `groupId` - User Group id.
        `projectIdOrProjectGroupId` - Project id or project group id.
      Returns:
        List of roles the user group is associated with.
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - if the session is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - if the user does not have permission to perform the operation.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified project id or project group id is invalid.
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid.
        `RemoteException`

    - #### getRoleGroupList

          public UserGroupSoapList getRoleGroupList(String sessionId,
                                                    String roleId)
                                             throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Returns a list of user groups that belong to the specified role.
      Specified by:
        `getRoleGroupList` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session id.
        `roleId` - Role id.
      Returns:
        List of user groups associated with a role.
      Throws:
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - roleId is not specified or invalid.
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - if the session is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - if the user does not have permission to perform the operation.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified project id is invalid.
        `RemoteException`

    - #### listGroupRolesByProject

          public RoleGroupSoapList listGroupRolesByProject(String sessionId,
                                                           String projectId)
                                                    throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Returns a list of user groups and the roles it is associated with in a project.
      Specified by:
        `listGroupRolesByProject` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session id.
        `projectId` - Project id.
      Returns:
        list of user groups and the roles it is associated with
      Throws:
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - projectId is not specified or invalid.
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - if the session is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - if the user does not have permission to perform the operation.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified project id is invalid.
        `RemoteException`

    - #### getRoleGroupUsers

          public UserSoapList getRoleGroupUsers(String sessionId,
                                                String projectIdOrProjectGroupId,
                                                String roleId)
                                         throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Returns a list of users who are part of a group and associated with the specified role.
      Specified by:
        `getRoleGroupUsers` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session id.
        `projectIdOrProjectGroupId` - Project or Project Group's id.
        `roleId` - Role id.
      Returns:
        List of users in the specified role.
      Throws:
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - Role id is not specified or invalid.
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - if the session is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - if the user does not have permission to perform the operation
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified role id is invalid
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `RemoteException`

    - #### listRolePaths

          public com.collabnet.ce.soap60.types.SoapNamedValues listRolePaths(String sessionId,
                                                                             String roleId,
                                                                             String repositoryId)
                                                                      throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Gets the list of paths for a role.
      Specified by:
        `listRolePaths` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `roleId` - the key of the role the role paths belongs to
        `repositoryId` - the repository id
      Returns:
        role path in soap named values format
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId is invalid
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `RemoteException`

    - #### setRolePaths

          public void setRolePaths(String sessionId,
                                   String roleId,
                                   String repositoryId,
                                   com.collabnet.ce.soap60.types.SoapNamedValues rolePaths)
                            throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Sets the list of paths for a role.
      Specified by:
        `setRolePaths` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `roleId` - the key of the role the role paths belongs to
        `repositoryId` - the repository id
        `rolePaths` - list of role paths
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId is invalid
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - If one of the parameters is invalid
        `RemoteException`

    - #### getProjectsForAction

          public ProjectSoapList getProjectsForAction(String sessionId,
                                                      String operationString,
                                                      String userName)
                                               throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Gets the list of all projects in which the given user has given permission.
      Specified by:
        `getProjectsForAction` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `operationString` - Operation in format type.category.name, except for integrated application, which is in format PluggableLink.<id of the integrated app>.<permission name>.<permission name>.
        `userName` - the user who would have cluster permission in the returned project list
      Returns:
        List of projects
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - when the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - when the arguments are null or empty.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the userName doesn't exist.
        `RemoteException`

    - #### requestRole

          public void requestRole(String sessionId,
                                  String roleId,
                                  String projectId)
                           throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Requests a role
      Specified by:
        `requestRole` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `roleId` - the role id
        `projectId` - project in which to make the request
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the roleId or projectId is invalid
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - incorrect parameters
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `RemoteException`

    - #### setAutomaticallyGrantOnRequest

          public void setAutomaticallyGrantOnRequest(String sessionId,
                                                     String roleId,
                                                     String projectId,
                                                     boolean autoGrant)
                                              throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Sets the role's Automatically Grant On Request for the given project.
      Specified by:
        `setAutomaticallyGrantOnRequest` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `roleId` - the role id
        `projectId` - the project to which automatically grant property to be set
        `autoGrant` - true to set it available upon request
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the projectId is invalid
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - when the role is not available upon request
        `RemoteException`

    - #### getAutomaticallyGrantOnRequest

          public boolean getAutomaticallyGrantOnRequest(String sessionId,
                                                        String roleId,
                                                        String projectId)
                                                 throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Gets the role's Automatically Grant On Request for the given project.
      Specified by:
        `getAutomaticallyGrantOnRequest` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `roleId` - the role id
        `projectId` - the project to which automatically grant property to be set
      Returns:
        Auto grant flag of role
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the projectId is invalid
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - when there is a request for global role with Projects project id.
        `RemoteException`

    - #### getPendingRequestedRoles

          public RoleRequestSoapList getPendingRequestedRoles(String sessionId,
                                                              String projectId)
                                                       throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Lists the pending requested roles for the given projectId
      Specified by:
        `getPendingRequestedRoles` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `projectId` - project in which the pending requested roles needs to be retrieved
      Returns:
        List of pending requested roles.
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When projectId is invalid
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - incorrect parameters
        `com.collabnet.ce.soap60.fault.SystemFault` - unexpected error occurs
        `RemoteException`

    - #### approveRoleRequest

          public void approveRoleRequest(String sessionId,
                                         String requestId,
                                         String projectId)
                                  throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Approves a role request
      Specified by:
        `approveRoleRequest` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `requestId` - Role request Id
        `projectId` - project in which the role request was raised
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the projectId is invalid
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - incorrect parameters
        `com.collabnet.ce.soap60.fault.SystemFault` - unexpected error occurs
        `RemoteException`

    - #### rejectRoleRequest

          public void rejectRoleRequest(String sessionId,
                                        String requestId,
                                        String projectId)
                                 throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Rejects a role request
      Specified by:
        `rejectRoleRequest` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session Id
        `requestId` - Role request Id
        `projectId` - project in which the role request was raised
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - If the session is invalid
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - If the user doesn't have permission to perform the operation
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the projectId is invalid
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - incorrect parameters
        `com.collabnet.ce.soap60.fault.SystemFault` - unexpected error occurs
        `RemoteException`

    - #### listGroupRolesByProjectGroup

          public RoleGroupSoapList listGroupRolesByProjectGroup(String sessionId,
                                                                String projectGroupId)
                                                         throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Returns a list of user groups and the roles it is associated with in a project group.
      Specified by:
        `listGroupRolesByProjectGroup` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session id.
        `projectGroupId` - Project group id.
      Returns:
        list of user groups and the roles it is associated with
      Throws:
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - projectGroupId is not specified or invalid.
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - if the session is invalid.
        `com.collabnet.ce.soap60.fault.PermissionDeniedFault` - if the user does not have permission to perform the operation.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - when the specified project group id is invalid.
        `RemoteException`

    - #### getProjectsByIntegratedAppPermission

          public String[] getProjectsByIntegratedAppPermission(String sessionId,
                                                               String perm,
                                                               String integratedAppName)
                                                        throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Returns the list of projects by integratedApp permission.
      Specified by:
        `getProjectsByIntegratedAppPermission` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session key.
        `perm` - permission criteria
        `integratedAppName` - the IntegratedApp plugName.
      Returns:
        string array of id of projects in which the current user has given permission to given integrated app.
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system level error occurs.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault` - When the plugName is invalid
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - When the userId is invalid
        `RemoteException`

    - #### getIntegratedAppPermissionsForProject

          public String[] getIntegratedAppPermissionsForProject(String sessionId,
                                                                String projectId,
                                                                String linkId)
                                                         throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Returns integratedApp permissions for the user associated with a project
      Specified by:
        `getIntegratedAppPermissionsForProject` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session key.
        `projectId` - the projectId
        `linkId` - the linkId between integrated app and project
      Returns:
        String array of permissions for given integrated application
      Throws:
        `com.collabnet.ce.soap60.fault.InvalidSessionFault` - when the specified session id is invalid.
        `com.collabnet.ce.soap60.fault.NoSuchObjectFault`
        `RemoteException`

    - #### getIntegratedAppPermissions

          public com.collabnet.ce.soap60.webservices.rbac.IntegratedAppProjectPermissionSoapList getIntegratedAppPermissions(String sessionId,
                                                                                                                             String[] projectIds,
                                                                                                                             String baseUrl)
                                                                                                                      throws RemoteException

      Description copied from interface: `IRbacAppSoap`
      Returns list of integratedApp permissions for the user associated with specified projects
      Specified by:
        `getIntegratedAppPermissions` in interface `IRbacAppSoap`
      Parameters:
        `sessionId` - User session key.
        `projectIds` - the projectIds
        `baseUrl` - the base url of the integrated application
      Returns:
        List of integrated application permission on the specified projects for current user
      Throws:
        `com.collabnet.ce.soap60.fault.IllegalArgumentFault` - when baseUrl is 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 baseUrl is invalid
        `com.collabnet.ce.soap60.fault.SystemFault` - when an unexpected system error occurs
        `RemoteException`

Copyright © 2020 CollabNet. All rights reserved.