Package com.collabnet.ce.soap60.webservices.categorization

# Interface ICategorizationAppSoap

All Known Implementing Classes:
  `CategorizationAppSoap`, `CategorizationAppSoapMockStub`, `CategorizationAppSoapStub`

public interface ICategorizationAppSoap

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `addProjectToCategory(String sessionId, String projectId, String categoryId)`
  Adds a given project to a category.
  `CategorySoapDO`
  `createCategory(String sessionId, String parentId, String title, String description)`
  Creates a category
  `void`
  `deleteCategory(String sessionId, String categoryId)`
  Deletes an category.
  `CategorySoapList`
  `getAllCategories(String sessionId)`
  Returns a list of all categories.
  `CategorySoapDO`
  `getCategoryData(String sessionId, String categoryId)`
  Returns a data object for a given category
  `ProjectSoapList`
  `getCategoryProjects(String sessionId, String categoryId, boolean includeSubcategories)`
  Gets list of projects in the specified category and, if requested, subcategories
  `CategorySoapList`
  `getProjectCategories(String sessionId, String projectId)`
  Returns a list of categories the project belongs to
  `CategorySoapDO`
  `getRootCategoryData(String sessionId)`
  Returns a data object for the root category
  `CategorySoapList`
  `getSubcategories(String sessionId, String categoryId, boolean recursive)`
  Returns a list of subcategories to the specified category.
  `ProjectSoapList`
  `getUncategorizedProjects(String sessionId)`
  Gets list of projects that have not been categorized
  `boolean`
  `isCategorizationEnabled(String sessionId)`
  Checks if categorization support is enabled site-wide.
  `void`
  `moveCategory(String sessionId, String categoryId, String dstCategoryId)`
  Moves a Category including all subcategories under different parent.
  `void`
  `removeProjectFromCategory(String sessionId, String projectId, String categoryId)`
  Removes a given project from a category.
  `void`
  `setCategoryData(String sessionId, CategorySoapDO categoryData)`
  Sets data on a specific category

- ## Method Details

  - ### isCategorizationEnabled

    boolean isCategorizationEnabled(String sessionId) throws RemoteException
    Checks if categorization support is enabled site-wide.
    Parameters:
      `sessionId` - User session id.
    Returns:
      true/false
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `SystemFault` - when an unexpected system error occurs.
      `RemoteException`
    Since:
      4.3-SP1

  - ### createCategory

    CategorySoapDO createCategory(String sessionId, String parentId, String title, String description) throws RemoteException
    Creates a category
    Parameters:
      `sessionId` - User session id.
      `parentId` - ID of the parent category
      `title` - Title of the category
      `description` - Description
    Returns:
      A category data object representing the newly created category
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `PermissionDeniedFault` - when the user has insufficient privileges.
      `SystemFault` - when an unexpected system error occurs.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `ObjectAlreadyExistsFault` - if an existing category already exists
      `RemoteException`
    Since:
      4.3-SP1

  - ### getCategoryData

    CategorySoapDO getCategoryData(String sessionId, String categoryId) throws RemoteException
    Returns a data object for a given category
    Parameters:
      `sessionId` - User session id.
      `categoryId` - Category id.
    Returns:
      Detailed data on the category.
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `SystemFault` - when an unexpected system error occurs.
      `RemoteException`
    Since:
      "4.3-SP1"

  - ### getRootCategoryData

    CategorySoapDO getRootCategoryData(String sessionId) throws RemoteException
    Returns a data object for the root category
    Parameters:
      `sessionId` - User session id.
    Returns:
      Detailed data on the root category.
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `SystemFault` - when an unexpected system error occurs.
      `RemoteException`
    Since:
      "4.3-SP1"

  - ### setCategoryData

    void setCategoryData(String sessionId, CategorySoapDO categoryData) throws RemoteException
    Sets data on a specific category
    Parameters:
      `sessionId` - User session id.
      `categoryData` - Detailed data on the category to set.
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `PermissionDeniedFault` - when the user has insufficient privileges.
      `SystemFault` - when an unexpected system error occurs.
      `IllegalArgumentFault` - when invalid data is specified.
      `VersionMismatchFault` - when the object version mismatches the application server.
      `RemoteException`
    Since:
      "4.3-SP1"

  - ### deleteCategory

    void deleteCategory(String sessionId, String categoryId) throws RemoteException
    Deletes an category.
    Parameters:
      `sessionId` - User session id.
      `categoryId` - Category id.
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `PermissionDeniedFault` - when the user has insufficient privileges.
      `SystemFault` - when an unexpected system level error occurs.
      `RemoteException`
    Since:
      "4.3-SP1"

  - ### getAllCategories

    CategorySoapList getAllCategories(String sessionId) throws RemoteException
    Returns a list of all categories.
    Parameters:
      `sessionId` - User session id.
    Returns:
      List of categories within the project.
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `SystemFault` - when an unexpected system error occurs.
      `RemoteException`
    Since:
      "4.3-SP1"

  - ### getSubcategories

    CategorySoapList getSubcategories(String sessionId, String categoryId, boolean recursive) throws RemoteException
    Returns a list of subcategories to the specified category.
    Parameters:
      `sessionId` - User session id.
      `categoryId` - category whose immediate subcategories should be returned
      `recursive` - set to true to get categories recursively
    Returns:
      List of categories in the root category.
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `SystemFault` - when an unexpected system error occurs.
      `RemoteException`
    Since:
      "4.3-SP1"

  - ### moveCategory

    void moveCategory(String sessionId, String categoryId, String dstCategoryId) throws RemoteException
    Moves a Category including all subcategories under different parent. Fails completely if not everything can be moved.
    Parameters:
      `sessionId` - User session id.
      `categoryId` - Category to move
      `dstCategoryId` - Destination parent category
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `PermissionDeniedFault` - when the user has insufficient privileges.
      `SystemFault` - when an unexpected system error occurs.
      `RemoteException`
    Since:
      "4.3-SP1"

  - ### addProjectToCategory

    void addProjectToCategory(String sessionId, String projectId, String categoryId) throws RemoteException
    Adds a given project to a category.
    Parameters:
      `sessionId` - User session id.
      `projectId` - ID of the project to add to a category
      `categoryId` - ID of the category to add the project to
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `ObjectAlreadyExistsFault` - when the specified object id is invalid.
      `PermissionDeniedFault` - when the user has insufficient privileges.
      `SystemFault` - when an unexpected system error occurs.
      `RemoteException`
    Since:
      "4.3-SP1"

  - ### removeProjectFromCategory

    void removeProjectFromCategory(String sessionId, String projectId, String categoryId) throws RemoteException
    Removes a given project from a category.
    Parameters:
      `sessionId` - User session id.
      `projectId` - ID of the project to remove from a category
      `categoryId` - ID of the category to remove the project from
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `PermissionDeniedFault` - when the user has insufficient privileges.
      `SystemFault` - when an unexpected system error occurs.
      `RemoteException`
    Since:
      "4.3-SP1"

  - ### getProjectCategories

    CategorySoapList getProjectCategories(String sessionId, String projectId) throws RemoteException
    Returns a list of categories the project belongs to
    Parameters:
      `sessionId` - User session id.
      `projectId` - ID of the project
    Returns:
      List of categories the project is in
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `PermissionDeniedFault` - when the user has insufficient privileges.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `SystemFault` - when an unexpected system error occurs.
      `RemoteException`
    Since:
      "4.3-SP1"

  - ### getCategoryProjects

    ProjectSoapList getCategoryProjects(String sessionId, String categoryId, boolean includeSubcategories) throws RemoteException
    Gets list of projects in the specified category and, if requested, subcategories
    Parameters:
      `sessionId` - User session id.
      `categoryId` - category id
      `includeSubcategories` - boolean, if true, includes projects in subcategories
    Returns:
      List of projects that are in the category
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `NoSuchObjectFault` - when the specified object id is invalid.
      `SystemFault` - when an unexpected system error occurs.
      `RemoteException`
    Since:
      "4.3-SP1"

  - ### getUncategorizedProjects

    ProjectSoapList getUncategorizedProjects(String sessionId) throws RemoteException
    Gets list of projects that have not been categorized
    Parameters:
      `sessionId` - User session id.
    Returns:
      List of projects that are in the category
    Throws:
      `InvalidSessionFault` - when the specified session id is invalid.
      `SystemFault` - when an unexpected system error occurs.
      `RemoteException`
    Since:
      "4.3-SP1"