Package com.sas.lsaf.content.utilization

## Interface ResourceUtilizationService

-     public interface ResourceUtilizationService

  The service that provides resource utilization information such as total repository size and total user workspace size. You can also get resource information for child containers at a specific path. Note: Only the current user can access resource utilization for child items within their workspace.
  Since:
    2.5

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `java.util.List<ResourceUtilizationContainerInfo>` | `getAdminSharedWorkspaceContainerChildrenAndSizes​(java.lang.String path)` | Gets resource utilization information for child folders with calculated sizes for all children of the specified path in a shared workspace.
    `java.util.List<ResourceUtilizationSummaryTransientWorkspaceInfo>` | `getAllTransientWorkspaceUtilization()` | Gets summary utilization information for each user's existing transient workspaces with existing sessions, if any exist.
    `java.util.List<ResourceUtilizationWorkspaceInfo>` | `getAllUserWorkspaceUtilization()` | Gets utilization information for each user's workspace.
    `long` | `getCurrentUserRepositorySize()` | Gets the current user's repository user area size (in bytes).
    `long` | `getCurrentUserSharedWorkspaceSize()` | Gets the current user's total shared workspace size (in bytes).
    `long` | `getCurrentUserTransientWorkspaceSize()` | Gets the current user's transient workspace size (in bytes).
    `java.util.List<ResourceUtilizationTransientWorkspaceInfo>` | `getCurrentUserTransientWorkspaceUtilization()` | Gets utilization information for the current user's transient workspaces with existing sessions, if any exist.
    `long` | `getCurrentUserWorkspaceSize()` | Return the current user's total workspace size (in bytes).
    `java.util.List<ResourceUtilizationContainerInfo>` | `getRepositoryContainerChildrenAndSizes​(java.lang.String path)` | Gets resource utilization information for child containers with calculated sizes.
    `long` | `getTotalRepositorySize()` | Gets the total size (in bytes) of the repository.
    `long` | `getTotalSharedWorkspaceSize()` | Gets the total size (in bytes) of all shared workspaces.
    `long` | `getTotalTransientWorkspaceSize()` | Gets the total size (in bytes) of all transient workspaces with an existing session, if any exist.
    `long` | `getTotalUserWorkspaceSize()` | Gets the total size (in bytes) of all user workspaces.
    `java.util.List<ResourceUtilizationContainerInfo>` | `getUserSharedWorkspaceContainerChildrenAndSizes​(java.lang.String path)` | Gets resource utilization information for child folders with calculated sizes for children of the specified path in a shared workspace that the current user has access to and for which a link for the shared workspace exists for the current user.
    `java.util.List<ResourceUtilizationContainerInfo>` | `getWorkspaceContainerChildrenAndSizes​(java.lang.String path)` | Gets resource utilization information for child folders with calculated sizes for the current user's workspace.

- - ### Method Detail

    - #### getAllTransientWorkspaceUtilization

          java.util.List<ResourceUtilizationSummaryTransientWorkspaceInfo> getAllTransientWorkspaceUtilization()

      Gets summary utilization information for each user's existing transient workspaces with existing sessions, if any exist.
      Returns:
        summary utilization information for each user's existing transient workspaces with existing sessions, if any exist.

    - #### getCurrentUserTransientWorkspaceUtilization

          java.util.List<ResourceUtilizationTransientWorkspaceInfo> getCurrentUserTransientWorkspaceUtilization()

      Gets utilization information for the current user's transient workspaces with existing sessions, if any exist.
      Returns:
        utilization information for the current user's transient workspaces with existing sessions, if any exist.

    - #### getAllUserWorkspaceUtilization

          java.util.List<ResourceUtilizationWorkspaceInfo> getAllUserWorkspaceUtilization()

      Gets utilization information for each user's workspace.
      Returns:
        utilization information for each user's workspace.

    - #### getTotalRepositorySize

          long getTotalRepositorySize()

      Gets the total size (in bytes) of the repository. Size can include the contents of the recycle bin.
      Returns:
        The total size (in bytes) of the repository.

    - #### getTotalUserWorkspaceSize

          long getTotalUserWorkspaceSize()

      Gets the total size (in bytes) of all user workspaces.
      Returns:
        The total size (in bytes) of all user workspaces.

    - #### getTotalTransientWorkspaceSize

          long getTotalTransientWorkspaceSize()

      Gets the total size (in bytes) of all transient workspaces with an existing session, if any exist.
      Returns:
        The total size (in bytes) of all transient workspaces with an existing session, if any exist.

    - #### getCurrentUserWorkspaceSize

          long getCurrentUserWorkspaceSize()

      Return the current user's total workspace size (in bytes).
      Returns:
        the current user's total workspace size (in bytes).

    - #### getCurrentUserRepositorySize

          long getCurrentUserRepositorySize()

      Gets the current user's repository user area size (in bytes).
      Returns:
        the current user's repository user area size (in bytes).

    - #### getCurrentUserTransientWorkspaceSize

          long getCurrentUserTransientWorkspaceSize()

      Gets the current user's transient workspace size (in bytes).
      Returns:
        the current user's transient workspace size (in bytes).

    - #### getRepositoryContainerChildrenAndSizes

          java.util.List<ResourceUtilizationContainerInfo> getRepositoryContainerChildrenAndSizes​(java.lang.String path)
                                                                                           throws ResourceUtilizationPathNotFoundException

      Gets resource utilization information for child containers with calculated sizes. This ignores system (hidden) folders including recycle bin.
      Parameters:
        `path` - The parent path.
      Returns:
        Resource utilization information for the child containers of the parent path.
      Throws:
        `ResourceUtilizationPathNotFoundException` - Thrown if the parent path does not exist.

    - #### getWorkspaceContainerChildrenAndSizes

          java.util.List<ResourceUtilizationContainerInfo> getWorkspaceContainerChildrenAndSizes​(java.lang.String path)
                                                                                          throws ResourceUtilizationPathNotFoundException

      Gets resource utilization information for child folders with calculated sizes for the current user's workspace. This will aggregate all system (hidden) folders into a single system folder which represents all hidden content in a single folder representation.
      Parameters:
        `path` - The parent path.
      Returns:
        Resource utilization information for child folders of the parent path.
      Throws:
        `ResourceUtilizationPathNotFoundException` - Thrown if the parent path does not exist.

    - #### getUserSharedWorkspaceContainerChildrenAndSizes

          java.util.List<ResourceUtilizationContainerInfo> getUserSharedWorkspaceContainerChildrenAndSizes​(java.lang.String path)
                                                                                                    throws ResourceUtilizationPathNotFoundException

      Gets resource utilization information for child folders with calculated sizes for children of the specified path in a shared workspace that the current user has access to and for which a link for the shared workspace exists for the current user. When the provided path is not to a shared workspace or a path within a shared workspace, all of the child containers which are or contain a shared workspace are returned. The container size is the sum of the shared workspace sizes. If the specified path contains no shared workspaces no children are returned. If the specified path is a shared workspace or within a shared workspace, then all of the child containers are returned with their actual sizes.
      Parameters:
        `path` - The parent path.
      Returns:
        The resource utilization information for child shared workspace folders of the parent path that the current user has access to and for which a link has been created for the current user.
      Throws:
        `ResourceUtilizationPathNotFoundException` - Thrown if the parent path does not exist.

    - #### getAdminSharedWorkspaceContainerChildrenAndSizes

          java.util.List<ResourceUtilizationContainerInfo> getAdminSharedWorkspaceContainerChildrenAndSizes​(java.lang.String path)
                                                                                                     throws ResourceUtilizationPathNotFoundException

      Gets resource utilization information for child folders with calculated sizes for all children of the specified path in a shared workspace. When the provided path is not to a shared workspace or a path within a shared workspace, all of the child containers which are or contain a shared workspace are returned. The container size is the sum of the shared workspace sizes. If the specified path contains no shared workspaces no children are returned. If the specified path is a shared workspace or within a shared workspace, then all of the child containers are returned with their actual sizes.
      Parameters:
        `path` - The parent path.
      Returns:
        The resource utilization information for child shared workspace folders of the parent path.
      Throws:
        `ResourceUtilizationPathNotFoundException` - Thrown if the parent path does not exist.

    - #### getCurrentUserSharedWorkspaceSize

          long getCurrentUserSharedWorkspaceSize()

      Gets the current user's total shared workspace size (in bytes).
      Returns:
        the current user's total shared workspace size (in bytes).

    - #### getTotalSharedWorkspaceSize

          long getTotalSharedWorkspaceSize()

      Gets the total size (in bytes) of all shared workspaces.
      Returns:
        The total size (in bytes) of all shared workspaces.