Class IManageWorkspaces


  • public class IManageWorkspaces
    extends Object
    Functions for iManage workspace handling.
    • Method Detail

      • addEntitiesV30

        public BulkOperationResultJson addEntitiesV30​(AddEntitiesIManageJson addEntitiesIManageJson)
        Adds permitted entities to an imanage workspace or documents in an imanage workspace.
        Parameters:
        AddEntitiesIManageJson - information used when adding permitted entities to workspace or documents
        Returns:
        bulkOperationResultJson - details about the success of each request, for each entity and document
      • addNotificationV30

        public BulkOperationResultJson addNotificationV30​(CreateIManageActivityLogRecordJson createIManageActivityLogRecordJson)
        Adds a notification for a file action in the file's activity log file.
        Parameters:
        createIManangeActivityLogRecordJson -
        Returns:
        bulkOperationResultJson - details about the success of each request, for each entity and file
      • addTransientDocumentPermissionRequestV30

        public BulkOperationResultJson addTransientDocumentPermissionRequestV30​(AddIManageDocumentPermissionRequestJson addIManageDocumentPermissionRequestJson)
        Add a permission request for a document in a imanage workspace.
        Parameters:
        addImanageDocumentPermissionRequestJson - data about the request for adding a file permission
        Returns:
        - details about the success of each request, for each entity and document
      • addTransientFolderPermissionRequestV30

        public BulkOperationResultJson addTransientFolderPermissionRequestV30​(AddIManageFolderPermissionRequestJson addIManageFolderPermissionRequestJson)
        Add a permission request for an imanage workspace.
        Parameters:
        addImanageFolderPermissionRequestJson - data about the request for adding a workspace permission
        Returns:
        - details about the success of each request, for each entity
      • changeDefaultPermissionsBulkV30

        public BulkOperationResultJson changeDefaultPermissionsBulkV30​(ChangeEntitiesIManageJson changeEntitiesIManageJson)
        Changes default permissions of a permitted entity in an imanage workspace.
        Parameters:
        changeEntitiesTransientJson - details of entities (user, group, domain) and new default permissions to be assigned to them since expiration date is now not a part of the inheritance model, the user may send 'leave unchanged' so that the expiration date will not change when changing permissions. The user can do so by passing expiration date = null, expiration days = null and neverExpires = true.
        Returns:
        bulkOperationResultJson - details about the success of each request, for each entity and file
      • checkForCredentialV30

        public CheckIManageCredentialResultJson checkForCredentialV30​(CheckIManageCredentialJson checkIManageCredentialJson)
        Check if the logged in user has a valid Imanage credential stored.
        Parameters:
        checkIManageCredentialJson - the imanage repository to be checked
        Returns:
        CheckIManageCredentialResultJson true if a valid Imanage credential exists
      • copyDocumentsFromRoomsToExchangeAsyncV30

        public IManageDocumentsTransactionResultJson copyDocumentsFromRoomsToExchangeAsyncV30​(CopyIManageDocumentToExchangeAsyncJson copyIManageDocumentToExchangeAsyncJson)
        Copies a imanage file to Microsoft Exchange.
        Parameters:
        copyIManageDocumentToExchangeAsyncJson - A list of users to receive notification and link to the files and permissions to assign the file when copying imanage files to Exchange
        Returns:
        iManageDocumentsTransactionResultJson
      • createFolderV30

        public IManageFolderJson createFolderV30​(CreateIManageFolderJson createIManageFolderJson)
        Creates a new imanage folder.
        Parameters:
        createIManageFolderJson - a imaange folder to create
        Returns:
        transientFolderJson the newly created folder info
      • createIManageDocumentV30

        public SubmitIfNewIManageDocumentJson createIManageDocumentV30​(CreateNewIManageDocumentJson createNewIManageDocumentJson)
        Create new empty document.
        Parameters:
        createNewIManageDocumentJson - json new document upload and submit
        Returns:
        SubmitIfNewIManageDocumentJson - return exist or new document
      • deleteDocumentsAndFoldersV30

        public BulkOperationResultJson deleteDocumentsAndFoldersV30​(DeleteIManageDocumentsAndFoldersJson deleteIManageDocumentsAndFoldersJson)
        Deletes imanage folders and files.
        Parameters:
        deleteIManageDocumentsAndFoldersJson - imanage folders and files to delete
        Returns:
        bulkOperationResultJson - details about the success of each request, for each entity and document
      • deleteRoomV30

        public BulkOperationResultJson deleteRoomV30​(DeleteIManageWorkspaceJson deleteIManageWorkspaceJson)
        Delete iManage workspace.
        Parameters:
        deleteIManageWorkspaceJson - a iManage workspace to delete
        Returns:
        bulkOperationResultJson - details about the success of each request, for each entity and document
      • documentUploadCompleteV30

        public BulkOperationResultJson documentUploadCompleteV30​(String documentGuid,
                                                                 String roomId)
        Complete uploaded file.
        Parameters:
        documentGuid - document guid
        roomId - room id
        Returns:
        bulkOperationResultJson - details about the success of each request, for each entity and file
      • downloadDocumentsFormV30

        public InputStream downloadDocumentsFormV30​(Set<String> documentItemIds,
                                                    String downloadType,
                                                    Set<String> folderItemIds,
                                                    String wdUniqueDownloadKey,
                                                    String workspaceUuid)
        Downloads a set of specified files or all files in a set of specified folders and files in a imanage workspace.
      • downloadOriginalV30

        public InputStream downloadOriginalV30​(String workspaceGuid,
                                               String downloadType,
                                               String forceWatermarks,
                                               String itemId)
        Returns a single file.
        Parameters:
        downloadType - download type
        forceWatermarks - force water marks
        itemId - imanage item id for the document
        workspaceGuid - workspace guid
        Returns:
        inputStream
      • downloadSingleDocumentForWebV30

        public InputStream downloadSingleDocumentForWebV30​(DownloadSingleIManageDocumentJson downloadSingleIManageDocumentJson)
        Downloads a single file for web (additional info is returned).
        Parameters:
        downloadSingleIManageDocumentForWebJson -
        Returns:
        inputStream
      • downloadSingleDocumentForWebV30

        public InputStream downloadSingleDocumentForWebV30​(String downloadType,
                                                           boolean forceWatermarks,
                                                           String itemId,
                                                           String wdUniqueDownloadKey,
                                                           String workspaceUuid)
        Downloads a single file (for web).
        Returns:
        inputStream
      • downloadSingleDocumentV30

        public InputStream downloadSingleDocumentV30​(DownloadSingleIManageDocumentJson downloadSingleIManageDocumentJson)
        Downloads a single file.
        Parameters:
        downloadSingleDocumentJson -
        Returns:
        inputStream
      • editFoldersAndDocumentsSettingsBulkV30

        public BulkOperationResultJson editFoldersAndDocumentsSettingsBulkV30​(IManageEditFoldersAndDocumentsSettingsBulkJson iManageEditFoldersAndDocumentsSettingsBulkJson)
        Edit file permissions in bulk.
        Parameters:
        imanageEditFoldersAndDocumentsSettingsBulkJson - used when bulk editing file settings
        Returns:
        bulkOperationResultJson - details about the success of each request, for each entity and file
      • exportActivityHistoryForRoomsV30

        public InputStream exportActivityHistoryForRoomsV30​(ExportActivityHistoryForTransientRoomsJson exportActivityHistoryForTransientRoomsJson)
        Returns a CSV file of workspace activity history for the given set of rooms.
        Parameters:
        exportActivityHistoryForTransientRoomsJson - the rooms info
      • exportActivityLogV30

        public InputStream exportActivityLogV30​(GetIManageDocumentActivityLogRequestJson getIManageDocumentActivityLogRequestJson)
        Gets activity log CSV for a file.
        Parameters:
        getImanageDocumentActivityLogRequestJson - document info for activity log
      • generateGuidV30

        public GuidJson generateGuidV30()
        Creates file GUID for new or updated files.
        Returns:
        guidJson
      • generateGuidV30

        public GuidJson generateGuidV30​(GenerateTransientDocumentGuidJson generateTransientDocumentGuidJson)
        Creates file GUID for new file in a workspace context.
        Parameters:
        generateTransientDocumentGuidJson - a workspace to get a guid for
        Returns:
        guidJson
      • getActivityLogV30

        public InputStream getActivityLogV30​(String documentItemId,
                                             String fromDate,
                                             boolean lastActionPerUser,
                                             Integer pageNumber,
                                             Integer pageSize,
                                             String toDate,
                                             String workspaceUuid)
        Gets activity log for a file in WD in CSV format.
      • getDocumentInfoV30

        public IManageDocumentJson getDocumentInfoV30​(IManageDocumentInfoJson iManageDocumentInfoJson)
        Retrieves file info.
        Parameters:
        IManageDocumentInfoJson - used for getting file information
        Returns:
        iManageDocumentInfoJson
      • getFolderInfoV30

        public IManageFolderInfoResultJson getFolderInfoV30​(GetIManageFolderInfoJson getIManageFolderInfoJson)
        Gets single level info for a workspace or folder.
        Parameters:
        GetIManageFolderInfoJson - workspace and folder info
        Returns:
        IManageFolderInfoResultJson
      • getIManagePathInfoV30

        public TransientPathInfoJson getIManagePathInfoV30​(GetIManagePathInfoJson getIManagePathInfoJson)
        Get info for a path.
        Parameters:
        GetIManagePathInfoJson -
        Returns:
        TransientPathInfoJson
      • initiateConversionV30

        public TransientInitiateConversionResultJson initiateConversionV30​(IManageInitiateConversionJson iManageInitiateConversionJson)
        Initiates conversion to PDF for a document
        Parameters:
        transientInitiateConversionJson - used to initiate a conversion to PDF
        Returns:
        transientInitiateConversionResultJson
      • inviteV30

        public BulkOperationResultJson inviteV30​(IManageDocumentInviteJson iManageDocumentInviteJson)
        Invites groups or users to a specific file in a workspace.
        Parameters:
        imanageDocumentInviteJson - invite data
        Returns:
        bulkOperationResultJson - indicates if actions were successful or, if not, the problems.
      • inviteV30

        public BulkOperationResultJson inviteV30​(IManageInviteJson iManageInviteJson)
        Invite groups and users to an imanage workspace or a folder
        Parameters:
        transientInviteJson - invite data
        Returns:
        bulkOperationResultJson - indicates if actions were successful or, if not, the problems.
      • listFoldersAndDocumentsV30

        public PagingItemListJson<BaseJson> listFoldersAndDocumentsV30​(ListIManageFoldersAndDocumentsJson listIManageFoldersAndDocumentsJson)
        Retrieves a list of iManage files and folders for a workspace or a folder. If the user doesn't have workspace level permissions, it returns all shared documents in the workspace in flat(no folder tree strutures)
        Parameters:
        listIManageFoldersAndDocumentsJson - used when retrieving a list of iManage files and folders
        Returns:
        A of Json objects which main include IManageFolderJson and/or IManageDocumentJson objects.
      • listFoldersSingleLevelV30

        public ListIManageFoldersSingleLevelResultJson listFoldersSingleLevelV30​(ListIManageFoldersJson listIManageFoldersJson)
        Gets the tree of all folders.
        Parameters:
        listIManageFoldersJson - used to get the tree of all folders
        Returns:
        ListIManageFoldersSingleLevelResultJson
      • listMattersV30

        public PagingItemListJson<BaseJson> listMattersV30​(ListIManageMattersJson listIManageMattersJson)
        Retrieves a list of imanage top level matters and workspaces.
        Parameters:
        listIManageMattersJson -
        Returns:
        A list of IManageMatterJson objects
      • listOrganizationPolicyV30

        public OrganizationPolicyJson listOrganizationPolicyV30​(ListTransientOrganizationPolicyJson listTransientOrganizationPolicyJson)
        Returns the organization policy for the given workspace.
        Parameters:
        listTransientOrganizationPolicyJson - used to get the organizational policy
        Returns:
        organizationPolicyJson
      • listPermissionDetailsV30

        public PermissionDetailsJson listPermissionDetailsV30​(ListIManagePermissionDetailsJson listIManagePermissionDetailsJson)
        List permission details for files and folders for all entities in the workspace.
        Parameters:
        listIManagePermissionDetailsJson - request for listing permission details for files and folders for all entities in the workspace
        Returns:
        permissionDetailsJson
      • listTransientDocumentsPermissionRequestsV30

        public ItemListJson<IManageDocumentPermissionRequestsResultsJson> listTransientDocumentsPermissionRequestsV30​(ListTransientDocumentsPermissionRequestsJson listTransientDocumentsPermissionRequestsJson)
        Lists existing document permission requests for all imanage workspaces.
        Parameters:
        listTransientDocumentsPermissionRequestsJson - Details about the document permission request
        Returns:
        List which indicates whether all requests were successful or, if not, a list of errors.
      • listTransientFolderPermissionRequestsV30

        public ItemListJson<IManageWorkspacePermissionRequestsResultsJson> listTransientFolderPermissionRequestsV30​(ListTransientFolderPermissionRequestsJson listTransientFolderPermissionRequestsJson)
        Lists existing folder permission requests for all imanage workspace.
        Parameters:
        listTransientFolderPermissionRequestsJson - Details about the document to get info on
        Returns:
        List which indicates whether all requests were successful or, if not, a list of errors.
      • markWorkspaceFavoriteV30

        public BulkOperationResultJson markWorkspaceFavoriteV30​(MarkIManageWorkspaceStarredJson markIManageWorkspaceStarredJson)
        Marks iManage Workspace(s) as starred or unstarred (favorite).
        Parameters:
        markIManageWorkspaceStarredJson - a list of items and a mark for them.
        Returns:
        bulkOperationResultJson - indicates if actions were successful or, if not, the problems.
      • renameDocumentV30

        public IManageDocumentJson renameDocumentV30​(RenameIManageDocumentJson renameIManageDocumentJson)
        Renames a file in an imanage workspace.
        Parameters:
        RenameIManageDocumentJson - a file to rename
        Returns:
        IManageDocumentJson
      • resolveActionForTransientDocumentPermissionRequestV30

        public BulkOperationResultJson resolveActionForTransientDocumentPermissionRequestV30​(ResolveActionForIManageDocumentPermissionRequestJson resolveActionForIManageDocumentPermissionRequestJson)
        Applies a decision on a request.
        Parameters:
        resolveActionForIManageDocumentPermissionRequestJson - document and requesters informtaion
        Returns:
        An object which indicates if the action was successful or, if not, the problems.
      • resolveActionForTransientFolderPermissionRequestV30

        public BulkOperationResultJson resolveActionForTransientFolderPermissionRequestV30​(ResolveActionForIManageFolderPermissionRequestJson resolveActionForIManageFolderPermissionRequestJson)
        Applies a decision on an imanage workspace permission request.
        Parameters:
        resolveActionForIManageFolderPermissionRequestJson - document and requesters informtaion
        Returns:
        An object which indicates if the action was successful or, if not, the problems.
      • saveTransientWorkspaceCredentialsV30

        public TransientFolderJson saveTransientWorkspaceCredentialsV30​(SaveTransientWorkspaceCredentialsJson saveTransientWorkspaceCredentialsJson)
        Saves the credentials for a given workspace.
        Parameters:
        saveTransientWorkspaceCredentialsJson - saves credentials for a transient workspace
        Returns:
        transientFolderJson
      • sendBulkEmailV30

        public String sendBulkEmailV30​(SendEmailsToIManageDocumentsJson sendEmailsToIManageDocumentsJson)
        Sends emails to file users.
        Parameters:
        sendEmailsToIManageDocumentsJson - used when sending emails
        Returns:
        "success"
      • signInIManageWorkspaceV30

        public SignInIManageResultJson signInIManageWorkspaceV30​(CreateiManageWorkspaceCredentialsJson createiManageWorkspaceCredentialsJson)
        Sign in to an imanange repository. It validates the credential and create/update imanage credential.
        Parameters:
        createiManageWorkspaceCredentialsJson - create credentials for a iManage workspace if credential not exists, otherwise, it updates existing credential.
        Returns:
        SignInIManageResultJson
      • signOutIManageWorkspaceV30

        public BulkOperationResultJson signOutIManageWorkspaceV30​(CheckIManageCredentialJson checkIManageCredentialJson)
        Sign out imanange repository. It deletes all imanage workspaces owned by the user and deletes the credential for the user.
        Parameters:
        checkIManageCredentialJson -
        Returns:
        BulkOperationResultJson
      • uploadDocumentByPostV30

        public String uploadDocumentByPostV30​(String documentGuid,
                                              String roomId,
                                              File data,
                                              DeviceType deviceType,
                                              String documentName,
                                              String fileName,
                                              Long start)
        Uploads new file data.
        Parameters:
        data - file data
        deviceType - device type
        documentGuid - document guid
        documentName - document name
        fileName - file name
        roomId - room id
        start - start
        Returns:
        "success"
      • uploadDocumentByPostV30

        public String uploadDocumentByPostV30​(String documentGuid,
                                              String roomId,
                                              InputStream data,
                                              DeviceType deviceType,
                                              String documentName,
                                              String fileName,
                                              Long start)
        Uploads new file data.
        Parameters:
        data - file data
        deviceType - device type
        documentGuid - document guid
        documentName - document name
        fileName - file name
        roomId - room id
        start - start
        Returns:
        "success"
      • validateDocumentsToDownloadV30

        public BulkOperationResultJson validateDocumentsToDownloadV30​(ValidateDownloadIManageDocumentsJson validateDownloadIManageDocumentsJson)
        Validates files for download.
        Parameters:
        validateDownloadIManageDocumentsJson - used for validating files for download
        Returns:
        bulkOperationResultJson - details about the success of each request, for each entity and document