Interface IDssServiceRpcGeneric

  • All Superinterfaces:
    IRpcService

    public interface IDssServiceRpcGeneric
    extends IRpcService
    Generic functionality for interacting with the DSS.
    • Method Detail

      • listFilesForDataSet

        FileInfoDssDTO[] listFilesForDataSet​(java.lang.String sessionToken,
                                             DataSetFileDTO fileOrFolder)
                                      throws ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked,
                                             java.lang.IllegalArgumentException
        Get an array of FileInfoDss objects that describe the file-system structure of the data set.
        Parameters:
        sessionToken - The session token
        fileOrFolder - The file or folder to get information on
        Throws:
        ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked - Thrown if an IOException occurs when listing the files
        java.lang.IllegalArgumentException - Thrown if the dataSetCode or startPath are not valid
      • getFileForDataSet

        @Deprecated
        java.io.InputStream getFileForDataSet​(java.lang.String sessionToken,
                                              DataSetFileDTO fileOrFolder)
                                       throws ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked,
                                              java.lang.IllegalArgumentException
        Get an array of FileInfoDss objects that describe the file-system structure of the data set.
        Parameters:
        sessionToken - The session token
        fileOrFolder - The file or folder to retrieve
        Throws:
        ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked - Thrown if an IOException occurs when listing the files
        java.lang.IllegalArgumentException - Thrown if the dataSetCode or startPath are not valid
      • getDownloadUrlForFileForDataSet

        java.lang.String getDownloadUrlForFileForDataSet​(java.lang.String sessionToken,
                                                         DataSetFileDTO fileOrFolder)
                                                  throws ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked,
                                                         java.lang.IllegalArgumentException
        Returns an URL from which the requested file. The URL is valid only for a short time.
        Parameters:
        sessionToken - The session token
        fileOrFolder - The file or folder to retrieve
        Throws:
        ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked - Thrown if an IOException occurs when listing the files
        java.lang.IllegalArgumentException - Thrown if the dataSetCode or startPath are not valid
        Since:
        1.4
      • getDownloadUrlForFileForDataSetWithTimeout

        java.lang.String getDownloadUrlForFileForDataSetWithTimeout​(java.lang.String sessionToken,
                                                                    DataSetFileDTO fileOrFolder,
                                                                    long validityDurationInSeconds)
                                                             throws ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked,
                                                                    java.lang.IllegalArgumentException
        Returns an URL from which the requested file. The URL is valid for a caller-specified amount of time.
        Parameters:
        sessionToken - The session token
        fileOrFolder - The file or folder to retrieve
        validityDurationInSeconds - The number of seconds for which the download URL should be valid. The validity is clipped to the durations defined in the properties data-stream-timeout and data-stream-max-timeout, which default to 5 seconds and 4 hours, respectively.
        Throws:
        ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked - Thrown if an IOException occurs when listing the files
        java.lang.IllegalArgumentException - Thrown if the dataSetCode or startPath are not valid
        Since:
        1.7
      • listFilesForDataSet

        FileInfoDssDTO[] listFilesForDataSet​(java.lang.String sessionToken,
                                             java.lang.String dataSetCode,
                                             java.lang.String path,
                                             boolean isRecursive)
                                      throws ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked,
                                             java.lang.IllegalArgumentException
        Get an array of FileInfoDss objects that describe the file-system structure of the data set.
        Parameters:
        sessionToken - The session token
        dataSetCode - The data set to retrieve file information about
        path - The path within the data set to retrieve file information about
        isRecursive - Should the result include information for sub folders?
        Throws:
        ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked - Thrown if an IOException occurs when listing the files
        java.lang.IllegalArgumentException - Thrown if the dataSetCode or startPath are not valid
      • getFileForDataSet

        @Deprecated
        java.io.InputStream getFileForDataSet​(java.lang.String sessionToken,
                                              java.lang.String dataSetCode,
                                              java.lang.String path)
                                       throws ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked,
                                              java.lang.IllegalArgumentException
        Get an array of FileInfoDss objects that describe the file-system structure of the data set.
        Parameters:
        sessionToken - The session token
        dataSetCode - The data set to retrieve file from
        path - The path within the data set to retrieve file information about
        Throws:
        ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked - Thrown if an IOException occurs when listing the files
        java.lang.IllegalArgumentException - Thrown if the dataSetCode or startPath are not valid
      • getDownloadUrlForFileForDataSet

        java.lang.String getDownloadUrlForFileForDataSet​(java.lang.String sessionToken,
                                                         java.lang.String dataSetCode,
                                                         java.lang.String path)
                                                  throws ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked,
                                                         java.lang.IllegalArgumentException
        Returns an URL from which the requested file of the specified data set can be downloaded. The URL is valid only for a short time.
        Parameters:
        sessionToken - The session token
        dataSetCode - The data set to retrieve file from
        path - The path within the data set to retrieve file information about
        Throws:
        ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked - Thrown if an IOException occurs when listing the files
        java.lang.IllegalArgumentException - Thrown if the dataSetCode or startPath are not valid
        Since:
        1.4
      • getDownloadUrlForFileForDataSetWithTimeout

        java.lang.String getDownloadUrlForFileForDataSetWithTimeout​(java.lang.String sessionToken,
                                                                    java.lang.String dataSetCode,
                                                                    java.lang.String path,
                                                                    long validityDurationInSeconds)
                                                             throws ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked,
                                                                    java.lang.IllegalArgumentException
        Returns an URL from which the requested file of the specified data set can be downloaded. The URL is valid for a caller-specified amount of time.
        Parameters:
        sessionToken - The session token
        dataSetCode - The data set to retrieve file from
        path - The path within the data set to retrieve file information about
        validityDurationInSeconds - The number of seconds for which the download URL should be valid.
        Throws:
        ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked - Thrown if an IOException occurs when listing the files
        java.lang.IllegalArgumentException - Thrown if the dataSetCode or startPath are not valid
        Since:
        1.7
      • putDataSet

        java.lang.String putDataSet​(java.lang.String sessionToken,
                                    NewDataSetDTO newDataset,
                                    java.io.InputStream inputStream)
                             throws ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked,
                                    java.lang.IllegalArgumentException
        Upload a new data set to the DSS.
        Parameters:
        sessionToken - The session token
        newDataset - The new data set that should be registered
        inputStream - An input stream on the file or folder to register
        Returns:
        The code of the newly-added data set
        Throws:
        ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked - Thrown if an IOException occurs when listing the files
        java.lang.IllegalArgumentException - Thrown if the dataSetCode or startPath are not valid
      • putDataSet

        void putDataSet​(java.lang.String sessionToken,
                        java.lang.String dropboxName,
                        java.lang.String fileName)
      • putFileToSessionWorkspace

        long putFileToSessionWorkspace​(java.lang.String sessionToken,
                                       java.lang.String filePath,
                                       java.io.InputStream inputStream)
                                throws ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked
        Upload a new file to the user's session workspace.
        Parameters:
        sessionToken - The session token.
        filePath - The file path (including the sub-directory) to upload the file to.
        inputStream - An input stream on the file to upload.
        Throws:
        ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked - Thrown if because filePath does not exist.
      • putFileSliceToSessionWorkspace

        long putFileSliceToSessionWorkspace​(java.lang.String sessionToken,
                                            java.lang.String filePath,
                                            long slicePosition,
                                            java.io.InputStream sliceInputStream)
                                     throws ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked
        Upload a file slice to the user's session workspace. If the file does not exist then it will created.
        Parameters:
        sessionToken - The session token.
        filePath - The file path (including the sub-directory) to upload the slice to.
        slicePosition - The position the slice should be inserted at.
        sliceInputStream - An input stream of the slice to be uploaded.
        Returns:
        The number of bytes written.
        Throws:
        ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked - Thrown if IOException occurs.
      • getFileFromSessionWorkspace

        java.io.InputStream getFileFromSessionWorkspace​(java.lang.String sessionToken,
                                                        java.lang.String filePath)
                                                 throws ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked
        Download a file from the user's session workspace.
        Parameters:
        sessionToken - The session token.
        filePath - The file path (including the sub-directory) to download the file from.
        Returns:
        The input stream containing the file content.
        Throws:
        ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked - Thrown if an IOException occurs.
      • deleteSessionWorkspaceFile

        boolean deleteSessionWorkspaceFile​(java.lang.String sessionToken,
                                           java.lang.String path)
        Delete a file or directory in the session workspace.
        Returns:
        true if the path doesn't exist anymore.
      • getPathToDataSet

        java.lang.String getPathToDataSet​(java.lang.String sessionToken,
                                          java.lang.String dataSetCode,
                                          java.lang.String overrideStoreRootPathOrNull)
                                   throws ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked,
                                          java.lang.IllegalArgumentException
        Get a path to the data set. This can be used by clients that run on the same machine as the DSS for more efficient access to a data set.

        NOTE: This method shouldn't be called for a container data set. No file would exist with the returned path.

        Parameters:
        sessionToken - The session token
        dataSetCode - The data set to retrieve file from
        overrideStoreRootPathOrNull - The path to replace the store path (see return comment).
        Returns:
        An absolute path to the data set. If overrideStorePathOrNull is specified, it replaces the DSS's notion of the store path. Otherwise the return value will begin with the DSS's storeRootPath.
        Throws:
        ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked - if an IOException occurs when listing the files.
        java.lang.IllegalArgumentException - if dataSetCode is a container dataset.
        Since:
        1.1
        See Also:
        tryGetPathToDataSet(String, String, String)
      • tryGetPathToDataSet

        java.lang.String tryGetPathToDataSet​(java.lang.String sessionToken,
                                             java.lang.String dataSetCode,
                                             java.lang.String overrideStoreRootPathOrNull)
                                      throws ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked
        Get a path to the data set. This can be used by clients that run on the same machine as the DSS for more efficient access to a data set.

        NOTE: This method returns null for a container data set.

        Parameters:
        sessionToken - The session token
        dataSetCode - The data set to retrieve file from
        overrideStoreRootPathOrNull - The path to replace the store path (see return comment).
        Returns:
        An absolute path to the data set. If overrideStorePathOrNull is specified, it replaces the DSS's notion of the store path. Otherwise the return value will begin with the DSS's storeRootPath. For a container data set returns null.
        Throws:
        ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked - if an IOException occurs when listing the files.
        Since:
        1.8
        See Also:
        getPathToDataSet(String, String, String)
      • listAllShares

        java.util.List<ShareInfo> listAllShares​(java.lang.String sessionToken)
        Lists all shares.
        Since:
        1.7
      • shuffleDataSet

        void shuffleDataSet​(java.lang.String sessionToken,
                            java.lang.String dataSetCode,
                            java.lang.String shareId)
        Moves specified data set to specified share.
        Throws:
        java.lang.IllegalArgumentException - if data set does not exit or is a container data set or share does not exist.
        Since:
        1.7
      • getValidationScript

        java.lang.String getValidationScript​(java.lang.String sessionToken,
                                             java.lang.String dataSetTypeOrNull)
                                      throws ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked,
                                             java.lang.IllegalArgumentException
        Get the validation script for the specified data set type.
        Parameters:
        sessionToken - The session token
        dataSetTypeOrNull - The data set type the script should validate, or null to request the generic validation script.
        Returns:
        The string of the python (jython) script for the validation or null if there is no applicable validation script.
        Throws:
        ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked - Thrown if an IOException occurs when accessing the script
        java.lang.IllegalArgumentException - Thrown if the data set type or startPath are not valid
        Since:
        1.2