Updated Branches:
refs/heads/master a52692e7f -> 3070c3d9b
http://git-wip-us.apache.org/repos/asf/airavata/blob/3070c3d9/modules/thrift-interfaces/airavataAPI.thrift
----------------------------------------------------------------------
diff --git a/modules/thrift-interfaces/airavataAPI.thrift b/modules/thrift-interfaces/airavataAPI.thrift
deleted file mode 100644
index 1b804d3..0000000
--- a/modules/thrift-interfaces/airavataAPI.thrift
+++ /dev/null
@@ -1,413 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-/*
- * Application Programming Interface definition for Apache Airavata Services.
- * this parent thrift file is contains all service interfaces. The data models are
- * described in respective thrift files.
-*/
-
-include "airavataErrors.thrift"
-include "airavataDataModel.thrift"
-include "experimentModel.thrift"
-
-namespace java org.apache.airavata.api
-namespace php Airavata.API
-namespace cpp airavata.api
-namespace perl AiravataAPI
-namespace py airavata.api
-namespace js AiravataAPI
-
-/*
- * 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.
-*/
-const string VERSION = "0.12.0"
-
-service Airavata {
-
-/*
- * Apache Airavata API Service Methods. For data structures associated in the signatures,
please see included thrift files
-*/
-
- /** Query Airavata to fetch the API version */
- string GetAPIVersion(),
-
- /**
- * 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.api.error.InvalidRequestException
- * For any incorrect forming of the request itself.
- *
- * @throws org.apache.airavata.api.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.api.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.
- *
- */
- string createExperiment(1: experimentModel.BasicMetadata basicExperimentMetadata)
- throws (1: airavataErrors.InvalidRequestException ire,
- 2: airavataErrors.AiravataClientException ace,
- 3: airavataErrors.AiravataSystemException ase)
-
- /**
- * 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.api.error.InvalidRequestException
- * For any incorrect forming of the request itself.
- *
- * @throws org.apache.airavata.api.error.ExperimentNotFoundException
- * If the specified experiment is not previously created, then an Experiment Not Found
Exception is thrown.
- *
- * @throws org.apache.airavata.api.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.api.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.
- *
- */
- experimentModel.BasicMetadata getBasicExperimentMetadata(1: string airavataExperimentId)
- throws (1: airavataErrors.InvalidRequestException ire,
- 2: airavataErrors.ExperimentNotFoundException enf,
- 3: airavataErrors.AiravataClientException ace,
- 4: airavataErrors.AiravataSystemException ase)
-
- /**
- * 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.api.error.InvalidRequestException
- * For any incorrect forming of the request itself.
- *
- * @throws org.apache.airavata.api.error.ExperimentNotFoundException
- * If the specified experiment is not previously created, then an Experiment Not Found
Exception is thrown.
- *
- * @throws org.apache.airavata.api.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.api.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.
- *
- */
- void configureExperiment(1: string airavataExperimentId,
- 2: experimentModel.ConfigurationData experimentConfigurationData)
- throws (1: airavataErrors.InvalidRequestException ire,
- 2: airavataErrors.ExperimentNotFoundException enf,
- 3: airavataErrors.AiravataClientException ace,
- 4: airavataErrors.AiravataSystemException ase)
-
- /**
- * Fetch the previously configured experiment configuration information.
- *
- * @param airavataExperimentId
- * The identifier for the requested experiment. This is returned during the create experiment
step.
- *
- * @return
- * This method returns the previously configured experiment configuration data.
- *
- * @throws org.apache.airavata.api.error.InvalidRequestException
- * For any incorrect forming of the request itself.
- *
- * @throws org.apache.airavata.api.error.ExperimentNotFoundException
- * If the specified experiment is not previously created, then an Experiment Not Found
Exception is thrown.
- *
- * @throws org.apache.airavata.api.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.api.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.
- *
- */
- experimentModel.ConfigurationData getExperimentConfiguration(1: string airavataExperimentId)
- throws (1: airavataErrors.InvalidRequestException ire,
- 2: airavataErrors.ExperimentNotFoundException enf,
- 3: airavataErrors.AiravataClientException ace,
- 4: airavataErrors.AiravataSystemException ase)
-
- /**
- * 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.api.error.InvalidRequestException
- * For any incorrect forming of the request itself.
- *
- * @throws org.apache.airavata.api.error.ExperimentNotFoundException
- * If the specified experiment is not previously created, then an Experiment Not Found
Exception is thrown.
- *
- * @throws org.apache.airavata.api.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.api.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.
- *
- */
- void launchConfiguredExperiment(1: string airavataExperimentId
- 2: string airavataCredStoreToken)
- throws (1: airavataErrors.InvalidRequestException ire,
- 2: airavataErrors.ExperimentNotFoundException enf,
- 3: airavataErrors.AiravataClientException ace,
- 4: airavataErrors.AiravataSystemException ase)
-
- /**
- * Configure and Launch a previously created experiment with required inputs, scheduling,
security and other quality of service
- * parameters. This method also launches the experiment after it is configured. If you
would like to configure only
- * and launch at a later time or partially configure then ConfigureExperiment should
be used.
- *
- * @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.
- *
- * @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.
- *
- * @return
- * The server-side generated experiment GUID.
- *
- * @throws org.apache.airavata.api.error.InvalidRequestException
- * For any incorrect forming of the request itself.
- *
- * @throws org.apache.airavata.api.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.api.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.
- *
- */
- string configureAndLaunchExperiment (1: string airavataExperimentId
- 2: experimentModel.ConfigurationData experimentConfigurationData,
- 3: string airavataCredStoreToken)
- throws (1: airavataErrors.InvalidRequestException ire,
- 2: airavataErrors.ExperimentNotFoundException enf,
- 3: airavataErrors.AiravataClientException ace,
- 4: airavataErrors.AiravataSystemException ase)
-
- /**
- * 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 airavataExperimentIdToBeCloned
- * This is the experiment identifier that is to be cloned.
- *
- * @param basicExperimentMetadata
- * 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.api.error.InvalidRequestException
- * For any incorrect forming of the request itself.
- *
- * @throws org.apache.airavata.api.error.ExperimentNotFoundException
- * If the specified experiment is not previously created, then an Experiment Not Found
Exception is thrown.
- *
- * @throws org.apache.airavata.api.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.api.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.
- *
- */
- string cloneExperimentConfiguration(1: string airavataExperimentIdToBeCloned,
- 2: experimentModel.BasicMetadata basicExperimentMetadata)
- throws (1: airavataErrors.InvalidRequestException ire,
- 2: airavataErrors.ExperimentNotFoundException enf,
- 3: airavataErrors.AiravataClientException ace,
- 4: airavataErrors.AiravataSystemException ase)
-
- /**
- * 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.api.error.InvalidRequestException
- * For any incorrect forming of the request itself.
- *
- * @throws org.apache.airavata.api.error.ExperimentNotFoundException
- * If the specified experiment is not previously created, then an Experiment Not Found
Exception is thrown.
- *
- * @throws org.apache.airavata.api.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.api.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.
- *
- */
- void terminateExperiment(1: string airavataExperimentId)
- throws (1: airavataErrors.InvalidRequestException ire,
- 2: airavataErrors.ExperimentNotFoundException enf,
- 3: airavataErrors.AiravataClientException ace,
- 4: airavataErrors.AiravataSystemException ase)
-
-}
http://git-wip-us.apache.org/repos/asf/airavata/blob/3070c3d9/modules/thrift-interfaces/airavataDataModel.thrift
----------------------------------------------------------------------
diff --git a/modules/thrift-interfaces/airavataDataModel.thrift b/modules/thrift-interfaces/airavataDataModel.thrift
deleted file mode 100644
index 080676e..0000000
--- a/modules/thrift-interfaces/airavataDataModel.thrift
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-include "experimentModel.thrift"
-
-namespace java org.apache.airavata.model
-
-/*
- * This file describes the definitions of the Airavata Execution Data Structures. Each of
the
- * language specific Airavata Client SDK's will translate this neutral data model into
an
- * appropriate form for passing to the Airavata Server Execution API Calls.
-*/
http://git-wip-us.apache.org/repos/asf/airavata/blob/3070c3d9/modules/thrift-interfaces/airavataErrors.thrift
----------------------------------------------------------------------
diff --git a/modules/thrift-interfaces/airavataErrors.thrift b/modules/thrift-interfaces/airavataErrors.thrift
deleted file mode 100644
index a3b4490..0000000
--- a/modules/thrift-interfaces/airavataErrors.thrift
+++ /dev/null
@@ -1,148 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-/*
-* This file describes the definitions of the Error Messages that can occur
-* when invoking Apache Airavata Services through the API. In addition Thrift provides
-* built in funcationality to raise TApplicationException for all internal server errors.
-*/
-
-namespace java org.apache.airavata.api.error
-namespace php Airavata.API.Error
-namespace cpp airavata.api.error
-namespace perl AiravataAPIError
-namespace py airavata.api.error
-namespace js AiravataAPIError
-
-/**
- * A list of Airavata API Error Message Types
- *
- * UNKNOWN: No information available about the error
- *
- * PERMISSION_DENIED: Not permitted to perform action
- *
- * INTERNAL_ERROR: Unexpected problem with the service
- *
- * AUTHENTICATION_FAILURE: The client failed to authenticate.
- *
- * INVALID_AUTHORIZATION: Security Token and/or Username and/or password is incorrect
- *
- * AUTHORIZATION_EXPIRED: Authentication token expired
- *
- * UNKNOWN_GATEWAY_ID: The gateway is not registered with Airavata.
- *
- * UNSUPPORTED_OPERATION: Operation denied because it is currently unsupported.
- */
-enum AiravataErrorType {
- UNKNOWN,
- PERMISSION_DENIED,
- INTERNAL_ERROR,
- AUTHENTICATION_FAILURE,
- INVALID_AUTHORIZATION,
- AUTHORIZATION_EXPIRED,
- UNKNOWN_GATEWAY_ID,
- UNSUPPORTED_OPERATION
-}
-
-/**
- * This exception is thrown when a client asks to perform an operation on an experiment that
does not exist.
- *
- * identifier: A description of the experiment that was not found on the server.
- *
- * key: The value passed from the client in the identifier, which was not found.
- */
-exception ExperimentNotFoundException {
- 1: optional string identifier,
- 2: optional string key
-}
-
-/**
-* This exception is thrown for invalid requests that occur from any reasons like required
input parameters are missing,
-* or a parameter is malformed.
-*
-* message: contains the associated error message.
-*/
-exception InvalidRequestException {
- 1: required string message
-}
-
-
-/**
-* This exception is thrown when RPC timeout gets exceeded.
-*/
-exception TimedOutException {
-}
-
-/**
-* This exception is thrown for invalid authentication requests.
-*
-* message: contains the cause of the authorization failure.
-*/
-exception AuthenticationException {
- 1: required string message
-}
-
-/**
-* This exception is thrown for invalid authorization requests such user does not have acces
to an aplication or resource.
-*
-* message: contains the authorization failure message
-*/
-exception AuthorizationException {
- 1: required string message
-}
-
-
-/**
- * This exception is thrown by Airavata Services when a call fails as a result of
- * a problem that a client may be able to resolve. For example, if the user
- * attempts to execute an application on a resource gateway does not have access to.
- *
- * This exception would not be used for internal system errors that do not
- * reflect user actions, but rather reflect a problem within the service that
- * the client cannot resolve.
- *
- * airavataErrorType: The message type indicating the error that occurred.
- * must be one of the values of AiravataErrorType.
- *
- * parameter: If the error applied to a particular input parameter, this will
- * indicate which parameter.
- */
-exception AiravataClientException {
- 1: required AiravataErrorType airavataErrorType,
- 2: optional string parameter
-}
-
-
-/**
- * This exception is thrown by Airavata Services when a call fails as a result of
- * a problem in the service that could not be changed through client's action.
- *
- * airavataErrorType: The message type indicating the error that occurred.
- * must be one of the values of AiravataErrorType.
- *
- * message: This may contain additional information about the error
- *
- */
-exception AiravataSystemException {
- 1: required AiravataErrorType airavataErrorType,
- 2: optional string message,
-}
-
-
http://git-wip-us.apache.org/repos/asf/airavata/blob/3070c3d9/modules/thrift-interfaces/experimentModel.thrift
----------------------------------------------------------------------
diff --git a/modules/thrift-interfaces/experimentModel.thrift b/modules/thrift-interfaces/experimentModel.thrift
deleted file mode 100644
index 71e9e6a..0000000
--- a/modules/thrift-interfaces/experimentModel.thrift
+++ /dev/null
@@ -1,139 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-
-namespace java org.apache.airavata.model.experiment
-
-/*
- * This file describes the definitions of the Airavata Experiment Data Structures. Each of
the
- * language specific Airavata Client SDK's will translate this neutral data model into
an
- * appropriate form for passing to the Airavata Server Execution API Calls.
- *
- * The Experiment data model is divided into 6 categories: experiment metadata, experiment
configuration
- * data, experiment generated data, experiment monitoring data, provenance data and error
handling data.
- *
- * Experiment Metadata:
- * this structure holds the owner of the experiment, name, description, creation and
last update times,
- * last known status, and if is private to the user or shared publicly.
- * FIXME: To start with, we will not define this but populate it inferring data from other
structures. This
- * structure needs revisiting once the API gets used.
- *
- * Experiment Configuration Data:
- * this structure will contain all user provided configuration data.
- *
- * Experiment Generated Data:
- * this structure describes all intermediate and output data generated by executing the
experiment.
- *
- * Experiment Monitoring Data:
- * this structure contains fine grained experiment status information.
- *
- * Experiment Summary Data:
- * this is derived information from all experiment objects to provide a quick summary.
- *
-*/
-
-/**
- * A structure holding the basic experiment metadata.
- *
- * userName:
- * The user name of the targeted gateway end user on whose behalf the experiment is being
created.
- * the associated gateway identity can only be inferred from the security hand-shake
so as to avoid
- * authorized Airavata Clients mimicking an unauthorized request. If a gateway is not
registered with
- * Airavata, an authorization exception is thrown.
- *
- * experimentName:
- * The name of the experiment as defined by the user. The name need not be unique as uniqueness
is enforced
- * by the generated experiment id.
- *
- * experimentDescription:
- * The verbose description of the experiment. This is an optional parameter.
-*/
-struct BasicMetadata {
- 1: required string userName,
- 2: required string experimentName,
- 3: optional string experimentDescription,
- 4: optional bool shareExperimentPublicly = 0
-}
-
-/**
- * A structure holding the Computational Resource Scheduling.
- *
-*/
-struct ComputationalResourceScheduling {
- 1:required bool airavataAutoSchedule = 1
- 2:required bool overrideManualScheduledParams = 0,
- 3:optional string resourceHostId,
- 4:optional i32 totalCPUCount,
- 5:optional i32 nodeCount,
- 6:optional i32 numberOfThreads,
- 7:optional string queueName,
- 8:optional i32 wallTimeLimit,
- 9:optional i32 jobStartTime,
- 10:optional i32 totalPhysicalMemory,
- 11:optional string ComputationalProjectAccount
-}
-
-/**
- * A structure holding specified input data handling.
- *
-*/
-struct AdvancedInputDataHandling {
- 1:optional bool stageInputFilesToWorkingDir = 0,
- 2: optional string workingDirectoryParent,
- 3: optional string uniqueWorkingDirectory,
- 4: optional bool cleanUpWorkingDirAfterJob = 0
-}
-
-/**
- * A structure holding specified output data handling.
- *
-*/
-struct AdvancedOutputDataHandling {
- 2:optional string outputdataDir,
- 3:optional string dataRegistryURL,
- 4:optional bool persistOutputData = 1
-}
-
-/**
- * A structure holding Quality of Service Parameters.
- *
-*/
-struct QualityOfServiceParams {
- 1:optional string startExecutionAt,
- 2:optional string executeBefore,
- 3:optional i32 numberofRetries,
-}
-
-/**
- * A structure holding the experiment configuration.
- *
- *
-*/
-struct ConfigurationData {
- 1: optional BasicMetadata basicMetadata,
- 2: optional string applicationId,
- 3: optional string applicationVersion,
- 4: optional string workflowTemplateId,
- 5: optional string worklfowTemplateVersion,
- 6: optional map<string,string> experimentInputs,
- 7: optional ComputationalResourceScheduling computationalResourceScheduling,
- 8: optional AdvancedInputDataHandling advanceInputDataHandling,
- 9: optional AdvancedOutputDataHandling advanceOutputDataHandling,
- 10: optional QualityOfServiceParams qosParams
-}
|