com.ansys.ingress.client.api

## Interface JobManager

-     public interface JobManager

  JobManager defines the interface for performing job management operations on an EKM server.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `java.lang.String` | `AbortJob(java.lang.String uniqueCallId, java.lang.String jobSpaceId, java.lang.String jobId)`
    `java.lang.String` | `AddLogMessages(java.lang.String jobSpaceId, java.lang.String jobId, int msgType, java.lang.String messageList)` Log a message(s) to RSM job report for the specified job
    `java.lang.String` | `CancelCall(java.lang.String uniqueCallId)` Attempts to cancel an operation that is in progress
    `com.ansys.ingress.commons.model.Variant` | `CheckClientDirectoryVisibility(java.lang.String clientDirectory, java.lang.String markerFileName, java.lang.String jobName, java.util.List<java.lang.String> associatedUncPathsForClientDirectory)` Check if client directory is visible
    `java.lang.String` | `CompleteCall(java.lang.String uniqueCallId)` Signals that a call is complete.
    `java.lang.String` | `CreateJob(java.lang.String jobSpaceId, java.lang.String rsmSubmitData)` Creates a job in RSM
    `com.ansys.ingress.commons.model.Variant` | `CreateJobSpace(java.lang.String clientDirectory, java.lang.String markerFileName, java.lang.String jobName, java.util.List<java.lang.String> associatedUncPathsForClientDirectory)` Create a JobObject in EKM and launch servo for current user.
    `com.ansys.ingress.commons.model.Variant` | `DownloadFile(java.lang.String jobSpaceId, java.lang.String jobId, java.lang.String sourceRelativeFilePath, java.lang.String destinationLocalFilePath)` Download a file from workingDirectory/sourceRelativeFilePath of the the JobObject with id=jobSpaceId and write to destinationLocalFilePath
    `java.lang.String` | `FinalizeJob(java.lang.String uniqueCallId, java.lang.String jobSpaceId, java.lang.String jobId, java.lang.String finalizeData)`
    `java.lang.String` | `GetAllJobInformation()`
    `java.lang.String` | `GetClusterConfigurations()`
    `java.lang.String` | `GetClusterConfigurationsWithInformation()`
    `java.lang.String` | `GetConfiguredQueues()`
    `java.lang.String` | `GetJobConclusionInformation(java.lang.String jobSpaceId, java.lang.String jobId)` Gets information about a job after the job has completed This method must be used after FinalizeJob has been called and before ReleaseJob is called
    `java.lang.String` | `GetJobInformation(java.lang.String jobId)`
    `java.lang.String` | `GetJobLog(java.lang.String uniqueCallId, java.lang.String jobSpaceId, java.lang.String jobId, java.lang.String getJobLogData)`
    `java.lang.String` | `GetJobs(java.lang.String data)`
    `java.lang.String` | `GetJobStatus(java.lang.String uniqueCallId, java.lang.String jobSpaceId, java.lang.String jobId)`
    `java.lang.String` | `GetJobStatuses(java.lang.String uniqueCallId, java.lang.String jobIdList, boolean shallowQuery)` Get statuses for a list of jobs
    `java.lang.String` | `GetQueues(java.lang.String clusterConfiguration)`
    `java.lang.String` | `GetRsmVersion()` Returns the internal RSM version number.
    `java.lang.String` | `InquireJobByName(java.lang.String uniqueCallId, java.lang.String jobSpaceId, java.lang.String jobId, java.lang.String inquireData)`
    `java.lang.String` | `InquireJobByTag(java.lang.String uniqueCallId, java.lang.String jobSpaceId, java.lang.String jobId, java.lang.String inquireData)`
    `java.lang.String` | `InterruptJob(java.lang.String uniqueCallId, java.lang.String jobSpaceId, java.lang.String jobId)`
    `java.lang.String` | `PerformDiagnosticOperation(java.lang.String uniqueCallId, java.lang.String diagnosticOperationType, java.lang.String diagnosticOperationData)` Performs a diagnostic operation
    `java.lang.String` | `ReleaseJob(java.lang.String uniqueCallId, java.lang.String jobSpaceId, java.lang.String jobId, java.lang.String releaseData)`
    `java.lang.String` | `SubmitJob(java.lang.String uniqueCallId, java.lang.String jobSpaceId, java.lang.String jobId, java.lang.String rsmSubmitData, java.lang.String jobType, java.util.List<java.lang.String> solverTranscriptFileSearchPatterns, int cores, java.lang.String queueName)`
    Submit the job with jobSpaceId and RSM jobId to RSM.
    `com.ansys.ingress.commons.model.Variant` | `UploadFile(java.lang.String jobSpaceId, java.lang.String jobId, java.lang.String sourceLocalFilePath, java.lang.String destionationRelativeFilePath)` Upload a file from sourceLocalFilePath to the workingDirectory of the JobObject with id=jobSpaceId

- - ### Method Detail

    - #### CreateJobSpace

          com.ansys.ingress.commons.model.Variant CreateJobSpace(java.lang.String clientDirectory,
                                                                 java.lang.String markerFileName,
                                                                 java.lang.String jobName,
                                                                 java.util.List<java.lang.String> associatedUncPathsForClientDirectory)
                                                          throws EkmException

      Create a JobObject in EKM and launch servo for current user. Will set JobObject's workDirPath to clientDirectory if it is visible to the servo process, else generate a unique path based on user jobRoot preference.
      Parameters:
        `clientDirectory` - The full path to the location of the client directory where job files are located
        `markerFileName` - The name of a marker file used to identify the clientDirectory
        `jobName` - The requested name for the job (may append a timestamp to name)
        `associatedUncPathsForClientDirectory` - share paths of clientDirectory
      Returns:
        a Variant form of JobSpaceCreationResult which contains the JobObject's archiveId and a boolean indicating if clientDirectory is visible to servo process
      Throws:
        `EkmException`

    - #### CheckClientDirectoryVisibility

          com.ansys.ingress.commons.model.Variant CheckClientDirectoryVisibility(java.lang.String clientDirectory,
                                                                                 java.lang.String markerFileName,
                                                                                 java.lang.String jobName,
                                                                                 java.util.List<java.lang.String> associatedUncPathsForClientDirectory)
                                                                          throws EkmException

      Check if client directory is visible
      Parameters:
        `clientDirectory` - The full path to the location of the client directory where job files are located
        `markerFileName` - The name of a marker file used to identify the clientDirectory
        `jobName` - The requested name for the job (not actually used so may be null)
        `associatedUncPathsForClientDirectory` - share paths of clientDirectory
      Returns:
        true if marker is found
      Throws:
        `EkmException`

    - #### UploadFile

          com.ansys.ingress.commons.model.Variant UploadFile(java.lang.String jobSpaceId,
                                                             java.lang.String jobId,
                                                             java.lang.String sourceLocalFilePath,
                                                             java.lang.String destionationRelativeFilePath)
                                                      throws EkmException

      Upload a file from sourceLocalFilePath to the workingDirectory of the JobObject with id=jobSpaceId
      Parameters:
        `jobSpaceId` -
        `jobId` - rsm job id
        `sourceLocalFilePath` -
        `destionationRelativeFilePath` - relative path under job workingDirectory to write file
      Returns:
        Variant form of IFileTransferResult
      Throws:
        `EkmException`

    - #### DownloadFile

          com.ansys.ingress.commons.model.Variant DownloadFile(java.lang.String jobSpaceId,
                                                               java.lang.String jobId,
                                                               java.lang.String sourceRelativeFilePath,
                                                               java.lang.String destinationLocalFilePath)
                                                        throws EkmException

      Download a file from workingDirectory/sourceRelativeFilePath of the the JobObject with id=jobSpaceId and write to destinationLocalFilePath
      Parameters:
        `jobSpaceId` -
        `jobId` - rsm job id
        `sourceRelativeFilePath` - relative path under job workingDirectory to read file from
        `destinationLocalFilePath` -
      Returns:
        Returns a string.
      Throws:
        `EkmException`

    - #### GetQueues

          java.lang.String GetQueues(java.lang.String clusterConfiguration)
                              throws EkmException

      Parameters:
        `clusterConfiguration` -
      Returns:
      Throws:
        `EkmException`

    - #### GetRsmVersion

          java.lang.String GetRsmVersion()
                                  throws EkmException

      Returns the internal RSM version number. The result is used to verify that the version of RSM the Portal is using is compatible with the local RSM version
      Returns:
        Variant form of String
      Throws:
        `EkmException`

    - #### CreateJob

          java.lang.String CreateJob(java.lang.String jobSpaceId,
                                     java.lang.String rsmSubmitData)
                              throws EkmException

      Creates a job in RSM
      Parameters:
        `jobSpaceId` -
        `rsmSubmitData` -
      Returns:
      Throws:
        `EkmException`

    - #### SubmitJob

          java.lang.String SubmitJob(java.lang.String uniqueCallId,
                                     java.lang.String jobSpaceId,
                                     java.lang.String jobId,
                                     java.lang.String rsmSubmitData,
                                     java.lang.String jobType,
                                     java.util.List<java.lang.String> solverTranscriptFileSearchPatterns,
                                     int cores,
                                     java.lang.String queueName)
                              throws EkmException

      Submit the job with jobSpaceId and RSM jobId to RSM. CreateJob must be called before this method.
      Parameters:
        `uniqueCallId` -
        `jobSpaceId` -
        `jobId` - rsm job id
        `rsmSubmitData` - Serialized data intended for RSM use only
        `jobType` -
        `solverTranscriptFileSearchPatterns` -
        `cores` -
        `queueName` -
      Returns:
        Serialized string containing RSM job id for submitted job
      Throws:
        `EkmException`

    - #### GetJobStatus

          java.lang.String GetJobStatus(java.lang.String uniqueCallId,
                                        java.lang.String jobSpaceId,
                                        java.lang.String jobId)
                                 throws EkmException

      Parameters:
        `args` - Variant form of {String uniqueCallId, String jobId}
      Returns:
        Variant form of String
      Throws:
        `EkmException`

    - #### GetJobLog

          java.lang.String GetJobLog(java.lang.String uniqueCallId,
                                     java.lang.String jobSpaceId,
                                     java.lang.String jobId,
                                     java.lang.String getJobLogData)
                              throws EkmException

      Parameters:
        `args` - Variant form of {String uniqueCallId, String jobId, String getJobLogData}
      Returns:
        Variant form of String
      Throws:
        `EkmException`

    - #### GetJobs

          java.lang.String GetJobs(java.lang.String data)
                            throws EkmException

      Parameters:
        `data` -
      Returns:
      Throws:
        `EkmException`

    - #### AbortJob

          java.lang.String AbortJob(java.lang.String uniqueCallId,
                                    java.lang.String jobSpaceId,
                                    java.lang.String jobId)
                             throws EkmException

      Parameters:
        `args` - Variant form of {String uniqueCallId, String jobId}
      Returns:
        Variant form of String
      Throws:
        `EkmException`

    - #### InterruptJob

          java.lang.String InterruptJob(java.lang.String uniqueCallId,
                                        java.lang.String jobSpaceId,
                                        java.lang.String jobId)
                                 throws EkmException

      Parameters:
        `args` - Variant form of {String uniqueCallId, String jobId}
      Returns:
        Variant form of String
      Throws:
        `EkmException`

    - #### PerformDiagnosticOperation

          java.lang.String PerformDiagnosticOperation(java.lang.String uniqueCallId,
                                                      java.lang.String diagnosticOperationType,
                                                      java.lang.String diagnosticOperationData)
                                               throws EkmException

      Performs a diagnostic operation
      Parameters:
        `uniqueCallId` -
        `diagnosticOperationType` -
        `diagnosticOperationData` -
      Returns:
      Throws:
        `EkmException`

    - #### GetJobStatuses

          java.lang.String GetJobStatuses(java.lang.String uniqueCallId,
                                          java.lang.String jobIdList,
                                          boolean shallowQuery)
                                   throws EkmException

      Get statuses for a list of jobs
      Parameters:
        `uniqueCallId` -
        `jobIdList` - json-format list of rsm job ids
        `shallowQuery` -
      Returns:
      Throws:
        `EkmException`

    - #### AddLogMessages

          java.lang.String AddLogMessages(java.lang.String jobSpaceId,
                                          java.lang.String jobId,
                                          int msgType,
                                          java.lang.String messageList)
                                   throws EkmException

      Log a message(s) to RSM job report for the specified job
      Parameters:
        `jobSpaceId` - EKM job id which is the repo path to jobobject
        `jobId` - rsm job id
        `msgType` -
        `messageList` - json-format list of strings
      Returns:
      Throws:
        `EkmException`

    - #### InquireJobByName

          java.lang.String InquireJobByName(java.lang.String uniqueCallId,
                                            java.lang.String jobSpaceId,
                                            java.lang.String jobId,
                                            java.lang.String inquireData)
                                     throws EkmException

      Parameters:
        `args` - Variant form of {String uniqueCallId, String jobId, String inquireData}
      Returns:
        Variant form of String
      Throws:
        `EkmException`

    - #### InquireJobByTag

          java.lang.String InquireJobByTag(java.lang.String uniqueCallId,
                                           java.lang.String jobSpaceId,
                                           java.lang.String jobId,
                                           java.lang.String inquireData)
                                    throws EkmException

      Parameters:
        `args` - Variant form of {String uniqueCallId, String jobId, String inquireData}
      Returns:
        Variant form of String
      Throws:
        `EkmException`

    - #### FinalizeJob

          java.lang.String FinalizeJob(java.lang.String uniqueCallId,
                                       java.lang.String jobSpaceId,
                                       java.lang.String jobId,
                                       java.lang.String finalizeData)
                                throws EkmException

      Parameters:
        `args` - Variant form of {String uniqueCallId, String jobId, String finalizeData}
      Returns:
        Variant form of String
      Throws:
        `EkmException`

    - #### GetAllJobInformation

          java.lang.String GetAllJobInformation()
                                         throws EkmException

      Returns:
      Throws:
        `EkmException`

    - #### ReleaseJob

          java.lang.String ReleaseJob(java.lang.String uniqueCallId,
                                      java.lang.String jobSpaceId,
                                      java.lang.String jobId,
                                      java.lang.String releaseData)
                               throws EkmException

      Parameters:
        `args` - Variant form of {String uniqueCallId, String jobId, String releaseData}
      Returns:
        Variant form of String
      Throws:
        `EkmException`

    - #### CancelCall

          java.lang.String CancelCall(java.lang.String uniqueCallId)
                               throws EkmException

      Attempts to cancel an operation that is in progress
      Parameters:
        `uniqueCallId` -
      Returns:
        Variant form of String
      Throws:
        `EkmException`

    - #### CompleteCall

          java.lang.String CompleteCall(java.lang.String uniqueCallId)
                                 throws EkmException

      Signals that a call is complete. Any resources that were being cached in order to support Cancel may be cleaned up
      Parameters:
        `args` - Variant form of {String uniqueCallId}
      Returns:
        Variant form of String
      Throws:
        `EkmException`

    - #### GetClusterConfigurations

          java.lang.String GetClusterConfigurations()
                                             throws EkmException

      Returns:
      Throws:
        `EkmException`

    - #### GetClusterConfigurationsWithInformation

          java.lang.String GetClusterConfigurationsWithInformation()
                                                            throws EkmException

      Returns:
      Throws:
        `EkmException`

    - #### GetJobInformation

          java.lang.String GetJobInformation(java.lang.String jobId)
                                      throws EkmException

      Parameters:
        `jobId` -
      Returns:
      Throws:
        `EkmException`

    - #### GetConfiguredQueues

          java.lang.String GetConfiguredQueues()
                                        throws EkmException

      Returns:
      Throws:
        `EkmException`

    - #### GetJobConclusionInformation

          java.lang.String GetJobConclusionInformation(java.lang.String jobSpaceId,
                                                       java.lang.String jobId)
                                                throws EkmException

      Gets information about a job after the job has completed This method must be used after FinalizeJob has been called and before ReleaseJob is called
      Parameters:
        `uniqueCallId` -
        `jobSpaceId` -
        `jobId` -
      Returns:
      Throws:
        `EkmException`