Thrift module: airavataAPI

ModuleServicesData typesConstants
airavataAPIAiravata
AIRAVATA_API_VERSION

Constants

ConstantTypeValue
AIRAVATA_API_VERSIONstring"0.15.0"
Airavata Interface Versions depend upon this Thrift Interface File. When Making changes, please edit the Version Constants according to Semantic Versioning Specification (SemVer) http://semver.org.

Note: The Airavata API version may be different from the Airavata software release versions.

The Airavata API version is composed as a dot delimited string with major, minor, and patch level components.

- Major: Incremented for backward incompatible changes. An example would be changes to interfaces. - Minor: Incremented for backward compatible changes. An example would be the addition of a new optional methods. - Patch: Incremented for bug fixes. The patch level should be increased for every edit that doesn't result in a change to major/minor version numbers.



Services

Service: Airavata

Function: Airavata.getAPIVersion

string getAPIVersion()
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Fetch Apache Airavata API version

Function: Airavata.addGateway

string addGateway(workspaceModel.Gateway gateway)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.updateGateway

void updateGateway(string gatewayId,
                   workspaceModel.Gateway updatedGateway)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.getGateway

workspaceModel.Gateway getGateway(string gatewayId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.deleteGateway

bool deleteGateway(string gatewayId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.getAllGateways

list<workspaceModel.Gateway> getAllGateways()
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.isGatewayExist

bool isGatewayExist(string gatewayId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.generateAndRegisterSSHKeys

string generateAndRegisterSSHKeys(string gatewayId,
                                  string userName)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Generate and Register SSH Key Pair with Airavata Credential Store.

@param gatewayId The identifier for the requested gateway.

@param userName The User for which the credential should be registered. For community accounts, this user is the name of the community user name. For computational resources, this user name need not be the same user name on resoruces.

@return airavataCredStoreToken An SSH Key pair is generated and stored in the credential store and associated with users or community account belonging to a gateway.


Function: Airavata.getSSHPubKey

string getSSHPubKey(string airavataCredStoreToken)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.getAllUserSSHPubKeys

map<string, string> getAllUserSSHPubKeys(string userName)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.createProject

string createProject(string gatewayId,
                     workspaceModel.Project project)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Creates a Project with basic metadata. A Project is a container of experiments.

@param gatewayId The identifier for the requested gateway.

@param Project The Project Object described in the workspaceModel


Function: Airavata.updateProject

void updateProject(string projectId,
                   workspaceModel.Project updatedProject)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException, airavataErrors.ProjectNotFoundException
Update a Project


Function: Airavata.getProject

workspaceModel.Project getProject(string projectId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException, airavataErrors.ProjectNotFoundException
Get a Project by ID


Function: Airavata.deleteProject

bool deleteProject(string projectId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException, airavataErrors.ProjectNotFoundException

Function: Airavata.getAllUserProjects

list<workspaceModel.Project> getAllUserProjects(string gatewayId,
                                                string userName)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
* Get all Project by user * * @param gatewayId * The identifier for the requested gateway. * * @param userName * The Project Object described in the workspaceModel * @deprecated Instead use getAllUserProjectsWithPagination *

Function: Airavata.getAllUserProjectsWithPagination

list<workspaceModel.Project> getAllUserProjectsWithPagination(string gatewayId,
                                                              string userName,
                                                              i32 limit,
                                                              i32 offset)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
* Get all Project by user with pagination. Results will be ordered based * on creation time DESC * * @param gatewayId * The identifier for the requested gateway. * @param userName * The identifier of the user * @param limit * The amount results to be fetched * @param offset * The starting point of the results to be fetched *

Function: Airavata.searchProjectsByProjectName

list<workspaceModel.Project> searchProjectsByProjectName(string gatewayId,
                                                         string userName,
                                                         string projectName)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Get all Project for user by project name

@param gatewayId The identifier for the requested gateway. @param userName The identifier of the user @param projectName The name of the project on which the results to be fetched @deprecated Instead use searchProjectsByProjectNameWithPagination

Function: Airavata.searchProjectsByProjectNameWithPagination

list<workspaceModel.Project> searchProjectsByProjectNameWithPagination(string gatewayId,
                                                                       string userName,
                                                                       string projectName,
                                                                       i32 limit,
                                                                       i32 offset)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Get all Project for user by project name with pagination.Results will be ordered based on creation time DESC

@param gatewayId The identifier for the requested gateway. @param userName The identifier of the user @param projectName The name of the project on which the results to be fetched @param limit The amount results to be fetched @param offset The starting point of the results to be fetched

Function: Airavata.searchProjectsByProjectDesc

list<workspaceModel.Project> searchProjectsByProjectDesc(string gatewayId,
                                                         string userName,
                                                         string description)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Get all Project for user by project description @param gatewayId The identifier for the requested gateway. @param userName The identifier of the user @param description The description to be matched @deprecated Instead use searchProjectsByProjectDescWithPagination

Function: Airavata.searchProjectsByProjectDescWithPagination

list<workspaceModel.Project> searchProjectsByProjectDescWithPagination(string gatewayId,
                                                                       string userName,
                                                                       string description,
                                                                       i32 limit,
                                                                       i32 offset)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Search and get all Projects for user by project description with pagination. Results will be ordered based on creation time DESC

@param gatewayId The identifier for the requested gateway. @param userName The identifier of the user @param description The description to be matched @param limit The amount results to be fetched @param offset The starting point of the results to be fetched

Function: Airavata.searchExperimentsByName

list<experimentModel.ExperimentSummary> searchExperimentsByName(string gatewayId,
                                                                string userName,
                                                                string expName)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Search Experiments by experiment name

@param gatewayId Identifier of the requested gateway @param useNname Username of the requested user @param expName Experiment name to be matched @deprecated Instead use searchExperimentsByNameWithPagination


Function: Airavata.searchExperimentsByNameWithPagination

list<experimentModel.ExperimentSummary> searchExperimentsByNameWithPagination(string gatewayId,
                                                                              string userName,
                                                                              string expName,
                                                                              i32 limit,
                                                                              i32 offset)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Search Experiments by experiment name with pagination. Results will be sorted based on creation time DESC

@param gatewayId Identifier of the requested gateway @param userName Username of the requested user @param expName Experiment name to be matched @param limit Amount of results to be fetched @param offset The starting point of the results to be fetched

Function: Airavata.searchExperimentsByDesc

list<experimentModel.ExperimentSummary> searchExperimentsByDesc(string gatewayId,
                                                                string userName,
                                                                string description)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Search Experiments by experiment name

@param gatewayId Identifier of the requested gateway @param userName Username of the requested user @param description Experiment description to be matched @deprecated Instead use searchExperimentsByDescWithPagination

Function: Airavata.searchExperimentsByDescWithPagination

list<experimentModel.ExperimentSummary> searchExperimentsByDescWithPagination(string gatewayId,
                                                                              string userName,
                                                                              string description,
                                                                              i32 limit,
                                                                              i32 offset)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Search Experiments by experiment name with pagination. Results will be sorted based on creation time DESC

@param gatewayId Identifier of the requested gateway @param userName Username of the requested user @param description Experiment description to be matched @param limit Amount of results to be fetched @param offset The starting point of the results to be fetched

Function: Airavata.searchExperimentsByApplication

list<experimentModel.ExperimentSummary> searchExperimentsByApplication(string gatewayId,
                                                                       string userName,
                                                                       string applicationId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Search Experiments by application id

@param gatewayId Identifier of the requested gateway @param userName Username of the requested user @param applicationId Application id to be matched @deprecated Instead use searchExperimentsByApplicationWithPagination

Function: Airavata.searchExperimentsByApplicationWithPagination

list<experimentModel.ExperimentSummary> searchExperimentsByApplicationWithPagination(string gatewayId,
                                                                                     string userName,
                                                                                     string applicationId,
                                                                                     i32 limit,
                                                                                     i32 offset)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Search Experiments by application id with pagination. Results will be sorted based on creation time DESC

@param gatewayId Identifier of the requested gateway @param userName Username of the requested user @param applicationId Application id to be matched @param limit Amount of results to be fetched @param offset The starting point of the results to be fetched

Function: Airavata.searchExperimentsByStatus

list<experimentModel.ExperimentSummary> searchExperimentsByStatus(string gatewayId,
                                                                  string userName,
                                                                  experimentModel.ExperimentState experimentState)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Search Experiments by experiment status

@param gatewayId Identifier of the requested gateway @param userName Username of the requested user @param experimentState Experiement state to be matched @deprecated Instead use searchExperimentsByStatusWithPagination

Function: Airavata.searchExperimentsByStatusWithPagination

list<experimentModel.ExperimentSummary> searchExperimentsByStatusWithPagination(string gatewayId,
                                                                                string userName,
                                                                                experimentModel.ExperimentState experimentState,
                                                                                i32 limit,
                                                                                i32 offset)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Search Experiments by experiment status with pagination. Results will be sorted based on creation time DESC

@param gatewayId Identifier of the requested gateway @param userName Username of the requested user @param experimentState Experiement state to be matched @param limit Amount of results to be fetched @param offset The starting point of the results to be fetched

Function: Airavata.searchExperimentsByCreationTime

list<experimentModel.ExperimentSummary> searchExperimentsByCreationTime(string gatewayId,
                                                                        string userName,
                                                                        i64 fromTime,
                                                                        i64 toTime)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Search Experiments by experiment creation time

@param gatewayId Identifier of the requested gateway @param userName Username of the requested user @param fromTime Start time of the experiments creation time @param toTime End time of the experiement creation time @deprecated Instead use searchExperimentsByCreationTimeWithPagination

Function: Airavata.searchExperimentsByCreationTimeWithPagination

list<experimentModel.ExperimentSummary> searchExperimentsByCreationTimeWithPagination(string gatewayId,
                                                                                      string userName,
                                                                                      i64 fromTime,
                                                                                      i64 toTime,
                                                                                      i32 limit,
                                                                                      i32 offset)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Search Experiments by experiment creation time with pagination. Results will be sorted based on creation time DESC

@param gatewayId Identifier of the requested gateway @param userName Username of the requested user @param fromTime Start time of the experiments creation time @param toTime End time of the experiement creation time @param limit Amount of results to be fetched @param offset The starting point of the results to be fetched

Function: Airavata.getAllExperimentsInProject

list<experimentModel.Experiment> getAllExperimentsInProject(string projectId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException, airavataErrors.ProjectNotFoundException
Get all Experiments within a Project

@param projectId Identifier of the project @deprecated Instead use getAllExperimentsInProjectWithPagination

Function: Airavata.getAllExperimentsInProjectWithPagination

list<experimentModel.Experiment> getAllExperimentsInProjectWithPagination(string projectId,
                                                                          i32 limit,
                                                                          i32 offset)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException, airavataErrors.ProjectNotFoundException
Get all Experiments within project with pagination. Results will be sorted based on creation time DESC

@param projectId Identifier of the project @param limit Amount of results to be fetched @param offset The starting point of the results to be fetched

Function: Airavata.getAllUserExperiments

list<experimentModel.Experiment> getAllUserExperiments(string gatewayId,
                                                       string userName)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Get all Experiments by user

@param gatewayId Identifier of the requesting gateway @param userName Username of the requested user @deprecated Instead use getAllUserExperimentsWithPagination

Function: Airavata.getAllUserExperimentsWithPagination

list<experimentModel.Experiment> getAllUserExperimentsWithPagination(string gatewayId,
                                                                     string userName,
                                                                     i32 limit,
                                                                     i32 offset)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Get all Experiments by user pagination. Results will be sorted based on creation time DESC

@param gatewayId Identifier of the requesting gateway @param userName Username of the requested user @param limit Amount of results to be fetched @param offset The starting point of the results to be fetched

Function: Airavata.createExperiment

string createExperiment(string gatewayId,
                        experimentModel.Experiment experiment)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Create an experiment for the specified user belonging to the gateway. The gateway identity is not explicitly passed but inferred from the authentication header. This experiment is just a persistent place holder. The client has to subsequently configure and launch the created experiment. No action is taken on Airavata Server except registering the experiment in a persistent store.

@param basicExperimentMetadata The create experiment will require the basic experiment metadata like the name and description, intended user, the gateway identifer and if the experiment should be shared public by defualt. During the creation of an experiment the ExperimentMetadata is a required field.

@return The server-side generated airavata experiment globally unique identifier.

@throws org.apache.airavata.model.error.InvalidRequestException For any incorrect forming of the request itself.

@throws org.apache.airavata.model.error.AiravataClientException The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve:

UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative step, then Airavata Registry will not have a provenance area setup. The client has to follow gateway registration steps and retry this request.

AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined. For now this is a place holder.

INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake is implemented, the authorization will be more substantial.

@throws org.apache.airavata.model.error.AiravataSystemException This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client rather an Airavata Administrator will be notified to take corrective action.


Function: Airavata.getExperiment

experimentModel.Experiment getExperiment(string airavataExperimentId)
    throws airavataErrors.InvalidRequestException, airavataErrors.ExperimentNotFoundException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Fetch previously created experiment metadata.

@param airavataExperimentId The identifier for the requested experiment. This is returned during the create experiment step.

@return experimentMetada This method will return the previously stored experiment metadata.

@throws org.apache.airavata.model.error.InvalidRequestException For any incorrect forming of the request itself.

@throws org.apache.airavata.model.error.ExperimentNotFoundException If the specified experiment is not previously created, then an Experiment Not Found Exception is thrown.

@throws org.apache.airavata.model.error.AiravataClientException The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve: UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative step, then Airavata Registry will not have a provenance area setup. The client has to follow gateway registration steps and retry this request.

AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined. For now this is a place holder.

INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake is implemented, the authorization will be more substantial.

@throws org.apache.airavata.model.error.AiravataSystemException This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client rather an Airavata Administrator will be notified to take corrective action.


Function: Airavata.updateExperiment

void updateExperiment(string airavataExperimentId,
                      experimentModel.Experiment experiment)
    throws airavataErrors.InvalidRequestException, airavataErrors.ExperimentNotFoundException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Configure a previously created experiment with required inputs, scheduling and other quality of service parameters. This method only updates the experiment object within the registry. The experiment has to be launched to make it actionable by the server.

@param airavataExperimentId The identifier for the requested experiment. This is returned during the create experiment step.

@param experimentConfigurationData The configuration information of the experiment with application input parameters, computational resource scheduling information, special input output handling and additional quality of service parameters.

@return This method call does not have a return value.

@throws org.apache.airavata.model.error.InvalidRequestException For any incorrect forming of the request itself.

@throws org.apache.airavata.model.error.ExperimentNotFoundException If the specified experiment is not previously created, then an Experiment Not Found Exception is thrown.

@throws org.apache.airavata.model.error.AiravataClientException The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve: UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative step, then Airavata Registry will not have a provenance area setup. The client has to follow gateway registration steps and retry this request.

AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined. For now this is a place holder.

INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake is implemented, the authorization will be more substantial.

@throws org.apache.airavata.model.error.AiravataSystemException This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client rather an Airavata Administrator will be notified to take corrective action.


Function: Airavata.updateExperimentConfiguration

void updateExperimentConfiguration(string airavataExperimentId,
                                   experimentModel.UserConfigurationData userConfiguration)

Function: Airavata.updateResourceScheduleing

void updateResourceScheduleing(string airavataExperimentId,
                               experimentModel.ComputationalResourceScheduling resourceScheduling)

Function: Airavata.validateExperiment

bool validateExperiment(string airavataExperimentId)
    throws airavataErrors.InvalidRequestException, airavataErrors.ExperimentNotFoundException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
* * Validate experiment configuration. A true in general indicates, the experiment is ready to be launched. * * @param experimentID * @return sucess/failure * *

Function: Airavata.launchExperiment

void launchExperiment(string airavataExperimentId,
                      string airavataCredStoreToken)
    throws airavataErrors.InvalidRequestException, airavataErrors.ExperimentNotFoundException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException, airavataErrors.LaunchValidationException
Launch a previously created and configured experiment. Airavata Server will then start processing the request and appropriate notifications and intermediate and output data will be subsequently available for this experiment.

@param airavataExperimentId The identifier for the requested experiment. This is returned during the create experiment step.

@param airavataCredStoreToken: A requirement to execute experiments within Airavata is to first register the targeted remote computational account credentials with Airavata Credential Store. The administrative API (related to credential store) will return a generated token associated with the registered credentials. The client has to security posses this token id and is required to pass it to Airavata Server for all execution requests. Note: At this point only the credential store token is required so the string is directly passed here. In future if if more security credentials are enables, then the structure ExecutionSecurityParameters should be used. Note: This parameter is not persisted within Airavata Registry for security reasons.

@return This method call does not have a return value.

@throws org.apache.airavata.model.error.InvalidRequestException For any incorrect forming of the request itself.

@throws org.apache.airavata.model.error.ExperimentNotFoundException If the specified experiment is not previously created, then an Experiment Not Found Exception is thrown.

@throws org.apache.airavata.model.error.AiravataClientException The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve: UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative step, then Airavata Registry will not have a provenance area setup. The client has to follow gateway registration steps and retry this request.

AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined. For now this is a place holder.

INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake is implemented, the authorization will be more substantial.

@throws org.apache.airavata.model.error.AiravataSystemException This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client rather an Airavata Administrator will be notified to take corrective action.


Function: Airavata.getExperimentStatus

experimentModel.ExperimentStatus getExperimentStatus(string airavataExperimentId)
    throws airavataErrors.InvalidRequestException, airavataErrors.ExperimentNotFoundException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.getExperimentOutputs

list<applicationInterfaceModel.OutputDataObjectType> getExperimentOutputs(string airavataExperimentId)
    throws airavataErrors.InvalidRequestException, airavataErrors.ExperimentNotFoundException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.getIntermediateOutputs

list<applicationInterfaceModel.OutputDataObjectType> getIntermediateOutputs(string airavataExperimentId)
    throws airavataErrors.InvalidRequestException, airavataErrors.ExperimentNotFoundException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.getJobStatuses

map<string, experimentModel.JobStatus> getJobStatuses(string airavataExperimentId)
    throws airavataErrors.InvalidRequestException, airavataErrors.ExperimentNotFoundException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.getJobDetails

list<experimentModel.JobDetails> getJobDetails(string airavataExperimentId)
    throws airavataErrors.InvalidRequestException, airavataErrors.ExperimentNotFoundException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.getDataTransferDetails

list<experimentModel.DataTransferDetails> getDataTransferDetails(string airavataExperimentId)
    throws airavataErrors.InvalidRequestException, airavataErrors.ExperimentNotFoundException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.cloneExperiment

string cloneExperiment(string existingExperimentID,
                       string newExperimentName)
    throws airavataErrors.InvalidRequestException, airavataErrors.ExperimentNotFoundException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Clone an specified experiment with a new name. A copy of the experiment configuration is made and is persisted with new metadata. The client has to subsequently update this configuration if needed and launch the cloned experiment.

@param newExperimentName experiment name that should be used in the cloned experiment

@param updatedExperiment Once an experiment is cloned, to disambiguate, the users are suggested to provide new metadata. This will again require the basic experiment metadata like the name and description, intended user, the gateway identifier and if the experiment should be shared public by default.

@return The server-side generated airavata experiment globally unique identifier for the newly cloned experiment.

@throws org.apache.airavata.model.error.InvalidRequestException For any incorrect forming of the request itself.

@throws org.apache.airavata.model.error.ExperimentNotFoundException If the specified experiment is not previously created, then an Experiment Not Found Exception is thrown.

@throws org.apache.airavata.model.error.AiravataClientException The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve: UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative step, then Airavata Registry will not have a provenance area setup. The client has to follow gateway registration steps and retry this request.

AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined. For now this is a place holder.

INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake is implemented, the authorization will be more substantial.

@throws org.apache.airavata.model.error.AiravataSystemException This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client rather an Airavata Administrator will be notified to take corrective action.


Function: Airavata.terminateExperiment

void terminateExperiment(string airavataExperimentId,
                         string tokenId)
    throws airavataErrors.InvalidRequestException, airavataErrors.ExperimentNotFoundException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Terminate a running experiment.

@param airavataExperimentId The identifier for the requested experiment. This is returned during the create experiment step.

@return This method call does not have a return value.

@throws org.apache.airavata.model.error.InvalidRequestException For any incorrect forming of the request itself.

@throws org.apache.airavata.model.error.ExperimentNotFoundException If the specified experiment is not previously created, then an Experiment Not Found Exception is thrown.

@throws org.apache.airavata.model.error.AiravataClientException The following list of exceptions are thrown which Airavata Client can take corrective actions to resolve: UNKNOWN_GATEWAY_ID - If a Gateway is not registered with Airavata as a one time administrative step, then Airavata Registry will not have a provenance area setup. The client has to follow gateway registration steps and retry this request.

AUTHENTICATION_FAILURE - How Authentication will be implemented is yet to be determined. For now this is a place holder.

INVALID_AUTHORIZATION - This will throw an authorization exception. When a more robust security hand-shake is implemented, the authorization will be more substantial.

@throws org.apache.airavata.model.error.AiravataSystemException This exception will be thrown for any Airavata Server side issues and if the problem cannot be corrected by the client rather an Airavata Administrator will be notified to take corrective action.


Function: Airavata.registerApplicationModule

string registerApplicationModule(string gatewayId,
                                 applicationDeploymentModel.ApplicationModule applicationModule)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Register a Application Module.

@param applicationModule Application Module Object created from the datamodel.

@return appModuleId Returns a server-side generated airavata appModule globally unique identifier.


Function: Airavata.getApplicationModule

applicationDeploymentModel.ApplicationModule getApplicationModule(string appModuleId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Fetch a Application Module.

@param appModuleId The identifier for the requested application module

@return applicationModule Returns a application Module Object.


Function: Airavata.updateApplicationModule

bool updateApplicationModule(string appModuleId,
                             applicationDeploymentModel.ApplicationModule applicationModule)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Update a Application Module.

@param appModuleId The identifier for the requested application module to be updated.

@param applicationModule Application Module Object created from the datamodel.

@return status Returns a success/failure of the update.


Function: Airavata.getAllAppModules

list<applicationDeploymentModel.ApplicationModule> getAllAppModules(string gatewayId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.deleteApplicationModule

bool deleteApplicationModule(string appModuleId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Delete a Application Module.

@param appModuleId The identifier for the requested application module to be deleted.

@return status Returns a success/failure of the deletion.


Function: Airavata.registerApplicationDeployment

string registerApplicationDeployment(string gatewayId,
                                     applicationDeploymentModel.ApplicationDeploymentDescription applicationDeployment)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Register a Application Deployment.

@param applicationModule Application Module Object created from the datamodel.

@return appDeploymentId Returns a server-side generated airavata appDeployment globally unique identifier.


Function: Airavata.getApplicationDeployment

applicationDeploymentModel.ApplicationDeploymentDescription getApplicationDeployment(string appDeploymentId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Fetch a Application Deployment.

@param appDeploymentId The identifier for the requested application module

@return applicationDeployment Returns a application Deployment Object.


Function: Airavata.updateApplicationDeployment

bool updateApplicationDeployment(string appDeploymentId,
                                 applicationDeploymentModel.ApplicationDeploymentDescription applicationDeployment)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Update a Application Deployment.

@param appDeploymentId The identifier for the requested application deployment to be updated.

@param appDeployment Application Deployment Object created from the datamodel.

@return status Returns a success/failure of the update.


Function: Airavata.deleteApplicationDeployment

bool deleteApplicationDeployment(string appDeploymentId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Delete a Application deployment.

@param appDeploymentId The identifier for the requested application deployment to be deleted.

@return status Returns a success/failure of the deletion.


Function: Airavata.getAllApplicationDeployments

list<applicationDeploymentModel.ApplicationDeploymentDescription> getAllApplicationDeployments(string gatewayId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Fetch all Application Deployment Descriptions.

@return list

Function: Airavata.getAppModuleDeployedResources

list<string> getAppModuleDeployedResources(string appModuleId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Fetch a list of Deployed Compute Hosts.

@param appModuleId The identifier for the requested application module

@return list Returns a list of Deployed Resources.


Function: Airavata.registerApplicationInterface

string registerApplicationInterface(string gatewayId,
                                    applicationInterfaceModel.ApplicationInterfaceDescription applicationInterface)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Register a Application Interface.

@param applicationModule Application Module Object created from the datamodel.

@return appInterfaceId Returns a server-side generated airavata application interface globally unique identifier.


Function: Airavata.getApplicationInterface

applicationInterfaceModel.ApplicationInterfaceDescription getApplicationInterface(string appInterfaceId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Fetch a Application Interface.

@param appInterfaceId The identifier for the requested application module

@return applicationInterface Returns a application Interface Object.


Function: Airavata.updateApplicationInterface

bool updateApplicationInterface(string appInterfaceId,
                                applicationInterfaceModel.ApplicationInterfaceDescription applicationInterface)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Update a Application Interface.

@param appInterfaceId The identifier for the requested application deployment to be updated.

@param appInterface Application Interface Object created from the datamodel.

@return status Returns a success/failure of the update.


Function: Airavata.deleteApplicationInterface

bool deleteApplicationInterface(string appInterfaceId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Delete a Application Interface.

@param appInterfaceId The identifier for the requested application interface to be deleted.

@return status Returns a success/failure of the deletion.


Function: Airavata.getAllApplicationInterfaceNames

map<string, string> getAllApplicationInterfaceNames(string gatewayId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Fetch name and id of Application Interface documents.

@return map Returns a list of application interfaces with corresponsing id's


Function: Airavata.getAllApplicationInterfaces

list<applicationInterfaceModel.ApplicationInterfaceDescription> getAllApplicationInterfaces(string gatewayId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Fetch all Application Interface documents.

@return map Returns a list of application interfaces documents


Function: Airavata.getApplicationInputs

list<applicationInterfaceModel.InputDataObjectType> getApplicationInputs(string appInterfaceId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Fetch the list of Application Inputs.

@param appInterfaceId The identifier for the requested application interface

@return list Returns a list of application inputs.


Function: Airavata.getApplicationOutputs

list<applicationInterfaceModel.OutputDataObjectType> getApplicationOutputs(string appInterfaceId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Fetch the list of Application Outputs.

@param appInterfaceId The identifier for the requested application interface

@return list Returns a list of application outputs.


Function: Airavata.getAvailableAppInterfaceComputeResources

map<string, string> getAvailableAppInterfaceComputeResources(string appInterfaceId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Fetch a list of all deployed Compute Hosts for a given application interfaces.

@param appInterfaceId The identifier for the requested application interface

@return map A map of registered compute resource id's and their corresponding hostnames. Deployments of each modules listed within the interfaces will be listed.


Function: Airavata.registerComputeResource

string registerComputeResource(computeResourceModel.ComputeResourceDescription computeResourceDescription)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Register a Compute Resource.

@param computeResourceDescription Compute Resource Object created from the datamodel.

@return computeResourceId Returns a server-side generated airavata compute resource globally unique identifier.


Function: Airavata.getComputeResource

computeResourceModel.ComputeResourceDescription getComputeResource(string computeResourceId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Fetch the given Compute Resource.

@param computeResourceId The identifier for the requested compute resource

@return computeResourceDescription Compute Resource Object created from the datamodel..


Function: Airavata.getAllComputeResourceNames

map<string, string> getAllComputeResourceNames()
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Fetch all registered Compute Resources.

@return A map of registered compute resource id's and thier corresponding hostnames. Compute Resource Object created from the datamodel..


Function: Airavata.updateComputeResource

bool updateComputeResource(string computeResourceId,
                           computeResourceModel.ComputeResourceDescription computeResourceDescription)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Update a Compute Resource.

@param computeResourceId The identifier for the requested compute resource to be updated.

@param computeResourceDescription Compute Resource Object created from the datamodel.

@return status Returns a success/failure of the update.


Function: Airavata.deleteComputeResource

bool deleteComputeResource(string computeResourceId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Delete a Compute Resource.

@param computeResourceId The identifier for the requested compute resource to be deleted.

@return status Returns a success/failure of the deletion.


Function: Airavata.addLocalSubmissionDetails

string addLocalSubmissionDetails(string computeResourceId,
                                 i32 priorityOrder,
                                 computeResourceModel.LOCALSubmission localSubmission)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Add a Local Job Submission details to a compute resource App catalog will return a jobSubmissionInterfaceId which will be added to the jobSubmissionInterfaces.

@param computeResourceId The identifier of the compute resource to which JobSubmission protocol to be added

@param priorityOrder Specify the priority of this job manager. If this is the only jobmanager, the priority can be zero.

@param localSubmission The LOCALSubmission object to be added to the resource.

@return status Returns the unique job submission id.


Function: Airavata.updateLocalSubmissionDetails

bool updateLocalSubmissionDetails(string jobSubmissionInterfaceId,
                                  computeResourceModel.LOCALSubmission localSubmission)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Update the given Local Job Submission details

@param jobSubmissionInterfaceId The identifier of the JobSubmission Interface to be updated.

@param localSubmission The LOCALSubmission object to be updated.

@return status Returns a success/failure of the deletion.


Function: Airavata.getLocalJobSubmission

computeResourceModel.LOCALSubmission getLocalJobSubmission(string jobSubmissionId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
This method returns localJobSubmission object @param jobSubmissionInterfaceId The identifier of the JobSubmission Interface to be retrieved. @return LOCALSubmission instance


Function: Airavata.addSSHJobSubmissionDetails

string addSSHJobSubmissionDetails(string computeResourceId,
                                  i32 priorityOrder,
                                  computeResourceModel.SSHJobSubmission sshJobSubmission)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Add a SSH Job Submission details to a compute resource App catalog will return a jobSubmissionInterfaceId which will be added to the jobSubmissionInterfaces.

@param computeResourceId The identifier of the compute resource to which JobSubmission protocol to be added

@param priorityOrder Specify the priority of this job manager. If this is the only jobmanager, the priority can be zero.

@param sshJobSubmission The SSHJobSubmission object to be added to the resource.

@return status Returns the unique job submission id.


Function: Airavata.getSSHJobSubmission

computeResourceModel.SSHJobSubmission getSSHJobSubmission(string jobSubmissionId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
This method returns SSHJobSubmission object @param jobSubmissionInterfaceId The identifier of the JobSubmission Interface to be retrieved. @return SSHJobSubmission instance


Function: Airavata.addUNICOREJobSubmissionDetails

string addUNICOREJobSubmissionDetails(string computeResourceId,
                                      i32 priorityOrder,
                                      computeResourceModel.UnicoreJobSubmission unicoreJobSubmission)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Add a UNICORE Job Submission details to a compute resource App catalog will return a jobSubmissionInterfaceId which will be added to the jobSubmissionInterfaces.

@param computeResourceId The identifier of the compute resource to which JobSubmission protocol to be added

@param priorityOrder Specify the priority of this job manager. If this is the only jobmanager, the priority can be zero.

@param unicoreJobSubmission The UnicoreJobSubmission object to be added to the resource.

@return status Returns the unique job submission id.


Function: Airavata.getUnicoreJobSubmission

computeResourceModel.UnicoreJobSubmission getUnicoreJobSubmission(string jobSubmissionId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
* This method returns UnicoreJobSubmission object * @param jobSubmissionInterfaceId * The identifier of the JobSubmission Interface to be retrieved. * @return UnicoreJobSubmission instance *

Function: Airavata.addCloudJobSubmissionDetails

string addCloudJobSubmissionDetails(string computeResourceId,
                                    i32 priorityOrder,
                                    computeResourceModel.CloudJobSubmission cloudSubmission)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
* Add a Cloud Job Submission details to a compute resource * App catalog will return a jobSubmissionInterfaceId which will be added to the jobSubmissionInterfaces. * * @param computeResourceId * The identifier of the compute resource to which JobSubmission protocol to be added * * @param priorityOrder * Specify the priority of this job manager. If this is the only jobmanager, the priority can be zero. * * @param sshJobSubmission * The SSHJobSubmission object to be added to the resource. * * @return status * Returns the unique job submission id. *

Function: Airavata.getCloudJobSubmission

computeResourceModel.CloudJobSubmission getCloudJobSubmission(string jobSubmissionId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
* This method returns cloudJobSubmission object * @param jobSubmissionInterfaceI * The identifier of the JobSubmission Interface to be retrieved. * @return CloudJobSubmission instance *

Function: Airavata.updateSSHJobSubmissionDetails

bool updateSSHJobSubmissionDetails(string jobSubmissionInterfaceId,
                                   computeResourceModel.SSHJobSubmission sshJobSubmission)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Update the given SSH Job Submission details

@param jobSubmissionInterfaceId The identifier of the JobSubmission Interface to be updated.

@param sshJobSubmission The SSHJobSubmission object to be updated.

@return status Returns a success/failure of the deletion.


Function: Airavata.updateCloudJobSubmissionDetails

bool updateCloudJobSubmissionDetails(string jobSubmissionInterfaceId,
                                     computeResourceModel.CloudJobSubmission sshJobSubmission)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Update the given SSH Job Submission details

@param jobSubmissionInterfaceId The identifier of the JobSubmission Interface to be updated.

@param cloudJobSubmission The CloudJobSubmission object to be updated.

@return status Returns a success/failure of the deletion.


Function: Airavata.updateUnicoreJobSubmissionDetails

bool updateUnicoreJobSubmissionDetails(string jobSubmissionInterfaceId,
                                       computeResourceModel.UnicoreJobSubmission unicoreJobSubmission)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.addLocalDataMovementDetails

string addLocalDataMovementDetails(string computeResourceId,
                                   i32 priorityOrder,
                                   computeResourceModel.LOCALDataMovement localDataMovement)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Add a Local data movement details to a compute resource App catalog will return a dataMovementInterfaceId which will be added to the dataMovementInterfaces.

@param computeResourceId The identifier of the compute resource to which JobSubmission protocol to be added

@param priorityOrder Specify the priority of this job manager. If this is the only jobmanager, the priority can be zero.

@param localDataMovement The LOCALDataMovement object to be added to the resource.

@return status Returns the unique job submission id.


Function: Airavata.updateLocalDataMovementDetails

bool updateLocalDataMovementDetails(string dataMovementInterfaceId,
                                    computeResourceModel.LOCALDataMovement localDataMovement)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Update the given Local data movement details

@param dataMovementInterfaceId The identifier of the data movement Interface to be updated.

@param localDataMovement The LOCALDataMovement object to be updated.

@return status Returns a success/failure of the update.


Function: Airavata.getLocalDataMovement

computeResourceModel.LOCALDataMovement getLocalDataMovement(string dataMovementId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
* This method returns local datamovement object * @param dataMovementId * The identifier of the datamovement Interface to be retrieved. * @return LOCALDataMovement instance *

Function: Airavata.addSCPDataMovementDetails

string addSCPDataMovementDetails(string computeResourceId,
                                 i32 priorityOrder,
                                 computeResourceModel.SCPDataMovement scpDataMovement)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Add a SCP data movement details to a compute resource App catalog will return a dataMovementInterfaceId which will be added to the dataMovementInterfaces.

@param computeResourceId The identifier of the compute resource to which JobSubmission protocol to be added

@param priorityOrder Specify the priority of this job manager. If this is the only jobmanager, the priority can be zero.

@param scpDataMovement The SCPDataMovement object to be added to the resource.

@return status Returns the unique job submission id.


Function: Airavata.updateSCPDataMovementDetails

bool updateSCPDataMovementDetails(string dataMovementInterfaceId,
                                  computeResourceModel.SCPDataMovement scpDataMovement)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Update the given scp data movement details App catalog will return a dataMovementInterfaceId which will be added to the dataMovementInterfaces.

@param dataMovementInterfaceId The identifier of the data movement Interface to be updated.

@param scpDataMovement The SCPDataMovement object to be updated.

@return status Returns a success/failure of the update.


Function: Airavata.getSCPDataMovement

computeResourceModel.SCPDataMovement getSCPDataMovement(string dataMovementId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
* This method returns SCP datamovement object * @param dataMovementId * The identifier of the datamovement Interface to be retrieved. * @return SCPDataMovement instance *

Function: Airavata.addUnicoreDataMovementDetails

string addUnicoreDataMovementDetails(string computeResourceId,
                                     i32 priorityOrder,
                                     computeResourceModel.UnicoreDataMovement unicoreDataMovement)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.updateUnicoreDataMovementDetails

bool updateUnicoreDataMovementDetails(string dataMovementInterfaceId,
                                      computeResourceModel.UnicoreDataMovement unicoreDataMovement)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.getUnicoreDataMovement

computeResourceModel.UnicoreDataMovement getUnicoreDataMovement(string dataMovementId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.addGridFTPDataMovementDetails

string addGridFTPDataMovementDetails(string computeResourceId,
                                     i32 priorityOrder,
                                     computeResourceModel.GridFTPDataMovement gridFTPDataMovement)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Add a GridFTP data movement details to a compute resource App catalog will return a dataMovementInterfaceId which will be added to the dataMovementInterfaces.

@param computeResourceId The identifier of the compute resource to which JobSubmission protocol to be added

@param priorityOrder Specify the priority of this job manager. If this is the only jobmanager, the priority can be zero.

@param gridFTPDataMovement The GridFTPDataMovement object to be added to the resource.

@return status Returns the unique job submission id.


Function: Airavata.updateGridFTPDataMovementDetails

bool updateGridFTPDataMovementDetails(string dataMovementInterfaceId,
                                      computeResourceModel.GridFTPDataMovement gridFTPDataMovement)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Update the given GridFTP data movement details to a compute resource App catalog will return a dataMovementInterfaceId which will be added to the dataMovementInterfaces.

@param dataMovementInterfaceId The identifier of the data movement Interface to be updated.

@param gridFTPDataMovement The GridFTPDataMovement object to be updated.

@return status Returns a success/failure of the updation.


Function: Airavata.getGridFTPDataMovement

computeResourceModel.GridFTPDataMovement getGridFTPDataMovement(string dataMovementId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
* This method returns GridFTP datamovement object * @param dataMovementId * The identifier of the datamovement Interface to be retrieved. * @return GridFTPDataMovement instance *

Function: Airavata.changeJobSubmissionPriority

bool changeJobSubmissionPriority(string jobSubmissionInterfaceId,
                                 i32 newPriorityOrder)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Change the priority of a given job submisison interface

@param jobSubmissionInterfaceId The identifier of the JobSubmission Interface to be changed

@param priorityOrder The new priority of the job manager interface.

@return status Returns a success/failure of the change.


Function: Airavata.changeDataMovementPriority

bool changeDataMovementPriority(string dataMovementInterfaceId,
                                i32 newPriorityOrder)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Change the priority of a given data movement interface

@param dataMovementInterfaceId The identifier of the DataMovement Interface to be changed

@param priorityOrder The new priority of the data movement interface.

@return status Returns a success/failure of the change.


Function: Airavata.changeJobSubmissionPriorities

bool changeJobSubmissionPriorities(map<string, i32> jobSubmissionPriorityMap)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Change the priorities of a given set of job submission interfaces

@param jobSubmissionPriorityMap A Map of identifiers of the JobSubmission Interfaces and thier associated priorities to be set.

@return status Returns a success/failure of the changes.


Function: Airavata.changeDataMovementPriorities

bool changeDataMovementPriorities(map<string, i32> dataMovementPriorityMap)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Change the priorities of a given set of data movement interfaces

@param dataMovementPriorityMap A Map of identifiers of the DataMovement Interfaces and thier associated priorities to be set.

@return status Returns a success/failure of the changes.


Function: Airavata.deleteJobSubmissionInterface

bool deleteJobSubmissionInterface(string computeResourceId,
                                  string jobSubmissionInterfaceId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Delete a given job submisison interface

@param jobSubmissionInterfaceId The identifier of the JobSubmission Interface to be changed

@return status Returns a success/failure of the deletion.


Function: Airavata.deleteDataMovementInterface

bool deleteDataMovementInterface(string computeResourceId,
                                 string dataMovementInterfaceId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Delete a given data movement interface

@param dataMovementInterfaceId The identifier of the DataMovement Interface to be changed

@return status Returns a success/failure of the deletion.


Function: Airavata.registerResourceJobManager

string registerResourceJobManager(computeResourceModel.ResourceJobManager resourceJobManager)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.updateResourceJobManager

bool updateResourceJobManager(string resourceJobManagerId,
                              computeResourceModel.ResourceJobManager updatedResourceJobManager)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.getResourceJobManager

computeResourceModel.ResourceJobManager getResourceJobManager(string resourceJobManagerId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.deleteResourceJobManager

bool deleteResourceJobManager(string resourceJobManagerId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.deleteBatchQueue

bool deleteBatchQueue(string computeResourceId,
                      string queueName)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.registerGatewayResourceProfile

string registerGatewayResourceProfile(gatewayResourceProfileModel.GatewayResourceProfile gatewayResourceProfile)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Register a Gateway Resource Profile.

@param gatewayResourceProfile Gateway Resource Profile Object. The GatewayID should be obtained from Airavata gateway registration and passed to register a corresponding resource profile.

@return status Returns a success/failure of the update.


Function: Airavata.getGatewayResourceProfile

gatewayResourceProfileModel.GatewayResourceProfile getGatewayResourceProfile(string gatewayID)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Fetch the given Gateway Resource Profile.

@param gatewayID The identifier for the requested gateway resource

@return gatewayResourceProfile Gateway Resource Profile Object.


Function: Airavata.updateGatewayResourceProfile

bool updateGatewayResourceProfile(string gatewayID,
                                  gatewayResourceProfileModel.GatewayResourceProfile gatewayResourceProfile)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Update a Gateway Resource Profile.

@param gatewayID The identifier for the requested gateway resource to be updated.

@param gatewayResourceProfile Gateway Resource Profile Object.

@return status Returns a success/failure of the update.


Function: Airavata.deleteGatewayResourceProfile

bool deleteGatewayResourceProfile(string gatewayID)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Delete the given Gateway Resource Profile.

@param gatewayID The identifier for the requested gateway resource to be deleted.

@return status Returns a success/failure of the deletion.


Function: Airavata.addGatewayComputeResourcePreference

bool addGatewayComputeResourcePreference(string gatewayID,
                                         string computeResourceId,
                                         gatewayResourceProfileModel.ComputeResourcePreference computeResourcePreference)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Add a Compute Resource Preference to a registered gateway profile.

@param gatewayID The identifier for the gateway profile to be added.

@param computeResourceId Preferences related to a particular compute resource

@param computeResourcePreference The ComputeResourcePreference object to be added to the resource profile.

@return status Returns a success/failure of the addition. If a profile already exists, this operation will fail. Instead an update should be used.


Function: Airavata.getGatewayComputeResourcePreference

gatewayResourceProfileModel.ComputeResourcePreference getGatewayComputeResourcePreference(string gatewayID,
                                                                                          string computeResourceId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Fetch a Compute Resource Preference of a registered gateway profile.

@param gatewayID The identifier for the gateway profile to be requested

@param computeResourceId Preferences related to a particular compute resource

@return computeResourcePreference Returns the ComputeResourcePreference object.


Function: Airavata.getAllGatewayComputeResourcePreferences

list<gatewayResourceProfileModel.ComputeResourcePreference> getAllGatewayComputeResourcePreferences(string gatewayID)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Fetch all Compute Resource Preferences of a registered gateway profile.

@param gatewayID The identifier for the gateway profile to be requested

@return computeResourcePreference Returns the ComputeResourcePreference object.


Function: Airavata.getAllGatewayComputeResources

list<gatewayResourceProfileModel.GatewayResourceProfile> getAllGatewayComputeResources()
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Fetch all gateway profiles registered


Function: Airavata.updateGatewayComputeResourcePreference

bool updateGatewayComputeResourcePreference(string gatewayID,
                                            string computeResourceId,
                                            gatewayResourceProfileModel.ComputeResourcePreference computeResourcePreference)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Update a Compute Resource Preference to a registered gateway profile.

@param gatewayID The identifier for the gateway profile to be updated.

@param computeResourceId Preferences related to a particular compute resource

@param computeResourcePreference The ComputeResourcePreference object to be updated to the resource profile.

@return status Returns a success/failure of the updation.


Function: Airavata.deleteGatewayComputeResourcePreference

bool deleteGatewayComputeResourcePreference(string gatewayID,
                                            string computeResourceId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException
Delete the Compute Resource Preference of a registered gateway profile.

@param gatewayID The identifier for the gateway profile to be deleted.

@param computeResourceId Preferences related to a particular compute resource

@return status Returns a success/failure of the deletion.


Function: Airavata.getAllWorkflows

list<string> getAllWorkflows(string gatewayId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.getWorkflow

workflowDataModel.Workflow getWorkflow(string workflowTemplateId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.deleteWorkflow

void deleteWorkflow(string workflowTemplateId)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.registerWorkflow

string registerWorkflow(string gatewayId,
                        workflowDataModel.Workflow workflow)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.updateWorkflow

void updateWorkflow(string workflowTemplateId,
                    workflowDataModel.Workflow workflow)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.getWorkflowTemplateId

string getWorkflowTemplateId(string workflowName)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException

Function: Airavata.isWorkflowExistWithName

bool isWorkflowExistWithName(string workflowName)
    throws airavataErrors.InvalidRequestException, airavataErrors.AiravataClientException, airavataErrors.AiravataSystemException