Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## jet.server.api
Interface ResourceManager

    public interface ResourceManager

This interface defines methods to explore the resources in the report server.

Method Summary
`java.lang.String` | `addFolder(java.lang.String userID, java.lang.String parentPath, java.util.Hashtable htFolder)` Deprecated. since version 6.1, replaced by createFolder(...) and addResourcesToFolder(...). the param "includesSubDir" of the method addResourcesToFolder(...) should be true in this case.
`VersionRecord` | `addResource(java.lang.String userID, java.lang.String folderPath, boolean isAutoConvert, java.util.Hashtable htResource, java.util.Hashtable[] permissions)` Add a resource into specific folder
`VersionRecord` | `addResource(java.lang.String userID, java.lang.String folderPath, java.util.Hashtable htResource)` Deprecated. since version 6.1, replaced by addResource(String userID, String folderPath, Hashtable htResource, Hashtable[] permissions)
`VersionRecord` | `addResource(java.lang.String userID, java.lang.String folderPath, java.util.Hashtable htResource, java.util.Hashtable[] permissions)` Add a resource into specific folder
`void` | `addResourcesToFolder(java.lang.String userID, java.lang.String folderPath, java.lang.String fromRealDir, boolean includesSubDir, boolean isAutoConvert, java.util.Hashtable htResource, java.util.Hashtable[] permissions)` Add files and sub-folders into specific folder
`void` | `addResourcesToFolder(java.lang.String userID, java.lang.String folderPath, java.lang.String fromRealDir, boolean includesSubDir, java.util.Hashtable htResource, java.util.Hashtable[] permissions)` Add files and sub-folders into specific folder
`VersionRecord` | `addResultInReport(java.lang.String userID, java.lang.String reportPath, java.util.Hashtable htResult)` Add a result into specific report
`boolean` | `checkPermission(java.lang.String userID, java.lang.String resourcePath, int versionNumber, java.security.acl.Permission permission)` Check specific user has or does not have a permission on specific version number of a resource path.
`boolean` | `checkPermission(java.lang.String userID, java.lang.String resourcePath, java.security.acl.Permission permission)` Check specific user has or does not have a permission on specific resource path.
`java.lang.String` | `createFolder(java.lang.String userID, java.lang.String parentPath, java.lang.String folderName, java.util.Hashtable htFolder, java.util.Hashtable[] permissions)` Add a sub-folder into specific folder
`java.util.Vector` | `getAllRoles(java.lang.String submitter)` Get all roles
`java.util.Vector` | `getAllUsers(java.lang.String submitter)` Get all users
`java.util.Vector` | `getCatalogsInPath(java.lang.String userID, java.lang.String path)` Get catalogs in a resource path.
`CatalogVersionRecord` | `getCatalogVersion(java.lang.String userID, java.lang.String catName, int versionNumber)` Get a catalog version by catalog name and version number
`java.util.Vector` | `getCatalogVersions(java.lang.String userID, java.lang.String catName)` Get versions of specific catalog.
`java.util.Vector` | `getEnabledCustomFieldNames()` Get all names of enabled custom fields
`java.lang.String[]` | `getExtensions(java.lang.String mimieType)` Get file extensions of the MIME type.
`java.util.Vector` | `getFileSysDirsInPath(java.lang.String userID, java.lang.String path)` Deprecated. As of version 6, it has replaced by getFoldersInPath().
`java.util.Vector` | `getFileSysFilesInPath(java.lang.String userID, java.lang.String path)` Deprecated. As of version 6, it was obsolete.
`java.util.Vector` | `getFoldersInPath(java.lang.String userID, java.lang.String path)` Get folders in a resource path.
`java.lang.String` | `getHistDir()` Get the directory which result versions are saved to.
`java.lang.String` | `getHistFile(java.lang.String file)`
`java.util.Vector` | `getImagesByCatalog(java.lang.String userID, java.lang.String path)` Get image files in the resource path.
`java.lang.String` | `getInheritedLinkedCatalog(java.lang.String userID, java.lang.String path)` Get inherited linked catalog
`java.util.Hashtable[]` | `getInheritedPermissions(java.lang.String userID, java.lang.String path, int versionNumber)` Get inherited permissions of users that attached to specific path
`int` | `getLatestVersionNumber(java.lang.String resourcePath)` Get the latest version number of specific resource.
`int` | `getLatestVersionNumber(java.lang.String resourcePath, java.lang.String userID)` Get the latest version number of specific resource.
`java.lang.String` | `getMIMEType(java.lang.String extName)` Get the MIME type of a file extension.
`PathInfo` | `getPathInfo(java.lang.String userID, java.lang.String path)` Get PathInfo.
`java.util.Hashtable[]` | `getPermissions(java.lang.String userID, java.lang.String path, int versionNumber)` Get defined permissions of users that attached to specific path
`java.lang.String` | `getRealm()` Get the active realm.
`java.lang.String` | `getRealmDir()` Get the directory of the active realm.
`java.lang.String` | `getRealPathOfNode(java.lang.String userID, java.lang.String path)` Get real path property of a node, which is specifid by path
`java.util.Vector` | `getReferGroups(java.lang.String userID)` Get groups which specific user referred, these groups contain specific user
`java.util.Vector` | `getReferRoles(java.lang.String userID)` Get roles which specific user referred,
`java.util.Vector` | `getReferUsers(java.lang.String userID)` Get users which specific user referred, these users have same role except administrator and everyone with specific user
`java.util.Vector` | `getReports(java.lang.String userID, java.lang.String catalog)` Deprecated. As of version 6, it has replaced by getReportsInPath().
`java.util.Vector` | `getReportsInPath(java.lang.String userID, java.lang.String path)` Get reports in a resource path.
`ReportVersionRecord` | `getReportVersion(java.lang.String userID, java.lang.String rptName, int versionNumber)` Get a version of specific report by version number.
`java.util.Vector` | `getReportVersions(java.lang.String userID, java.lang.String rptName)` Get versions of specific report.
`ResultVersionRecord` | `getResultDocVersion(java.lang.String userID, java.lang.String resultDocName, int versionNumber)` Get version of specific result doc by version number.
`java.util.Vector` | `getResultDocVersions(java.lang.String userID, java.lang.String resultDocName)` Get versions of specific result doc.
`int` | `getResultMaxVersionAmount(java.lang.String userID, java.lang.String reportResource)` getet max version limited amount for specific report's result.
`java.util.Vector` | `getResultsInPath(java.lang.String userID, java.lang.String path)` Get results in a resource path.
`ResultVersionRecord` | `getResultVersion(java.lang.String userID, java.lang.String rptName, int versionNumber)` Get a result version attach to specific report by version number.
`ResultVersionRecord` | `getResultVersionByNodeID(java.lang.String recordID)` Get a result version by node id
`java.util.Vector` | `getResultVersions(java.lang.String userID, java.lang.String rptName)` Get result versions attach to specific report.
`java.util.Vector` | `getRolesByUser(java.lang.String submitter, java.lang.String userID)` Get roles which specific user has
`java.lang.String` | `getRoot()` Get the resource root directory of the report server.
`java.lang.String` | `getSchedulePath()`
`java.util.Vector` | `getSubnodes(java.lang.String userID, java.lang.String path)` Get the sub-nodes of a resource node in the resource tree.
`java.util.Vector` | `getSubpaths(java.lang.String userID, java.lang.String path)` Deprecated. As of version 6, it has replaced by getFoldersInPath().
`java.util.Vector` | `getSubpathsAndCatalogs(java.lang.String userID, java.lang.String path)` Get sub-paths of a resource path and catalogs.
`java.lang.String` | `getTempDir()` Get the temporary directory of the server.
`java.util.Vector` | `getUsersByRole(java.lang.String submitter, java.lang.String roleID)` Get users who has specific role
`boolean` | `isAdminUser(java.lang.String userID)` Check if a user is an administrator
`boolean` | `isCatalogLinked(java.lang.String userID, java.lang.String path)` Check whether the catalog is linked
`boolean` | `isNodeExist(java.lang.String path, java.lang.String userName)` Checks whether or not the specified node does exist.
`void` | `loadUserResAliasToMem(java.lang.String userID)` load resource alias of user from db and save them into memory
`java.lang.String` | `refreshFolders(java.lang.String userID)` Refresh the folders represent in UI for specific user.
`void` | `removeNode(java.lang.String userID, java.lang.String path)` Remove specific node which was indicated by path.
`void` | `removeVersion(java.lang.String userID, java.lang.String versionID)` Remove specific version.
`void` | `rmUserResAliasFromMem(java.lang.String userID)` remove resource alias of user from memory
`void` | `setNodeProperties(java.lang.String userID, java.lang.String path, java.util.Hashtable htProps, java.util.Hashtable[] permissions)` Set properties and permissions of users for specific path
`void` | `setNodeProperties(java.lang.String userID, java.lang.String path, int versionNumber, java.util.Hashtable htProps, java.util.Hashtable[] permissions)` Set properties and permissions of users for specific version of path
`void` | `setPermissions(java.lang.String userID, java.lang.String path, int versionNumber, java.util.Hashtable[] permissions)` Set permissions of users for specific path
`void` | `setResultMaxVersionAmount(java.lang.String userID, java.lang.String reportResource, int maxVersionAmount)` Set max version limited amount for specific report's result.
`void` | `setResultVersionProperties(java.lang.String userID, java.lang.String report, int versionNumber, java.util.Hashtable htProps)` Set properties of users for specific result version of report

Method Detail

### getMIMEType

    java.lang.String getMIMEType(java.lang.String extName)

  Get the MIME type of a file extension.

  Parameters:
    `extName` - the file extension.
  Returns:
    the MIME type of a file extension.

### getExtensions

    java.lang.String[] getExtensions(java.lang.String mimieType)

  Get file extensions of the MIME type.

  Parameters:
    `mimieType` - the MIME type.
  Returns:
    file extensions of the MIME type.

### getRealm

    java.lang.String getRealm()

  Get the active realm.

  Returns:
    the active realm.

### getRealmDir

    java.lang.String getRealmDir()

  Get the directory of the active realm.

  Returns:
    the directory of the active realm.

### getTempDir

    java.lang.String getTempDir()

  Get the temporary directory of the server.

  Returns:
    the temporary directory of the server.

### getHistDir

    java.lang.String getHistDir()

  Get the directory which result versions are saved to.

  Returns:
    the directory which result versions are saved to.

### getRoot

    java.lang.String getRoot()

  Get the resource root directory of the report server.

  Returns:
    the resource root directory of the report server.

### getPathInfo

    PathInfo getPathInfo(java.lang.String userID,
                         java.lang.String path)
                         throws RptServerException

  Get PathInfo.

  Parameters:
    `userID` - the user ID.
    `path` - the resource path. For example: /SunVMDemo.
  Returns:
    the PathInfo.
  Throws:
    `RptServerException` - if a RptServerException occurs.
  See Also:
    `PathInfo`

### getSubpaths

    java.util.Vector getSubpaths(java.lang.String userID,
                                 java.lang.String path)
                                 throws RptServerException

  Deprecated. As of version 6, it has replaced by getFoldersInPath().

  Get sub-paths of a resource path. The sub-paths mean non-leaf resource sub-nodes(except catalogs) and sub-directories.

  Parameters:
    `userID` - the user ID.
    `path` - the resource path. For example: /SunVMDemo.
  Returns:
    sub-paths of a resource path. The Vector contains PathInfo objects.
  Throws:
    `RptServerException` - if a RptServerException occurs.
  See Also:
    `PathInfo`

### getSubpathsAndCatalogs

    java.util.Vector getSubpathsAndCatalogs(java.lang.String userID,
                                            java.lang.String path)
                                            throws RptServerException

  Get sub-paths of a resource path and catalogs.

  Parameters:
    `userID` - the user ID.
    `path` - the resource path. For example: /SunVMDemo.
  Returns:
    sub-paths of a resource path and catalogs. The Vector contains PathInfo objects.
  Throws:
    `RptServerException` - if a RptServerException occurs.
  See Also:
    `PathInfo`

### getSubnodes

    java.util.Vector getSubnodes(java.lang.String userID,
                                 java.lang.String path)
                                 throws RptServerException

  Get the sub-nodes of a resource node in the resource tree.

  Parameters:
    `userID` - the user ID.
    `path` - the resource node. For example: /SunVMDemo.
  Returns:
    the sub-nodes of a resource node in the resource tree. The Vector contains PathInfo objects.
  Throws:
    `RptServerException` - if a RptServerException occurs.
  See Also:
    `PathInfo`

### getCatalogsInPath

    java.util.Vector getCatalogsInPath(java.lang.String userID,
                                       java.lang.String path)
                                       throws RptServerException

  Get catalogs in a resource path.

  Parameters:
    `userID` - the user ID.
    `path` - the resource path. For example: /SunVMDemo.
  Returns:
    catalogs in a resource path. The Vector contains PathInfo objects.
  Throws:
    `RptServerException` - if a RptServerException occurs.
  See Also:
    `PathInfo`

### getFileSysDirsInPath

    java.util.Vector getFileSysDirsInPath(java.lang.String userID,
                                          java.lang.String path)
                                          throws RptServerException

  Deprecated. As of version 6, it has replaced by getFoldersInPath().

  Get sub-directories in a resource path.

  Parameters:
    `userID` - the user ID.
    `path` - the resource path. For example: /SunVMDemo.
  Returns:
    sub-directories in a resource path. The Vector contains PathInfo objects.
  Throws:
    `RptServerException` - if a RptServerException occurs.
  See Also:
    `PathInfo`

### getFileSysFilesInPath

    java.util.Vector getFileSysFilesInPath(java.lang.String userID,
                                           java.lang.String path)
                                           throws RptServerException

  Deprecated. As of version 6, it was obsolete.

  Get files in a resource path.

  Parameters:
    `userID` - the user ID.
    `path` - the resource path. For example: /SunVMDemo.
  Returns:
    files in a resource path. The Vector contains PathInfo objects.
  Throws:
    `RptServerException` - if a RptServerException occurs.
  See Also:
    `PathInfo`

### getReports

    java.util.Vector getReports(java.lang.String userID,
                                java.lang.String catalog)
                                throws RptServerException

  Deprecated. As of version 6, it has replaced by getReportsInPath().

  Get reports of a catalog.

  Parameters:
    `userID` - the user ID.
    `catalog` - the catalog. For example: /SunVMDemo/SunVMDemo.cat.
  Returns:
    reports of a catalog. The Vector contains PathInfo objects.
  Throws:
    `RptServerException` - if a RptServerException occurs.
  See Also:
    `PathInfo`

### getSchedulePath

    java.lang.String getSchedulePath()

### getHistFile

    java.lang.String getHistFile(java.lang.String file)

### getReportsInPath

    java.util.Vector getReportsInPath(java.lang.String userID,
                                      java.lang.String path)
                                      throws NoPrivilegeException,
                                             UnknownResource

  Get reports in a resource path.

  Parameters:
    `userID` - the user ID.
    `path` - the resource path. For example: /SunVMDemo.
  Returns:
    reports in a resource path. The Vector contains PathInfo objects.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path
  Since:
    version 6
  See Also:
    `PathInfo`

### getImagesByCatalog

    java.util.Vector getImagesByCatalog(java.lang.String userID,
                                        java.lang.String path)
                                        throws NoPrivilegeException,
                                               UnknownResource

  Get image files in the resource path.

  Parameters:
    `userID` - the user ID.
    `catalog` - the full catalog path. For example: /SunVMDemo/SunVMDemo.cat.
  Returns:
    image files in the resource path. The Vector contains PathInfo objects.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path
  Since:
    version 8.2
  See Also:
    `PathInfo`

### getResultsInPath

    java.util.Vector getResultsInPath(java.lang.String userID,
                                      java.lang.String path)
                                      throws NoPrivilegeException,
                                             UnknownResource

  Get results in a resource path.

  Parameters:
    `userID` - the user ID.
    `path` - the resource path. For example: /SunVMDemo.
  Returns:
    results in a resource path. The Vector contains PathInfo objects.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path
  Since:
    version 6
  See Also:
    `PathInfo`

### getFoldersInPath

    java.util.Vector getFoldersInPath(java.lang.String userID,
                                      java.lang.String path)
                                      throws NoPrivilegeException,
                                             UnknownResource

  Get folders in a resource path.

  Parameters:
    `userID` - the user ID.
    `path` - the resource path. For example: /SunVMDemo.
  Returns:
    folders in a resource path. The Vector contains PathInfo objects.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path
  Since:
    version 6
  See Also:
    `PathInfo`

### getCatalogVersions

    java.util.Vector getCatalogVersions(java.lang.String userID,
                                        java.lang.String catName)
                                        throws NoPrivilegeException,
                                               UnknownResource

  Get versions of specific catalog.

  Parameters:
    `userID` - the user ID,
    `catName` - the catalog name. For example: /SampleReports/Tutorail.cat.
  Returns:
    versions of a catalog, the Vector object contains `CatalogVersionRecord` objects.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path
  Since:
    version 6
  See Also:
    `CatalogVersionRecord`

### getReportVersions

    java.util.Vector getReportVersions(java.lang.String userID,
                                       java.lang.String rptName)
                                       throws NoPrivilegeException,
                                              UnknownResource

  Get versions of specific report.

  Parameters:
    `userID` - the user ID,
    `rptName` - the report name. For example: /SampleReports/CustomerAnalysis.cls.
  Returns:
    versions of a report, the Vector object contains `ReportVersionRecord` objects.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path
  Since:
    version 6
  See Also:
    `ReportVersionRecord`

### getResultVersions

    java.util.Vector getResultVersions(java.lang.String userID,
                                       java.lang.String rptName)
                                       throws NoPrivilegeException,
                                              UnknownResource

  Get result versions attach to specific report.

  Parameters:
    `userID` - the user ID,
    `rptName` - the report name. For example: /SampleReports/CustomerAnalysis.cls.
  Returns:
    result versions of a report, the Vector object contains `ResultVersionRecord` objects.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path
  Since:
    version 6
  See Also:
    `ResultVersionRecord`

### getResultDocVersions

    java.util.Vector getResultDocVersions(java.lang.String userID,
                                          java.lang.String resultDocName)
                                          throws NoPrivilegeException,
                                                 UnknownResource

  Get versions of specific result doc.

  Parameters:
    `userID` - the user ID,
    `resultDocName` - the result doc name. For example: /SampleReports/resultdoc1.
  Returns:
    versions of a result doc, the Vector object contains `ResultVersionRecord` objects.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path
  Since:
    version 6
  See Also:
    `ResultVersionRecord`

### getCatalogVersion

    CatalogVersionRecord getCatalogVersion(java.lang.String userID,
                                           java.lang.String catName,
                                           int versionNumber)
                                           throws NoPrivilegeException,
                                                  UnknownResource

  Get a catalog version by catalog name and version number

  Parameters:
    `userID` - the user ID,
    `catName` - the catalog name. For example: /SampleReports/Tutorail.cat.
    `versionNumber` - the version number
  Returns:
    version of specific catalog, a `CatalogVersionRecord` object. or null if can not get specific version
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path
  Since:
    version 6
  See Also:
    `CatalogVersionRecord`

### getReportVersion

    ReportVersionRecord getReportVersion(java.lang.String userID,
                                         java.lang.String rptName,
                                         int versionNumber)
                                         throws NoPrivilegeException,
                                                UnknownResource

  Get a version of specific report by version number.

  Parameters:
    `userID` - the user ID,
    `rptName` - the report name. For example: /SampleReports/CustomerAnalysis.cls.
    `versionNumber` - the version number
  Returns:
    a `ReportVersionRecord` object. or null if can not get specific version
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path
  Since:
    version 6
  See Also:
    `ReportVersionRecord`

### getResultVersion

    ResultVersionRecord getResultVersion(java.lang.String userID,
                                         java.lang.String rptName,
                                         int versionNumber)
                                         throws NoPrivilegeException,
                                                UnknownResource

  Get a result version attach to specific report by version number.

  Parameters:
    `userID` - the user ID,
    `rptName` - the report name. For example: /SampleReports/CustomerAnalysis.cls.
    `versionNumber` - the version number
  Returns:
    a `ResultVersionRecord` object. or null if can not get specific version
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path
  Since:
    version 6
  See Also:
    `ResultVersionRecord`

### getResultVersionByNodeID

    ResultVersionRecord getResultVersionByNodeID(java.lang.String recordID)
                                                 throws NoPrivilegeException,
                                                        UnknownResource

  Get a result version by node id

  Parameters:
    `recordID` - the node id
  Returns:
    ResultVersionRecord
  Throws:
    `NoPrivilegeException`
    `UnknownResource`
  Since:
    version 6
  See Also:
    `ResultVersionRecord`

### getResultDocVersion

    ResultVersionRecord getResultDocVersion(java.lang.String userID,
                                            java.lang.String resultDocName,
                                            int versionNumber)
                                            throws NoPrivilegeException,
                                                   UnknownResource

  Get version of specific result doc by version number.

  Parameters:
    `userID` - the user ID,
    `resultDocName` - the result doc name. For example: /SampleReports/resultdoc1.
    `versionNumber` - the version number
  Returns:
    a `ResultVersionRecord` object. or null if can not get specific version
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path
  Since:
    version 6
  See Also:
    `ResultVersionRecord`

### setResultMaxVersionAmount

    void setResultMaxVersionAmount(java.lang.String userID,
                                   java.lang.String reportResource,
                                   int maxVersionAmount)
                                   throws NoPrivilegeException,
                                          UnknownResource

  Set max version limited amount for specific report's result.

  Parameters:
    `userID` - the user ID.
    `reportResource` - the report resource name. For example: /SampleReports/CustomerAnalysis.cls
    `maxVersionAmount` - new max version limited amount value, if it is 0 or a nagetive value, the version amount of specific resource will be unlimited.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path
  Since:
    version 6

### getResultMaxVersionAmount

    int getResultMaxVersionAmount(java.lang.String userID,
                                  java.lang.String reportResource)
                                  throws NoPrivilegeException,
                                         UnknownResource

  getet max version limited amount for specific report's result.

  Parameters:
    `userID` - the user ID.
    `reportResource` - the report resource name. For example: /SampleReports/CustomerAnalysis.cls
  Returns:
    the max version limited amount value, if it is 0, the version amount of specific resource will be unlimited, if return -1, there is some error occured.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path
  Since:
    version 6

### removeNode

    void removeNode(java.lang.String userID,
                    java.lang.String path)
                    throws NoPrivilegeException,
                           UnknownResource

  Remove specific node which was indicated by path.

  Parameters:
    `userID` - the user ID.
    `path` - path to specify which resource will be remove.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path

### addResource

    VersionRecord addResource(java.lang.String userID,
                              java.lang.String folderPath,
                              java.util.Hashtable htResource)
                              throws NoPrivilegeException,
                                     NodeExistsException,
                                     UnknownResource

  Deprecated. since version 6.1, replaced by addResource(String userID, String folderPath, Hashtable htResource, Hashtable[] permissions)

  Add a resource into specific folder

  Parameters:
    `userID` - the user ID
    `folderPath` - path to specify folder, in which new resource will be added
    `htResource` - a `Hashtable` that contains attributes of new resource, these attributes can be indicated by some defined constant in APIConst, for example: TAG_NODE_NAME, TAG_RESOURCE_TYPE, TAG_DEFINE_PERMISSION, etc.
  Returns:
    a `VersionRecord` object to represent a resource version that just added, or null if add resource failed.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `NodeExistsException` - if a NodeExistsException occurs.
    `UnknownResource` - if no node can be found by the path

### addResource

    VersionRecord addResource(java.lang.String userID,
                              java.lang.String folderPath,
                              java.util.Hashtable htResource,
                              java.util.Hashtable[] permissions)
                              throws NoPrivilegeException,
                                     NodeExistsException,
                                     UnknownResource

  Add a resource into specific folder

  Parameters:
    `userID` - the user ID
    `folderPath` - path to specify folder, in which new resource will be added
    `htResource` - a `Hashtable` that contains attributes of new resource, these attributes can be indicated by some defined constant in APIConst, for example: TAG_NODE_NAME, TAG_RESOURCE_TYPE, etc.
    `permissions` - a `Hashtable` array, which may contain three `Hashtable` objects. The first `Hashtable` contains several user/permissions pair to represent permissions attached to specific path. In this `Hashtable` object, key is user name, value is a `Vector` object which contains all permissions (e.g. jet.server.api.Permissions.P_READ) that the user has on specific path. The second `Hashtable` object contains several role/permissions pair to represent, defined permissions on specific path and its structure is similar to user/permissions The third `Hashtable` object contains serveral group/permissions pair to represent. defined permissions on specific path and its structure is similar to user/permissions The structure of Hashtable[] permissions is: ::= ::= NULL | {, }... ::= NULL | {, }... ::= NULL | (, )... ::= a string of user name ::= a string of role name ::= a string of group name ::= | { | | | | | | }... ::= a vector object contains nothing ::= object Permissions.P_VISIBLE ::= object Permissions.P_READ ::= object Permissions.P_WRITE ::= object Permissions.P_DELETE ::= object Permissions.P_EXECUTE ::= object Permissions.P_SCHEDULE ::= object Permissions.P_GRANT
  Returns:
    a `VersionRecord` object to represent a resource version that just added, or null if add resource failed.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `NodeExistsException` - if a NodeExistsException occurs.
    `UnknownResource` - if no node can be found by the path

### addResource

    VersionRecord addResource(java.lang.String userID,
                              java.lang.String folderPath,
                              boolean isAutoConvert,
                              java.util.Hashtable htResource,
                              java.util.Hashtable[] permissions)
                              throws NoPrivilegeException,
                                     NodeExistsException,
                                     UnknownResource

  Add a resource into specific folder

  Parameters:
    `userID` - the user ID
    `folderPath` - path to specify folder, in which new resource will be added
    `isAutoConvert` - whether convert the old version report to lastest version report
    `htResource` - a `Hashtable` that contains attributes of new resource, these attributes can be indicated by some defined constant in APIConst, for example: TAG_NODE_NAME, TAG_RESOURCE_TYPE, etc.
    `permissions` - a `Hashtable` array, which may contain three `Hashtable` objects. The first `Hashtable` contains several user/permissions pair to represent permissions attached to specific path. In this `Hashtable` object, key is user name, value is a `Vector` object which contains all permissions (e.g. jet.server.api.Permissions.P_READ) that the user has on specific path. The second `Hashtable` object contains several role/permissions pair to represent, defined permissions on specific path and its structure is similar to user/permissions The third `Hashtable` object contains serveral group/permissions pair to represent. defined permissions on specific path and its structure is similar to user/permissions The structure of Hashtable[] permissions is: ::= ::= NULL | {, }... ::= NULL | {, }... ::= NULL | (, )... ::= a string of user name ::= a string of role name ::= a string of group name ::= | { | | | | | | }... ::= a vector object contains nothing ::= object Permissions.P_VISIBLE ::= object Permissions.P_READ ::= object Permissions.P_WRITE ::= object Permissions.P_DELETE ::= object Permissions.P_EXECUTE ::= object Permissions.P_SCHEDULE ::= object Permissions.P_GRANT
  Returns:
    a `VersionRecord` object to represent a resource version that just added, or null if add resource failed.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `NodeExistsException` - if a NodeExistsException occurs.
    `UnknownResource` - if no node can be found by the path

### addResultInReport

    VersionRecord addResultInReport(java.lang.String userID,
                                    java.lang.String reportPath,
                                    java.util.Hashtable htResult)
                                    throws NoPrivilegeException,
                                           UnknownResource

  Add a result into specific report

  Parameters:
    `userID` - the user ID
    `reportPath` - path to specify report, in which new result will be added
    `htResult` - a `Hashtable` that contains attributes of new result, these attributes can be indicated by some defined constant in APIConst, for example: TAG_NODE_NAME, TAG_RESOURCE_TYPE, TAG_DEFINE_PERMISSION, etc.
  Returns:
    a `VersionRecord` object to represent a result version that just added, or null if add result failed.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path

### addFolder

    java.lang.String addFolder(java.lang.String userID,
                               java.lang.String parentPath,
                               java.util.Hashtable htFolder)
                               throws NoPrivilegeException,
                                      NodeExistsException,
                                      UnknownResource

  Deprecated. since version 6.1, replaced by createFolder(...) and addResourcesToFolder(...). the param "includesSubDir" of the method addResourcesToFolder(...) should be true in this case.

  Add a sub-folder into specific folder

  Parameters:
    `userID` - the user ID
    `parentPath` - path to specify in which folder new resource will be added
    `htFolder` - a `Hashtable` that contains attributes of new folder, these attributes can be indicated by some defined constant in APIConst, for example: TAG_NODE_NAME, TAG_DEFINE_PERMISSION, etc.
  Returns:
    new folder's absolutePath, or null if add sub-folder failed.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `NodeExistsException` - if a NodeExistsException occurs.
    `UnknownResource` - if no node can be found by the path

### createFolder

    java.lang.String createFolder(java.lang.String userID,
                                  java.lang.String parentPath,
                                  java.lang.String folderName,
                                  java.util.Hashtable htFolder,
                                  java.util.Hashtable[] permissions)
                                  throws NoPrivilegeException,
                                         NodeExistsException,
                                         UnknownResource

  Add a sub-folder into specific folder

  Parameters:
    `userID` - the user ID
    `parentPath` - path to specify in which folder new resource will be added
    `folderName` - name of the new folder
    `htFolder` - a `Hashtable` that contains attributes of new folder, these attributes can be indicated by some defined constant in APIConst, for example: TAG_NODE_DESC, etc.
    `permissions` - a `Hashtable` array, which may contain three `Hashtable` objects. The first `Hashtable` contains several user/permissions pair to represent permissions attached to specific path. In this `Hashtable` object, key is user name, value is a `Vector` object which contains all permissions (e.g. jet.server.api.Permissions.P_READ) that the user has on specific path. The second `Hashtable` object contains several role/permissions pair to represent defined permissions on specific path and its structure is similar to user/permissions The third `Hashtable` object contains several group/permissions pair to represent defined permissions on specific path and its structure is similar to user/permissions The structure of Hashtable[] permissions is: ::= ::= NULL | {, }... ::= NULL | {, }... ::= NULL | (, )... ::= a string of user name ::= a string of role name ::= a string of group name ::= | { | | | | | | }... ::= a vector object contains nothing ::= object Permissions.P_VISIBLE ::= object Permissions.P_READ ::= object Permissions.P_WRITE ::= object Permissions.P_DELETE ::= object Permissions.P_EXECUTE ::= object Permissions.P_SCHEDULE ::= object Permissions.P_GRANT
  Returns:
    new folder's absolutePath, or null if add sub-folder failed.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `NodeExistsException` - if a NodeExistsException occurs.
    `UnknownResource` - if no node can be found by the path

### addResourcesToFolder

    void addResourcesToFolder(java.lang.String userID,
                              java.lang.String folderPath,
                              java.lang.String fromRealDir,
                              boolean includesSubDir,
                              java.util.Hashtable htResource,
                              java.util.Hashtable[] permissions)
                              throws NoPrivilegeException,
                                     NodeExistsException,
                                     UnknownResource

  Add files and sub-folders into specific folder

  Parameters:
    `userID` - the user ID
    `folderPath` - path to specify in which folder new resource will be added
    `fromRealDir` - the real directory which contains these files and sub-folders.
    `includesSubDir` - indicates that only add files to the folder.
    `htResource` - a `Hashtable` that contains attributes of new resource, these attributes can be indicated by some defined constant in APIConst, for example: TAG_NODE_NAME, TAG_RESOURCE_TYPE, etc.
    `permissions` - a `Hashtable` array, which may contain three `Hashtable` objects. The first `Hashtable` contains several user/permissions pair to represent permissions attached to specific path. In this `Hashtable` object, key is user name, value is a `Vector` object which contains all permissions (e.g. jet.server.api.Permissions.P_READ) that the user has on specific path. The second `Hashtable` object contains several role/permissions pair to represent defined permissions on specific path and its structure is similar to user/permissions The third `Hashtable` object contains several group/permissions pair to represent defined permissions on specific path and its structure is similar to user/permissions The structure of Hashtable[] permissions is: ::= ::= NULL | {, }... ::= NULL | {, }... ::= NULL | (, )... ::= a string of user name ::= a string of role name ::= a string of group name ::= | { | | | | | | }... ::= a vector object contains nothing ::= object Permissions.P_VISIBLE ::= object Permissions.P_READ ::= object Permissions.P_WRITE ::= object Permissions.P_DELETE ::= object Permissions.P_EXECUTE ::= object Permissions.P_SCHEDULE ::= object Permissions.P_GRANT
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `NodeExistsException` - if a NodeExistsException occurs.
    `UnknownResource` - if no node can be found by the path

### addResourcesToFolder

    void addResourcesToFolder(java.lang.String userID,
                              java.lang.String folderPath,
                              java.lang.String fromRealDir,
                              boolean includesSubDir,
                              boolean isAutoConvert,
                              java.util.Hashtable htResource,
                              java.util.Hashtable[] permissions)
                              throws NoPrivilegeException,
                                     NodeExistsException,
                                     UnknownResource

  Add files and sub-folders into specific folder

  Parameters:
    `userID` - the user ID
    `folderPath` - path to specify in which folder new resource will be added
    `fromRealDir` - the real directory which contains these files and sub-folders.
    `includesSubDir` - indicates that only add files to the folder.
    `isAutoConvert` - whether convert the old version report to lastest version report
    `htResource` - a `Hashtable` that contains attributes of new resource, these attributes can be indicated by some defined constant in APIConst, for example: TAG_NODE_NAME, TAG_RESOURCE_TYPE, etc.
    `permissions` - a `Hashtable` array, which may contain three `Hashtable` objects. The first `Hashtable` contains several user/permissions pair to represent permissions attached to specific path. In this `Hashtable` object, key is user name, value is a `Vector` object which contains all permissions (e.g. jet.server.api.Permissions.P_READ) that the user has on specific path. The second `Hashtable` object contains several role/permissions pair to represent defined permissions on specific path and its structure is similar to user/permissions The third `Hashtable` object contains several group/permissions pair to represent defined permissions on specific path and its structure is similar to user/permissions The structure of Hashtable[] permissions is: ::= ::= NULL | {, }... ::= NULL | {, }... ::= NULL | (, )... ::= a string of user name ::= a string of role name ::= a string of group name ::= | { | | | | | | }... ::= a vector object contains nothing ::= object Permissions.P_VISIBLE ::= object Permissions.P_READ ::= object Permissions.P_WRITE ::= object Permissions.P_DELETE ::= object Permissions.P_EXECUTE ::= object Permissions.P_SCHEDULE ::= object Permissions.P_GRANT
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `NodeExistsException` - if a NodeExistsException occurs.
    `UnknownResource` - if no node can be found by the path

### removeVersion

    void removeVersion(java.lang.String userID,
                       java.lang.String versionID)
                       throws NoPrivilegeException

  Remove specific version.

  Parameters:
    `userID` - the user ID
    `versionID` - the version ID which want to be removed, user can get it from `VersionRecord`.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
  See Also:
    `VersionRecord`

### getAllUsers

    java.util.Vector getAllUsers(java.lang.String submitter)

  Get all users

  Parameters:
    `submitter` - user id who sends this request
  Returns:
    a `Vector` object contains all user names, or null if submitter has not permission for get all users.

### getUsersByRole

    java.util.Vector getUsersByRole(java.lang.String submitter,
                                    java.lang.String roleID)
                                    throws NoSuchRoleException

  Get users who has specific role

  Parameters:
    `submitter` - user id who sends this request
    `roleID` - the role ID
  Returns:
    a `Vector` object contains user names who has specific role, or null if submitter has not permission for get users by this role.
  Throws:
    `NoSuchRoleException` - if a NoPrivilegeException occurs.

### getAllRoles

    java.util.Vector getAllRoles(java.lang.String submitter)

  Get all roles

  Parameters:
    `submitter` - user id who sends this request
  Returns:
    a `Vector` object contains all role names, or null if submitter has not permission for get all roles.

### getRolesByUser

    java.util.Vector getRolesByUser(java.lang.String submitter,
                                    java.lang.String userID)
                                    throws NoSuchUserException

  Get roles which specific user has

  Parameters:
    `submitter` - user id who sends this request
    `userID` - the user ID
  Returns:
    a `Vector` object contains role names which specific user has, or null if submitter has not permission for get roles by this user.
  Throws:
    `NoSuchUserException` - if a NoSuchUserException occurs

### getReferRoles

    java.util.Vector getReferRoles(java.lang.String userID)
                                   throws NoSuchUserException

  Get roles which specific user referred,

  Parameters:
    `userID` - the user ID
  Returns:
    a `Vector` object contains role names which specific user referred, these roles are specific user has but except administrator and everyone.
  Throws:
    `NoSuchUserException` - if a NoSuchUserException occurs

### getReferUsers

    java.util.Vector getReferUsers(java.lang.String userID)
                                   throws NoSuchUserException

  Get users which specific user referred, these users have same role except administrator and everyone with specific user

  Parameters:
    `userID` - the user ID
  Returns:
    a `Vector` object contains user names which specific user referred,
  Throws:
    `NoSuchUserException` - if a NoSuchUserException occurs

### getReferGroups

    java.util.Vector getReferGroups(java.lang.String userID)
                                    throws NoSuchUserException

  Get groups which specific user referred, these groups contain specific user

  Parameters:
    `userID` - the user ID
  Returns:
    a `Vector` object contains group names which specific user referred,
  Throws:
    `NoSuchUserException` - if a NoSuchUserException occurs

### getPermissions

    java.util.Hashtable[] getPermissions(java.lang.String userID,
                                         java.lang.String path,
                                         int versionNumber)
                                         throws NoPrivilegeException,
                                                UnknownResource

  Get defined permissions of users that attached to specific path

  Parameters:
    `userID` - the user ID who want to get permissions
    `path` - the path which attachs permissions
    `versionNumber` - version number to specify version of the path, if its value is 0, get the latest version.
  Returns:
    a `Hashtable` array, which contains three `Hashtable` objects. The first `Hashtable` contains several user/permissions pair to represent defined permissions attached to specific path. In this `Hashtable` object, key is user name, value is a `Vector` object which contains all permissions (e.g. jet.server.api.Permissions.P_READ) that the user has on specific path. The second `Hashtable` object contains several role/permissions pair to represent defined permissions on specific path and its structure is similar to user/permissions. The third `Hashtable` object contains several group/permissions pair to represent defined permissions on specific path and its structure is similar to user/permissions. Or null if the user/role/group has not permission to get permissions on specific path.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path

### getInheritedPermissions

    java.util.Hashtable[] getInheritedPermissions(java.lang.String userID,
                                                  java.lang.String path,
                                                  int versionNumber)
                                                  throws NoPrivilegeException,
                                                         UnknownResource

  Get inherited permissions of users that attached to specific path

  Parameters:
    `userID` - the user ID who want to get permissions
    `path` - the path which attachs permissions
    `versionNumber` - version number to specify version of the path, if its value is 0, get the latest version.
  Returns:
    a `Hashtable` array, which contains three `Hashtable` objects. The first `Hashtable` contains several user/permissions pair to represent defined permissions attached to specific path. In this `Hashtable` object, key is user name, value is a `Vector` object which contains all permissions (e.g. jet.server.api.Permissions.P_READ) that the user has on specific path. The second `Hashtable` object contains several role/permissions pair to represent inherited permissions on specific path and its structure is similar to user/permissions. The third `Hashtable` object contains several group/permissions pair to represent inherited permissions on specific path and its structure is similar to user/permissions. Or null if the user/role/group has not permission to get permissions on specific path.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path

### setPermissions

    void setPermissions(java.lang.String userID,
                        java.lang.String path,
                        int versionNumber,
                        java.util.Hashtable[] permissions)
                        throws NoPrivilegeException,
                               UnknownResource

  Set permissions of users for specific path

  Parameters:
    `userID` - the user ID who want to set permissions
    `path` - the path which will be set attached permissions
    `versionNumber` - version number to specify version of the path, if its value is 0, get the latest version.
    `permissions` - a `Hashtable` array, which may contain three `Hashtable` objects. The first `Hashtable` contains several user/permissions pair to represent permissions attached to specific path. In this `Hashtable` object, key is user name, value is a `Vector` object which contains all permissions (e.g. jet.server.api.Permissions.P_READ) that the user has on specific path. The second `Hashtable` object contains several role/permissions pair to represent defined permissions on specific path and its structure is similar to user/permissions The third `Hashtable` object contains several group/permissions pair to represent defined permissions on specific path and its structure is similar to user/permissions The structure of Hashtable[] permissions is: ::= ::= NULL | {, }... ::= NULL | {, }... ::= NULL | (, )... ::= a string of user name ::= a string of role name ::= a string of group name ::= | { | | | | | | }... ::= a vector object contains nothing ::= object Permissions.P_VISIBLE ::= object Permissions.P_READ ::= object Permissions.P_WRITE ::= object Permissions.P_DELETE ::= object Permissions.P_EXECUTE ::= object Permissions.P_SCHEDULE ::= object Permissions.P_GRANT
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if no node can be found by the path

### setNodeProperties

    void setNodeProperties(java.lang.String userID,
                           java.lang.String path,
                           java.util.Hashtable htProps,
                           java.util.Hashtable[] permissions)
                           throws NoPrivilegeException,
                                  NodeExistsException,
                                  UnknownResource

  Set properties and permissions of users for specific path

  Parameters:
    `userID` - the user ID who want to set properties
    `path` - the path which will be set properties and permissions
    `htProps` - properties of specific node, these properties are indicated by APIConst.TAG_MAXVERSION, APIConst.TAG_REPLACE_OLD_VERSION, APIConst.TAG_NODE_REAL_PATH, APIConst.TAG_TAG_ENABLE_DEFAULT_LINKED_CATALOG, APIConst.TAG_DEFAULT_LINKED_CATALOG APIConst.TAG_IS_USING_INHERITED, etc. all values are represented by a `String`.
    `permissions` - a `Hashtable` array, which may contain three `Hashtable` objects. The first `Hashtable` contains several user/permissions pair to represent permissions attached to specific path. In this `Hashtable` object, key is user name, value is a `Vector` object which contains all permissions (e.g. jet.server.api.Permissions.P_READ) that the user has on specific path. The second `Hashtable` object contains several role/permissions pair to represent defined permissions on specific path and its structure is similar to user/permissions The third `Hashtable` object contains several group/permissions pair to represent defined permissions on specific path and its structure is similar to user/permissions The structure of Hashtable[] permissions is: ::= ::= NULL | {, }... ::= NULL | {, }... ::= NULL | (, )... ::= a string of user name ::= a string of role name ::= a string of group name ::= | { | | | | | | }... ::= a vector object contains nothing ::= object Permissions.P_VISIBLE ::= object Permissions.P_READ ::= object Permissions.P_WRITE ::= object Permissions.P_DELETE ::= object Permissions.P_EXECUTE ::= object Permissions.P_SCHEDULE ::= object Permissions.P_GRANT
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `NodeExistsException` - if a NodeExistsException occurs.
    `UnknownResource` - if a UnknownResource occurs.

### setNodeProperties

    void setNodeProperties(java.lang.String userID,
                           java.lang.String path,
                           int versionNumber,
                           java.util.Hashtable htProps,
                           java.util.Hashtable[] permissions)
                           throws NoPrivilegeException,
                                  UnknownResource

  Set properties and permissions of users for specific version of path

  Parameters:
    `userID` - the user ID who want to set properties
    `path` - the path which will be set propertiess and permissions for attached version
    `versionNumber` - the version number, if it is zero, it means the path self
    `htProps` - properties of specific node, these properties are indicated by APIConst.TAG_EXPIRED_TIME, etc. all values are represented by a `String`.
    `permissions` - a `Hashtable` array, which may contain three `Hashtable` objects. The first `Hashtable` contains several user/permissions pair to represent permissions attached to specific path. In this `Hashtable` object, key is user name, value is a `Vector` object which contains all permissions (e.g. jet.server.api.Permissions.P_READ) that the user has on specific path. The second `Hashtable` object contains several role/permissions pair to represent defined permissions on specific path and its structure is similar to user/permissions The third `Hashtable` object contains several group/permissions pair to represent defined permissions on specific path and its structure is similar to user/permissions The structure of Hashtable[] permissions is: ::= ::= NULL | {, }... ::= NULL | {, }... ::= NULL | (, )... ::= a string of user name ::= a string of role name ::= a string of group name ::= | { | | | | | | }... ::= a vector object contains nothing ::= object Permissions.P_VISIBLE ::= object Permissions.P_READ ::= object Permissions.P_WRITE ::= object Permissions.P_DELETE ::= object Permissions.P_EXECUTE ::= object Permissions.P_SCHEDULE ::= object Permissions.P_GRANT
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if a UnknownResource occurs.

### setResultVersionProperties

    void setResultVersionProperties(java.lang.String userID,
                                    java.lang.String report,
                                    int versionNumber,
                                    java.util.Hashtable htProps)
                                    throws NoPrivilegeException,
                                           UnknownResource

  Set properties of users for specific result version of report

  Parameters:
    `userID` - the user ID who want to set properties
    `report` - the report which will be set propertiess for attached result version
    `versionNumber` - the version number, if it is zero or a invalid version number, no action will perform.
    `htProps` - properties of specific node, these properties are indicated by APIConst.TAG_EXPIRED_TIME, etc. all values are represented by a `String`.
  Throws:
    `NoPrivilegeException` - if a NoPrivilegeException occurs.
    `UnknownResource` - if a UnknownResource occurs.

### getRealPathOfNode

    java.lang.String getRealPathOfNode(java.lang.String userID,
                                       java.lang.String path)
                                       throws NoPrivilegeException,
                                              UnknownResource

  Get real path property of a node, which is specifid by path

  Parameters:
    `userID` - the user id
    `path` - path to specify a node (a folder, catalog, or report)
  Returns:
    real path of specific node
  Throws:
    `NoPrivilegeException` - if the user has not permission to get specific node's realPath
    `UnknownResource` - if no node can be found by the path

### refreshFolders

    java.lang.String refreshFolders(java.lang.String userID)

  Refresh the folders represent in UI for specific user. JREntServer create a xml file for every user, all folders can be shown in UI for the user are represented in this xml file, if a user want to refresh his folder tree in UI, this method should be invoked.

  Parameters:
    `userID` - the user id.
  Returns:
    the xml file name

### getLatestVersionNumber

    int getLatestVersionNumber(java.lang.String resourcePath)
                               throws UnknownResource

  Get the latest version number of specific resource.

  Parameters:
    `resourcePath` - resource path to specify a resource
  Returns:
    the latest verison number of specific resource, if specific resource does not exist or input string does not specify a resource, return -1.
  Throws:
    `UnknownResource` - if no node can be found by the path

### getLatestVersionNumber

    int getLatestVersionNumber(java.lang.String resourcePath,
                               java.lang.String userID)
                               throws UnknownResource

  Get the latest version number of specific resource.

  Parameters:
    `resourcePath` - resource path to specify a resource
    `userID` - the user id
  Returns:
    the latest verison number of specific resource, if specific resource does not exist or input string does not specify a resource, return -1.
  Throws:
    `UnknownResource` - if no node can be found by the path

### isAdminUser

    boolean isAdminUser(java.lang.String userID)

  Check if a user is an administrator

  Parameters:
    `userID` - the user id
  Returns:
    true if the user is an administrator, otherwise false

### checkPermission

    boolean checkPermission(java.lang.String userID,
                            java.lang.String resourcePath,
                            java.security.acl.Permission permission)
                            throws NoSuchUserException,
                                   UnknownResource

  Check specific user has or does not have a permission on specific resource path.

  Parameters:
    `userID` - the user id
    `resourcePath` - the resourc path
    `permission` - a permission, it should be one of the permissions that defined in jet.server.api.Permissions.
  Returns:
    true if user has specific permission on the resource, otherwise false.
  Throws:
    `NoSuchUserException` - if NoSuchUserException occurs
    `UnknownResource` - if no node can be found by the path

### checkPermission

    boolean checkPermission(java.lang.String userID,
                            java.lang.String resourcePath,
                            int versionNumber,
                            java.security.acl.Permission permission)
                            throws NoSuchUserException,
                                   UnknownResource

  Check specific user has or does not have a permission on specific version number of a resource path.

  Parameters:
    `userID` - the user id
    `resourcePath` - the resource path
    `versionNumber` - the version number of the resource path
    `permission` - a permission, it should be one of the permissions that defined in jet.server.api.Permissions.
  Returns:
    true if user has specific permission on the resource, otherwise false.
  Throws:
    `NoSuchUserException` - if NoSuchUserException occurs
    `UnknownResource` - if no node can be found by the path

### isNodeExist

    boolean isNodeExist(java.lang.String path,
                        java.lang.String userName)

  Checks whether or not the specified node does exist. If it does, true is returned, otherwise false is returned.

  Parameters:
    `path` - the specific resource path
    `userName` - the user name
  Returns:
    true if node does exist, otherwise false.

### loadUserResAliasToMem

    void loadUserResAliasToMem(java.lang.String userID)

  load resource alias of user from db and save them into memory

  Parameters:
    `userID` - the user name
  Throws:
    `java.rmi.RemoteException`

### rmUserResAliasFromMem

    void rmUserResAliasFromMem(java.lang.String userID)

  remove resource alias of user from memory

  Parameters:
    `userID` - the user name

### getInheritedLinkedCatalog

    java.lang.String getInheritedLinkedCatalog(java.lang.String userID,
                                               java.lang.String path)
                                               throws NoPrivilegeException,
                                                      UnknownResource

  Get inherited linked catalog

  Parameters:
    `userID` - the user name
    `path` - the resource path
  Returns:
    the inherited linked catalog or null if inherited broken
  Throws:
    `NoPrivilegeException`
    `UnknownResource`
  Since:
    version 8.1

### isCatalogLinked

    boolean isCatalogLinked(java.lang.String userID,
                            java.lang.String path)
                            throws NoPrivilegeException,
                                   UnknownResource

  Check whether the catalog is linked

  Parameters:
    `userID` - the user name
    `path` - the catalog path
  Returns:
    true if the catalog is linked
  Throws:
    `NoPrivilegeException`
    `UnknownResource`
  Since:
    version 8.2

### getEnabledCustomFieldNames

    java.util.Vector getEnabledCustomFieldNames()

  Get all names of enabled custom fields

  Returns:
    all names of enabled custom fields.
  Throws:
    `RptServerException` - if a RptServerException occurs.
  Since:
    version 9.1

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD