You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sm...@apache.org on 2015/06/11 19:12:20 UTC
[10/16] airavata git commit: Updating Airavata to use Thrift version
0.9.2 - AIRAVATA-1707
http://git-wip-us.apache.org/repos/asf/airavata/blob/a5cb91f0/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Error/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Error/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Error/Types.php
index de30884..7d26178 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Error/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Error/Types.php
@@ -2,7 +2,7 @@
namespace Airavata\API\Error;
/**
- * Autogenerated by Thrift Compiler (0.9.1)
+ * Autogenerated by Thrift Compiler (0.9.2)
*
* DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
* @generated
@@ -17,6 +17,25 @@ use Thrift\Protocol\TBinaryProtocolAccelerated;
use Thrift\Exception\TApplicationException;
+/**
+ * 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.
+ */
final class AiravataErrorType {
const UNKNOWN = 0;
const PERMISSION_DENIED = 1;
@@ -38,9 +57,19 @@ final class AiravataErrorType {
);
}
+/**
+ * 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.
+ */
class ExperimentNotFoundException extends TException {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $message = null;
public function __construct($vals=null) {
@@ -110,9 +139,17 @@ class ExperimentNotFoundException extends TException {
}
+/**
+ * 1: optional string identifier,
+ * 2: optional string key
+ *
+ */
class ProjectNotFoundException extends TException {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $message = null;
public function __construct($vals=null) {
@@ -182,9 +219,18 @@ class ProjectNotFoundException extends TException {
}
+/**
+ * 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.
+ */
class InvalidRequestException extends TException {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $message = null;
public function __construct($vals=null) {
@@ -254,6 +300,9 @@ class InvalidRequestException extends TException {
}
+/**
+ * This exception is thrown when RPC timeout gets exceeded.
+ */
class TimedOutException extends TException {
static $_TSPEC;
@@ -304,9 +353,17 @@ class TimedOutException extends TException {
}
+/**
+ * This exception is thrown for invalid authentication requests.
+ *
+ * message: contains the cause of the authorization failure.
+ */
class AuthenticationException extends TException {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $message = null;
public function __construct($vals=null) {
@@ -376,9 +433,17 @@ class AuthenticationException extends TException {
}
+/**
+ * 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
+ */
class AuthorizationException extends TException {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $message = null;
public function __construct($vals=null) {
@@ -448,10 +513,31 @@ class AuthorizationException extends TException {
}
+/**
+ * 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.
+ */
class AiravataClientException extends TException {
static $_TSPEC;
+ /**
+ * @var int
+ */
public $airavataErrorType = null;
+ /**
+ * @var string
+ */
public $parameter = null;
public function __construct($vals=null) {
@@ -543,7 +629,13 @@ class AiravataClientException extends TException {
class ValidatorResult {
static $_TSPEC;
+ /**
+ * @var bool
+ */
public $result = null;
+ /**
+ * @var string
+ */
public $errorDetails = null;
public function __construct($vals=null) {
@@ -635,7 +727,13 @@ class ValidatorResult {
class ValidationResults {
static $_TSPEC;
+ /**
+ * @var bool
+ */
public $validationState = null;
+ /**
+ * @var \Airavata\API\Error\ValidatorResult[]
+ */
public $validationResultList = null;
public function __construct($vals=null) {
@@ -755,7 +853,13 @@ class ValidationResults {
class LaunchValidationException extends TException {
static $_TSPEC;
+ /**
+ * @var \Airavata\API\Error\ValidationResults
+ */
public $validationResult = null;
+ /**
+ * @var string
+ */
public $errorMessage = null;
public function __construct($vals=null) {
@@ -849,10 +953,26 @@ class LaunchValidationException extends TException {
}
+/**
+ * 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
+ *
+ */
class AiravataSystemException extends TException {
static $_TSPEC;
+ /**
+ * @var int
+ */
public $airavataErrorType = null;
+ /**
+ * @var string
+ */
public $message = null;
public function __construct($vals=null) {
http://git-wip-us.apache.org/repos/asf/airavata/blob/a5cb91f0/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Types.php
index 481421f..7a574d4 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/API/Types.php
@@ -2,7 +2,7 @@
namespace Airavata\API;
/**
- * Autogenerated by Thrift Compiler (0.9.1)
+ * Autogenerated by Thrift Compiler (0.9.2)
*
* DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
* @generated
@@ -17,6 +17,26 @@ use Thrift\Protocol\TBinaryProtocolAccelerated;
use Thrift\Exception\TApplicationException;
-$GLOBALS['airavataAPI_CONSTANTS']['AIRAVATA_API_VERSION'] = "0.15.0";
+final class Constant extends \Thrift\Type\TConstant {
+ static protected $AIRAVATA_API_VERSION;
+
+ static protected function init_AIRAVATA_API_VERSION() {
+ return /**
+ * 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.
+ *
+ */
+"0.15.0";
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/a5cb91f0/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/AppDeployment/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/AppDeployment/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/AppDeployment/Types.php
index f4bde8f..0b10708 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/AppDeployment/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/AppDeployment/Types.php
@@ -2,7 +2,7 @@
namespace Airavata\Model\AppCatalog\AppDeployment;
/**
- * Autogenerated by Thrift Compiler (0.9.1)
+ * Autogenerated by Thrift Compiler (0.9.2)
*
* DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
* @generated
@@ -17,6 +17,22 @@ use Thrift\Protocol\TBinaryProtocolAccelerated;
use Thrift\Exception\TApplicationException;
+/**
+ * Enumeration of application parallelism supported by Airavata
+ *
+ * SERIAL:
+ * Single processor applications without any parallelization.
+ *
+ * MPI:
+ * Messaging Passing Interface.
+ *
+ * OPENMP:
+ * Shared Memory Implementtaion.
+ *
+ * OPENMP_MPI:
+ * Hybrid Applications.
+ *
+ */
final class ApplicationParallelismType {
const SERIAL = 0;
const MPI = 1;
@@ -30,10 +46,25 @@ final class ApplicationParallelismType {
);
}
+/**
+ * Key Value pairs to be used to set environments
+ *
+ * name:
+ * Name of the environment variable such as PATH, LD_LIBRARY_PATH, NETCDF_HOME.
+ *
+ * value:
+ * Value of the environment variable to set
+ */
class SetEnvPaths {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $name = null;
+ /**
+ * @var string
+ */
public $value = null;
public function __construct($vals=null) {
@@ -122,12 +153,39 @@ class SetEnvPaths {
}
+/**
+ * Application Module Information. A module has to be registered before registering a deployment.
+ *
+ * appModuleId: Airavata Internal Unique Job ID. This is set by the registry.
+ *
+ * appModuleName:
+ * Name of the application module.
+ *
+ * appModuleVersion:
+ * Version of the application.
+ *
+ * appModuleDescription:
+ * Descriprion of the Module
+ *
+ */
class ApplicationModule {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $appModuleId = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var string
+ */
public $appModuleName = null;
+ /**
+ * @var string
+ */
public $appModuleVersion = null;
+ /**
+ * @var string
+ */
public $appModuleDescription = null;
public function __construct($vals=null) {
@@ -254,20 +312,82 @@ class ApplicationModule {
}
+/**
+ * Application Deployment Description
+ *
+ * appDeploymentId: Airavata Internal Unique Job ID. This is set by the registry.
+ *
+ * appModuleName:
+ * Application Module Name. This has to be precise describing the binary.
+ *
+ * computeHostId:
+ * This ID maps application deployment to a particular resource previously described within Airavata.
+ * Example: Stampede is first registered and refered when registering WRF.
+ *
+ * moduleLoadCmd:
+ * Command string to load modules. This will be placed in the job submisison
+ * Ex: module load amber
+ *
+ * libPrependPaths:
+ * prepend to a path variable the value
+ *
+ * libAppendPaths:
+ * append to a path variable the value
+ *
+ * setEnvironment:
+ * assigns to the environment variable "NAME" the value
+ *
+ */
class ApplicationDeploymentDescription {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $appDeploymentId = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var string
+ */
public $appModuleId = null;
+ /**
+ * @var string
+ */
public $computeHostId = null;
+ /**
+ * @var string
+ */
public $executablePath = null;
+ /**
+ * @var int
+ */
public $parallelism = 0;
+ /**
+ * @var string
+ */
public $appDeploymentDescription = null;
+ /**
+ * @var string[]
+ */
public $moduleLoadCmds = null;
+ /**
+ * @var \Airavata\Model\AppCatalog\AppDeployment\SetEnvPaths[]
+ */
public $libPrependPaths = null;
+ /**
+ * @var \Airavata\Model\AppCatalog\AppDeployment\SetEnvPaths[]
+ */
public $libAppendPaths = null;
+ /**
+ * @var \Airavata\Model\AppCatalog\AppDeployment\SetEnvPaths[]
+ */
public $setEnvironment = null;
+ /**
+ * @var string[]
+ */
public $preJobCommands = null;
+ /**
+ * @var string[]
+ */
public $postJobCommands = null;
public function __construct($vals=null) {
@@ -708,6 +828,12 @@ class ApplicationDeploymentDescription {
}
-$GLOBALS['applicationDeploymentModel_CONSTANTS']['DEFAULT_ID'] = "DO_NOT_SET_AT_CLIENTS";
+final class Constant extends \Thrift\Type\TConstant {
+ static protected $DEFAULT_ID;
+
+ static protected function init_DEFAULT_ID() {
+ return "DO_NOT_SET_AT_CLIENTS";
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/a5cb91f0/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/AppInterface/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/AppInterface/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/AppInterface/Types.php
index e6748f4..02e5749 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/AppInterface/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/AppInterface/Types.php
@@ -2,7 +2,7 @@
namespace Airavata\Model\AppCatalog\AppInterface;
/**
- * Autogenerated by Thrift Compiler (0.9.1)
+ * Autogenerated by Thrift Compiler (0.9.2)
*
* DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
* @generated
@@ -17,6 +17,10 @@ use Thrift\Protocol\TBinaryProtocolAccelerated;
use Thrift\Exception\TApplicationException;
+/**
+ * Data Types supported in Airavata. The primitive data types
+ *
+ */
final class DataType {
const STRING = 0;
const INTEGER = 1;
@@ -34,19 +38,78 @@ final class DataType {
);
}
+/**
+ * Application Inputs. The paramters describe how inputs are passed to the application.
+ *
+ * name:
+ * Name of the parameter.
+ *
+ * value:
+ * Value of the parameter. A default value could be set during registration.
+ *
+ * type:
+ * Data type of the parameter
+ *
+ * applicationArguement:
+ * The argument flag sent to the application. Such as -p pressure.
+ *
+ * standardInput:
+ * When this value is set, the parameter is sent as standard input rather than a parameter.
+ * Typically this is passed using redirection operator ">".
+ *
+ * userFriendlyDescription:
+ * Description to be displayed at the user interface.
+ *
+ * metaData:
+ * Any metadat. This is typically ignore by Airavata and is used by gateways for application configuration.
+ *
+ */
class InputDataObjectType {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $name = null;
+ /**
+ * @var string
+ */
public $value = null;
+ /**
+ * @var int
+ */
public $type = null;
+ /**
+ * @var string
+ */
public $applicationArgument = null;
+ /**
+ * @var bool
+ */
public $standardInput = false;
+ /**
+ * @var string
+ */
public $userFriendlyDescription = null;
+ /**
+ * @var string
+ */
public $metaData = null;
+ /**
+ * @var int
+ */
public $inputOrder = null;
+ /**
+ * @var bool
+ */
public $isRequired = null;
+ /**
+ * @var bool
+ */
public $requiredToAddedToCommandLine = null;
+ /**
+ * @var bool
+ */
public $dataStaged = false;
public function __construct($vals=null) {
@@ -306,17 +369,70 @@ class InputDataObjectType {
}
+/**
+ * Application Outputs. The paramters describe how outputs generated by the application.
+ *
+ * name:
+ * Name of the parameter.
+ *
+ * value:
+ * Value of the parameter.
+ *
+ * type:
+ * Data type of the parameter
+ *
+ * applicationArguement:
+ * The argument flag sent to the application. Such as -p pressure.
+ *
+ * standardInput:
+ * When this value is set, the parameter is sent as standard input rather than a parameter.
+ * Typically this is passed using redirection operator ">".
+ *
+ * userFriendlyDescription:
+ * Description to be displayed at the user interface.
+ *
+ * metaData:
+ * Any metadat. This is typically ignore by Airavata and is used by gateways for application configuration.
+ *
+ */
class OutputDataObjectType {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $name = null;
+ /**
+ * @var string
+ */
public $value = null;
+ /**
+ * @var int
+ */
public $type = null;
+ /**
+ * @var string
+ */
public $applicationArgument = null;
+ /**
+ * @var bool
+ */
public $isRequired = null;
+ /**
+ * @var bool
+ */
public $requiredToAddedToCommandLine = null;
+ /**
+ * @var bool
+ */
public $dataMovement = null;
+ /**
+ * @var string
+ */
public $location = null;
+ /**
+ * @var string
+ */
public $searchQuery = null;
public function __construct($vals=null) {
@@ -538,14 +654,45 @@ class OutputDataObjectType {
}
+/**
+ * Application Interface Description
+ *
+ * applicationModules:
+ * Associate all application modules with versions which interface is applicable to.
+ *
+ * applicationInputs:
+ * Inputs to be passed to the application
+ *
+ * applicationOutputs:
+ * Outputs generated from the application
+ *
+ */
class ApplicationInterfaceDescription {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $applicationInterfaceId = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var string
+ */
public $applicationName = null;
+ /**
+ * @var string
+ */
public $applicationDescription = null;
+ /**
+ * @var string[]
+ */
public $applicationModules = null;
+ /**
+ * @var \Airavata\Model\AppCatalog\AppInterface\InputDataObjectType[]
+ */
public $applicationInputs = null;
+ /**
+ * @var \Airavata\Model\AppCatalog\AppInterface\OutputDataObjectType[]
+ */
public $applicationOutputs = null;
public function __construct($vals=null) {
@@ -792,6 +939,12 @@ class ApplicationInterfaceDescription {
}
-$GLOBALS['applicationInterfaceModel_CONSTANTS']['DEFAULT_ID'] = "DO_NOT_SET_AT_CLIENTS";
+final class Constant extends \Thrift\Type\TConstant {
+ static protected $DEFAULT_ID;
+
+ static protected function init_DEFAULT_ID() {
+ return "DO_NOT_SET_AT_CLIENTS";
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/a5cb91f0/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/ComputeResource/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/ComputeResource/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/ComputeResource/Types.php
index be0f776..f1e2cd3 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/ComputeResource/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/ComputeResource/Types.php
@@ -2,7 +2,7 @@
namespace Airavata\Model\AppCatalog\ComputeResource;
/**
- * Autogenerated by Thrift Compiler (0.9.1)
+ * Autogenerated by Thrift Compiler (0.9.2)
*
* DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
* @generated
@@ -17,6 +17,25 @@ use Thrift\Protocol\TBinaryProtocolAccelerated;
use Thrift\Exception\TApplicationException;
+/**
+ * * Enumeration of local resource job manager types supported by Airavata
+ * *
+ * * FORK:
+ * * Forking of commands without any job manager
+ * *
+ * * PBS:
+ * * Job manager supporting the Portal Batch System (PBS) protocol. Some examples include TORQUE, PBSPro, Grid Engine.
+ * *
+ * * SLURM:
+ * * The Simple Linux Utility for Resource Management is a open source workload manager.
+ * *
+ * * UGE:
+ * * Univa Grid Engine, a variation of PBS implementation.
+ * *
+ * * LSF:
+ * * IBM Platform Load Sharing Facility is dominantly installed on IBM clusters.
+ * *
+ */
final class ResourceJobManagerType {
const FORK = 0;
const PBS = 1;
@@ -32,6 +51,31 @@ final class ResourceJobManagerType {
);
}
+/**
+ * Enumeration of resource job manager commands
+ *
+ * SUBMISSION:
+ * Ex: qsub, sbatch
+ *
+ * JOBMONITORING:
+ * Ex: qstat, squeue
+ *
+ * DELETION:
+ * Ex: qdel, scancel
+ *
+ * CHECK_JOB:
+ * Detailed Status about the Job. Ex: checkjob
+ *
+ * SHOW_QUEUE:
+ * List of Queued Job by the schedular. Ex: showq
+ *
+ * SHOW_RESERVATION:
+ * List all reservations. Ex:showres, show_res
+ *
+ * SHOW_START:
+ * Display the start time of the specified job. Ex: showstart
+ *
+ */
final class JobManagerCommand {
const SUBMISSION = 0;
const JOB_MONITORING = 1;
@@ -51,6 +95,22 @@ final class JobManagerCommand {
);
}
+/**
+ * Enumeration of File Systems on the resource
+ *
+ * FORK:
+ * Forking of commands without any job manager
+ *
+ * PBS:
+ * Job manager supporting the Portal Batch System (PBS) protocol. Some examples include TORQUE, PBSPro, Grid Engine.
+ *
+ * UGE:
+ * Univa Grid Engine, a variation of PBS implementation.
+ *
+ * SLURM:
+ * The Simple Linux Utility for Resource Management is a open source workload manager.
+ *
+ */
final class FileSystems {
const HOME = 0;
const WORK = 1;
@@ -66,6 +126,20 @@ final class FileSystems {
);
}
+/**
+ * Enumeration of security authentication and authorization mechanisms supported by Airavata. This enumeration just
+ * describes the supported mechanism. The corresponding security credentials are registered with Airavata Credential
+ * store.
+ *
+ * USERNAME_PASSWORD:
+ * A User Name.
+ *
+ * SSH_KEYS:
+ * SSH Keys
+ *
+ * FIXME: Change GSI to a more precise generic security protocol - X509
+ *
+ */
final class SecurityProtocol {
const USERNAME_PASSWORD = 0;
const SSH_KEYS = 1;
@@ -81,6 +155,19 @@ final class SecurityProtocol {
);
}
+/**
+ * Enumeration of Airavata supported Job Submission Mechanisms for High Performance Computing Clusters.
+ *
+ * SSH:
+ * Execute remote job submission commands using via secure shell protocol.
+ *
+ * GRAM:
+ * Execute remote jobs via Globus GRAM service.
+ *
+ * UNICORE:
+ * Execute remote jobs via Unicore services
+ *
+ */
final class JobSubmissionProtocol {
const LOCAL = 0;
const SSH = 1;
@@ -96,6 +183,17 @@ final class JobSubmissionProtocol {
);
}
+/**
+ * Monitoring modes
+ *
+ * POLL_JOB_MANAGER:
+ * GFac need to pull job status changes.
+ *
+ * XSEDE_AMQP_SUBSCRIBE:
+ * Server will publish job status changes to amqp servert.
+ *
+ *
+ */
final class MonitorMode {
const POLL_JOB_MANAGER = 0;
const JOB_EMAIL_NOTIFICATION_MONITOR = 1;
@@ -107,6 +205,22 @@ final class MonitorMode {
);
}
+/**
+ * Enumeration of data movement supported by Airavata
+ *
+ * SCP:
+ * Job manager supporting the Portal Batch System (PBS) protocol. Some examples include TORQUE, PBSPro, Grid Engine.
+ *
+ * SFTP:
+ * The Simple Linux Utility for Resource Management is a open source workload manager.
+ *
+ * GridFTP:
+ * Globus File Transfer Protocol
+ *
+ * UNICORE_STORAGE_SERVICE:
+ * Storage Service Provided by Unicore
+ *
+ */
final class DataMovementProtocol {
const LOCAL = 0;
const SCP = 1;
@@ -122,6 +236,10 @@ final class DataMovementProtocol {
);
}
+/**
+ * Provider name
+ *
+ */
final class ProviderName {
const EC2 = 0;
const AWSEC2 = 1;
@@ -133,13 +251,45 @@ final class ProviderName {
);
}
+/**
+ * Resource Job Manager Information
+ *
+ * resourceJobManagerType:
+ * A typical HPC cluster has a single Job Manager to manage the resources.
+ *
+ * pushMonitoringEndpoint:
+ * If the job manager pushes out state changes to a database or bus, specify the service endpoint.
+ * Ex: Moab Web Service, Moab MongoDB URL, AMQP (GLUE2) Broker
+ *
+ * jobManagerBinPath:
+ * Path to the Job Manager Installation Binary directory.
+ *
+ * jobManagerCommands:
+ * An enumeration of commonly used manager commands.
+ *
+ */
class ResourceJobManager {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $resourceJobManagerId = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var int
+ */
public $resourceJobManagerType = null;
+ /**
+ * @var string
+ */
public $pushMonitoringEndpoint = null;
+ /**
+ * @var string
+ */
public $jobManagerBinPath = null;
+ /**
+ * @var array
+ */
public $jobManagerCommands = null;
public function __construct($vals=null) {
@@ -319,15 +469,42 @@ class ResourceJobManager {
}
+/**
+ * Batch Queue Information on SuperComputers
+ *
+ * maxRunTime:
+ * Maximum allowed run time in hours.
+ */
class BatchQueue {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $queueName = null;
+ /**
+ * @var string
+ */
public $queueDescription = null;
+ /**
+ * @var int
+ */
public $maxRunTime = null;
+ /**
+ * @var int
+ */
public $maxNodes = null;
+ /**
+ * @var int
+ */
public $maxProcessors = null;
+ /**
+ * @var int
+ */
public $maxJobsInQueue = null;
+ /**
+ * @var int
+ */
public $maxMemory = null;
public function __construct($vals=null) {
@@ -511,12 +688,33 @@ class BatchQueue {
}
+/**
+ * Data Movement through Secured Copy
+ *
+ * alternativeSCPHostName:
+ * If the login to scp is different than the hostname itself, specify it here
+ *
+ * sshPort:
+ * If a non-default port needs to used, specify it.
+ */
class SCPDataMovement {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $dataMovementInterfaceId = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var int
+ */
public $securityProtocol = null;
+ /**
+ * @var string
+ */
public $alternativeSCPHostName = null;
+ /**
+ * @var int
+ */
public $sshPort = 22;
public function __construct($vals=null) {
@@ -643,11 +841,29 @@ class SCPDataMovement {
}
+/**
+ * Data Movement through GridFTP
+ *
+ * alternativeSCPHostName:
+ * If the login to scp is different than the hostname itself, specify it here
+ *
+ * sshPort:
+ * If a non-default port needs to used, specify it.
+ */
class GridFTPDataMovement {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $dataMovementInterfaceId = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var int
+ */
public $securityProtocol = null;
+ /**
+ * @var string[]
+ */
public $gridFTPEndPoints = null;
public function __construct($vals=null) {
@@ -781,11 +997,26 @@ class GridFTPDataMovement {
}
+/**
+ * Data Movement through UnicoreStorage
+ *
+ * unicoreEndPointURL:
+ * unicoreGateway End Point. The provider will query this service to fetch required service end points.
+ */
class UnicoreDataMovement {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $dataMovementInterfaceId = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var int
+ */
public $securityProtocol = null;
+ /**
+ * @var string
+ */
public $unicoreEndPointURL = null;
public function __construct($vals=null) {
@@ -893,10 +1124,25 @@ class UnicoreDataMovement {
}
+/**
+ * Locally Fork Jobs as OS processes
+ *
+ * alternativeSSHHostName:
+ * If the login to ssh is different than the hostname itself, specify it here
+ *
+ * sshPort:
+ * If a non-default port needs to used, specify it.
+ */
class LOCALSubmission {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $jobSubmissionInterfaceId = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var \Airavata\Model\AppCatalog\ComputeResource\ResourceJobManager
+ */
public $resourceJobManager = null;
public function __construct($vals=null) {
@@ -990,9 +1236,21 @@ class LOCALSubmission {
}
+/**
+ * LOCAL
+ *
+ * alternativeSCPHostName:
+ * If the login to scp is different than the hostname itself, specify it here
+ *
+ * sshPort:
+ * If a non-defualt port needs to used, specify it.
+ */
class LOCALDataMovement {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $dataMovementInterfaceId = "DO_NOT_SET_AT_CLIENTS";
public function __construct($vals=null) {
@@ -1062,14 +1320,41 @@ class LOCALDataMovement {
}
+/**
+ * Authenticate using Secured Shell
+ *
+ * alternativeSSHHostName:
+ * If the login to ssh is different than the hostname itself, specify it here
+ *
+ * sshPort:
+ * If a non-default port needs to used, specify it.
+ */
class SSHJobSubmission {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $jobSubmissionInterfaceId = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var int
+ */
public $securityProtocol = null;
+ /**
+ * @var \Airavata\Model\AppCatalog\ComputeResource\ResourceJobManager
+ */
public $resourceJobManager = null;
+ /**
+ * @var string
+ */
public $alternativeSSHHostName = null;
+ /**
+ * @var int
+ */
public $sshPort = 22;
+ /**
+ * @var int
+ */
public $monitorMode = null;
public function __construct($vals=null) {
@@ -1242,8 +1527,17 @@ class SSHJobSubmission {
class GlobusJobSubmission {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $jobSubmissionInterfaceId = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var int
+ */
public $securityProtocol = null;
+ /**
+ * @var string[]
+ */
public $globusGateKeeperEndPoint = null;
public function __construct($vals=null) {
@@ -1377,11 +1671,28 @@ class GlobusJobSubmission {
}
+/**
+ * Unicore Job Submission
+ *
+ * unicoreEndPointURL:
+ * unicoreGateway End Point. The provider will query this service to fetch required service end points.
+ * authenticationMode
+ * The authenticationMode defines the way certificate is fetched.
+ */
class UnicoreJobSubmission {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $jobSubmissionInterfaceId = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var int
+ */
public $securityProtocol = null;
+ /**
+ * @var string
+ */
public $unicoreEndPointURL = null;
public function __construct($vals=null) {
@@ -1489,14 +1800,37 @@ class UnicoreJobSubmission {
}
+/**
+ * Cloud Job Submission
+ *
+ *
+ */
class CloudJobSubmission {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $jobSubmissionInterfaceId = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var int
+ */
public $securityProtocol = null;
+ /**
+ * @var string
+ */
public $nodeId = null;
+ /**
+ * @var string
+ */
public $executableType = null;
+ /**
+ * @var int
+ */
public $providerName = null;
+ /**
+ * @var string
+ */
public $userAccountName = null;
public function __construct($vals=null) {
@@ -1661,11 +1995,30 @@ class CloudJobSubmission {
}
+/**
+ * Job Submission Interfaces
+ *
+ * jobSubmissionInterfaceId: The Job Submission Interface has to be previously registered and referenced here.
+ *
+ * priorityOrder:
+ * For resources with multiple interfaces, the priority order should be selected.
+ * Lower the numerical number, higher the priority
+ *
+ */
class JobSubmissionInterface {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $jobSubmissionInterfaceId = null;
+ /**
+ * @var int
+ */
public $jobSubmissionProtocol = null;
+ /**
+ * @var int
+ */
public $priorityOrder = 0;
public function __construct($vals=null) {
@@ -1773,11 +2126,30 @@ class JobSubmissionInterface {
}
+/**
+ * Data Movement Interfaces
+ *
+ * dataMovementInterfaceId: The Data Movement Interface has to be previously registered and referenced here.
+ *
+ * priorityOrder:
+ * For resources with multiple interfaces, the priority order should be selected.
+ * Lower the numerical number, higher the priority
+ *
+ */
class DataMovementInterface {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $dataMovementInterfaceId = null;
+ /**
+ * @var int
+ */
public $dataMovementProtocol = null;
+ /**
+ * @var int
+ */
public $priorityOrder = 0;
public function __construct($vals=null) {
@@ -1885,18 +2257,77 @@ class DataMovementInterface {
}
+/**
+ * Computational Resource Description
+ *
+ * computeResourceId: Airavata Internal Unique Identifier to distinguish Compute Resource.
+ *
+ * hostName:
+ * Fully Qualified Host Name.
+ *
+ * hostAliases:
+ * Aliases if any.
+ *
+ * ipAddress:
+ * IP Addresses of the Resource.
+ *
+ * resourceDescription:
+ * A user friendly description of the resource.
+ *
+ * JobSubmissionProtocols:
+ * A computational resources may have one or more ways of submitting Jobs. This structure
+ * will hold all available mechanisms to interact with the resource.
+ * The key is the priority
+ *
+ * DataMovementProtocol:
+ * Option to specify a prefered data movement mechanism of the available options.
+ *
+ * fileSystems:
+ * Map of file systems type and the path.
+ *
+ */
class ComputeResourceDescription {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $computeResourceId = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var string
+ */
public $hostName = null;
+ /**
+ * @var string[]
+ */
public $hostAliases = null;
+ /**
+ * @var string[]
+ */
public $ipAddresses = null;
+ /**
+ * @var string
+ */
public $resourceDescription = null;
+ /**
+ * @var \Airavata\Model\AppCatalog\ComputeResource\BatchQueue[]
+ */
public $batchQueues = null;
+ /**
+ * @var array
+ */
public $fileSystems = null;
+ /**
+ * @var \Airavata\Model\AppCatalog\ComputeResource\JobSubmissionInterface[]
+ */
public $jobSubmissionInterfaces = null;
+ /**
+ * @var \Airavata\Model\AppCatalog\ComputeResource\DataMovementInterface[]
+ */
public $dataMovementInterfaces = null;
+ /**
+ * @var int
+ */
public $maxMemoryPerNode = null;
public function __construct($vals=null) {
@@ -2307,6 +2738,12 @@ class ComputeResourceDescription {
}
-$GLOBALS['computeResourceModel_CONSTANTS']['DEFAULT_ID'] = "DO_NOT_SET_AT_CLIENTS";
+final class Constant extends \Thrift\Type\TConstant {
+ static protected $DEFAULT_ID;
+
+ static protected function init_DEFAULT_ID() {
+ return "DO_NOT_SET_AT_CLIENTS";
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/a5cb91f0/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/GatewayProfile/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/GatewayProfile/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/GatewayProfile/Types.php
index e0e6227..a94dd88 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/GatewayProfile/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/GatewayProfile/Types.php
@@ -2,7 +2,7 @@
namespace Airavata\Model\AppCatalog\GatewayProfile;
/**
- * Autogenerated by Thrift Compiler (0.9.1)
+ * Autogenerated by Thrift Compiler (0.9.2)
*
* DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
* @generated
@@ -17,16 +17,70 @@ use Thrift\Protocol\TBinaryProtocolAccelerated;
use Thrift\Exception\TApplicationException;
+/**
+ * Gateway specific preferences for a Computer Resource
+ *
+ * computeResourceId:
+ * Corelate the preference to a compute resource.
+ *
+ * overridebyAiravata:
+ * If turned true, Airavata will override the preferences of better alternatives exist.
+ *
+ * loginUserName:
+ * If turned true, Airavata will override the preferences of better alternatives exist.
+ *
+ * preferredJobSubmissionProtocol:
+ * For resources with multiple job submission protocols, the gateway can pick a preferred option.
+ *
+ * preferredDataMovementProtocol:
+ * For resources with multiple data movement protocols, the gateway can pick a preferred option.
+ *
+ * preferredBatchQueue:
+ * Gateways can choose a defualt batch queue based on average job dimention, reservations or other metrics.
+ *
+ * scratchLocation:
+ * Path to the local scratch space on a HPC cluster. Typically used to create working directory for job execution.
+ *
+ * allocationProjectNumber:
+ * Typically used on HPC machines to charge computing usage to a account number. For instance, on XSEDE once an
+ * allocation is approved, an allocation number is assigned. Before passing this number with job submittions, the
+ * account to be used has to be added to the allocation.
+ *
+ */
class ComputeResourcePreference {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $computeResourceId = null;
+ /**
+ * @var bool
+ */
public $overridebyAiravata = true;
+ /**
+ * @var string
+ */
public $loginUserName = null;
+ /**
+ * @var int
+ */
public $preferredJobSubmissionProtocol = null;
+ /**
+ * @var int
+ */
public $preferredDataMovementProtocol = null;
+ /**
+ * @var string
+ */
public $preferredBatchQueue = null;
+ /**
+ * @var string
+ */
public $scratchLocation = null;
+ /**
+ * @var string
+ */
public $allocationProjectNumber = null;
public function __construct($vals=null) {
@@ -229,10 +283,27 @@ class ComputeResourcePreference {
}
+/**
+ * Gateway Resource Profile
+ *
+ * gatewayID:
+ * Unique identifier for the gateway assigned by Airavata. Corelate this to Airavata Admin API Gateway Registration.
+ *
+ * computeResourcePreferences:
+ * List of resource preferences for each of the registered compute resources.
+ *
+ *
+ */
class GatewayResourceProfile {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $gatewayID = null;
+ /**
+ * @var \Airavata\Model\AppCatalog\GatewayProfile\ComputeResourcePreference[]
+ */
public $computeResourcePreferences = null;
public function __construct($vals=null) {
http://git-wip-us.apache.org/repos/asf/airavata/blob/a5cb91f0/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Messaging/Event/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Messaging/Event/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Messaging/Event/Types.php
index 035e249..1602ceb 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Messaging/Event/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Messaging/Event/Types.php
@@ -2,7 +2,7 @@
namespace Airavata\Model\Messaging\Event;
/**
- * Autogenerated by Thrift Compiler (0.9.1)
+ * Autogenerated by Thrift Compiler (0.9.2)
*
* DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
* @generated
@@ -52,8 +52,17 @@ final class MessageType {
class ExperimentStatusChangeEvent {
static $_TSPEC;
+ /**
+ * @var int
+ */
public $state = null;
+ /**
+ * @var string
+ */
public $experimentId = null;
+ /**
+ * @var string
+ */
public $gatewayId = null;
public function __construct($vals=null) {
@@ -164,8 +173,17 @@ class ExperimentStatusChangeEvent {
class WorkflowIdentifier {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $workflowNodeId = null;
+ /**
+ * @var string
+ */
public $experimentId = null;
+ /**
+ * @var string
+ */
public $gatewayId = null;
public function __construct($vals=null) {
@@ -276,7 +294,13 @@ class WorkflowIdentifier {
class WorkflowNodeStatusChangeEvent {
static $_TSPEC;
+ /**
+ * @var int
+ */
public $state = null;
+ /**
+ * @var \Airavata\Model\Messaging\Event\WorkflowIdentifier
+ */
public $workflowNodeIdentity = null;
public function __construct($vals=null) {
@@ -373,9 +397,21 @@ class WorkflowNodeStatusChangeEvent {
class TaskIdentifier {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $taskId = null;
+ /**
+ * @var string
+ */
public $workflowNodeId = null;
+ /**
+ * @var string
+ */
public $experimentId = null;
+ /**
+ * @var string
+ */
public $gatewayId = null;
public function __construct($vals=null) {
@@ -505,7 +541,13 @@ class TaskIdentifier {
class TaskStatusChangeEvent {
static $_TSPEC;
+ /**
+ * @var int
+ */
public $state = null;
+ /**
+ * @var \Airavata\Model\Messaging\Event\TaskIdentifier
+ */
public $taskIdentity = null;
public function __construct($vals=null) {
@@ -602,7 +644,13 @@ class TaskStatusChangeEvent {
class TaskStatusChangeRequestEvent {
static $_TSPEC;
+ /**
+ * @var int
+ */
public $state = null;
+ /**
+ * @var \Airavata\Model\Messaging\Event\TaskIdentifier
+ */
public $taskIdentity = null;
public function __construct($vals=null) {
@@ -699,7 +747,13 @@ class TaskStatusChangeRequestEvent {
class TaskOutputChangeEvent {
static $_TSPEC;
+ /**
+ * @var \Airavata\Model\AppCatalog\AppInterface\OutputDataObjectType[]
+ */
public $output = null;
+ /**
+ * @var \Airavata\Model\Messaging\Event\TaskIdentifier
+ */
public $taskIdentity = null;
public function __construct($vals=null) {
@@ -824,10 +878,25 @@ class TaskOutputChangeEvent {
class JobIdentifier {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $jobId = null;
+ /**
+ * @var string
+ */
public $taskId = null;
+ /**
+ * @var string
+ */
public $workflowNodeId = null;
+ /**
+ * @var string
+ */
public $experimentId = null;
+ /**
+ * @var string
+ */
public $gatewayId = null;
public function __construct($vals=null) {
@@ -976,7 +1045,13 @@ class JobIdentifier {
class ProcessSubmitEvent {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $taskId = null;
+ /**
+ * @var string
+ */
public $credentialToken = null;
public function __construct($vals=null) {
@@ -1068,9 +1143,21 @@ class ProcessSubmitEvent {
class TaskSubmitEvent {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $experimentId = null;
+ /**
+ * @var string
+ */
public $taskId = null;
+ /**
+ * @var string
+ */
public $gatewayId = null;
+ /**
+ * @var string
+ */
public $tokenId = null;
public function __construct($vals=null) {
@@ -1200,9 +1287,21 @@ class TaskSubmitEvent {
class TaskTerminateEvent {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $experimentId = null;
+ /**
+ * @var string
+ */
public $taskId = null;
+ /**
+ * @var string
+ */
public $gatewayId = null;
+ /**
+ * @var string
+ */
public $tokenId = null;
public function __construct($vals=null) {
@@ -1332,7 +1431,13 @@ class TaskTerminateEvent {
class JobStatusChangeEvent {
static $_TSPEC;
+ /**
+ * @var int
+ */
public $state = null;
+ /**
+ * @var \Airavata\Model\Messaging\Event\JobIdentifier
+ */
public $jobIdentity = null;
public function __construct($vals=null) {
@@ -1429,7 +1534,13 @@ class JobStatusChangeEvent {
class JobStatusChangeRequestEvent {
static $_TSPEC;
+ /**
+ * @var int
+ */
public $state = null;
+ /**
+ * @var \Airavata\Model\Messaging\Event\JobIdentifier
+ */
public $jobIdentity = null;
public function __construct($vals=null) {
@@ -1526,10 +1637,25 @@ class JobStatusChangeRequestEvent {
class Message {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $event = null;
+ /**
+ * @var string
+ */
public $messageId = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var int
+ */
public $messageType = null;
+ /**
+ * @var int
+ */
public $updatedTime = null;
+ /**
+ * @var int
+ */
public $messageLevel = null;
public function __construct($vals=null) {
@@ -1675,6 +1801,12 @@ class Message {
}
-$GLOBALS['messagingEvents_CONSTANTS']['DEFAULT_ID'] = "DO_NOT_SET_AT_CLIENTS";
+final class Constant extends \Thrift\Type\TConstant {
+ static protected $DEFAULT_ID;
+
+ static protected function init_DEFAULT_ID() {
+ return "DO_NOT_SET_AT_CLIENTS";
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/a5cb91f0/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Types.php
index 4e89132..15ba747 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Types.php
@@ -2,7 +2,7 @@
namespace Airavata\Model;
/**
- * Autogenerated by Thrift Compiler (0.9.1)
+ * Autogenerated by Thrift Compiler (0.9.2)
*
* DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
* @generated
@@ -20,11 +20,29 @@ use Thrift\Exception\TApplicationException;
class Workflow {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $templateId = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var string
+ */
public $name = null;
+ /**
+ * @var string
+ */
public $graph = null;
+ /**
+ * @var string
+ */
public $image = null;
+ /**
+ * @var \Airavata\Model\AppCatalog\AppInterface\InputDataObjectType[]
+ */
public $workflowInputs = null;
+ /**
+ * @var \Airavata\Model\AppCatalog\AppInterface\OutputDataObjectType[]
+ */
public $workflowOutputs = null;
public function __construct($vals=null) {
@@ -245,6 +263,12 @@ class Workflow {
}
-$GLOBALS['workflowDataModel_CONSTANTS']['DEFAULT_ID'] = "DO_NOT_SET_AT_CLIENTS";
+final class Constant extends \Thrift\Type\TConstant {
+ static protected $DEFAULT_ID;
+
+ static protected function init_DEFAULT_ID() {
+ return "DO_NOT_SET_AT_CLIENTS";
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/a5cb91f0/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Experiment/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Experiment/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Experiment/Types.php
index 4b53e09..18fcd73 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Experiment/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Experiment/Types.php
@@ -2,7 +2,7 @@
namespace Airavata\Model\Workspace\Experiment;
/**
- * Autogenerated by Thrift Compiler (0.9.1)
+ * Autogenerated by Thrift Compiler (0.9.2)
*
* DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
* @generated
@@ -236,7 +236,13 @@ final class ExecutionUnit {
class ExperimentStatus {
static $_TSPEC;
+ /**
+ * @var int
+ */
public $experimentState = null;
+ /**
+ * @var int
+ */
public $timeOfStateChange = null;
public function __construct($vals=null) {
@@ -328,7 +334,13 @@ class ExperimentStatus {
class WorkflowNodeStatus {
static $_TSPEC;
+ /**
+ * @var int
+ */
public $workflowNodeState = null;
+ /**
+ * @var int
+ */
public $timeOfStateChange = null;
public function __construct($vals=null) {
@@ -420,7 +432,13 @@ class WorkflowNodeStatus {
class TaskStatus {
static $_TSPEC;
+ /**
+ * @var int
+ */
public $executionState = null;
+ /**
+ * @var int
+ */
public $timeOfStateChange = null;
public function __construct($vals=null) {
@@ -512,7 +530,13 @@ class TaskStatus {
class JobStatus {
static $_TSPEC;
+ /**
+ * @var int
+ */
public $jobState = null;
+ /**
+ * @var int
+ */
public $timeOfStateChange = null;
public function __construct($vals=null) {
@@ -604,7 +628,13 @@ class JobStatus {
class TransferStatus {
static $_TSPEC;
+ /**
+ * @var int
+ */
public $transferState = null;
+ /**
+ * @var int
+ */
public $timeOfStateChange = null;
public function __construct($vals=null) {
@@ -696,7 +726,13 @@ class TransferStatus {
class ApplicationStatus {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $applicationState = null;
+ /**
+ * @var int
+ */
public $timeOfStateChange = null;
public function __construct($vals=null) {
@@ -785,18 +821,52 @@ class ApplicationStatus {
}
+/**
+ * A structure holding the Computational Resource Scheduling.
+ *
+ */
class ComputationalResourceScheduling {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $resourceHostId = null;
+ /**
+ * @var int
+ */
public $totalCPUCount = null;
+ /**
+ * @var int
+ */
public $nodeCount = null;
+ /**
+ * @var int
+ */
public $numberOfThreads = null;
+ /**
+ * @var string
+ */
public $queueName = null;
+ /**
+ * @var int
+ */
public $wallTimeLimit = null;
+ /**
+ * @var int
+ */
public $jobStartTime = null;
+ /**
+ * @var int
+ */
public $totalPhysicalMemory = null;
+ /**
+ * @var string
+ */
public $computationalProjectAccount = null;
+ /**
+ * @var string
+ */
public $chassisName = null;
public function __construct($vals=null) {
@@ -1037,12 +1107,28 @@ class ComputationalResourceScheduling {
}
+/**
+ * A structure holding specified input data handling.
+ *
+ */
class AdvancedInputDataHandling {
static $_TSPEC;
+ /**
+ * @var bool
+ */
public $stageInputFilesToWorkingDir = false;
+ /**
+ * @var string
+ */
public $parentWorkingDirectory = null;
+ /**
+ * @var string
+ */
public $uniqueWorkingDirectory = null;
+ /**
+ * @var bool
+ */
public $cleanUpWorkingDirAfterJob = false;
public function __construct($vals=null) {
@@ -1169,11 +1255,24 @@ class AdvancedInputDataHandling {
}
+/**
+ * A structure holding specified output data handling.
+ *
+ */
class AdvancedOutputDataHandling {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $outputDataDir = null;
+ /**
+ * @var string
+ */
public $dataRegistryURL = null;
+ /**
+ * @var bool
+ */
public $persistOutputData = true;
public function __construct($vals=null) {
@@ -1281,11 +1380,24 @@ class AdvancedOutputDataHandling {
}
+/**
+ * A structure holding Quality of Service Parameters.
+ *
+ */
class QualityOfServiceParams {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $startExecutionAt = null;
+ /**
+ * @var string
+ */
public $executeBefore = null;
+ /**
+ * @var int
+ */
public $numberofRetries = null;
public function __construct($vals=null) {
@@ -1393,18 +1505,53 @@ class QualityOfServiceParams {
}
+/**
+ * A structure holding the experiment configuration.
+ *
+ *
+ */
class UserConfigurationData {
static $_TSPEC;
+ /**
+ * @var bool
+ */
public $airavataAutoSchedule = false;
+ /**
+ * @var bool
+ */
public $overrideManualScheduledParams = false;
+ /**
+ * @var bool
+ */
public $shareExperimentPublicly = false;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\ComputationalResourceScheduling
+ */
public $computationalResourceScheduling = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\AdvancedInputDataHandling
+ */
public $advanceInputDataHandling = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\AdvancedOutputDataHandling
+ */
public $advanceOutputDataHandling = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\QualityOfServiceParams
+ */
public $qosParams = null;
+ /**
+ * @var bool
+ */
public $throttleResources = false;
+ /**
+ * @var string
+ */
public $userDN = null;
+ /**
+ * @var bool
+ */
public $generateCert = false;
public function __construct($vals=null) {
@@ -1668,14 +1815,41 @@ class UserConfigurationData {
class ErrorDetails {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $errorID = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var int
+ */
public $creationTime = null;
+ /**
+ * @var string
+ */
public $actualErrorMessage = null;
+ /**
+ * @var string
+ */
public $userFriendlyMessage = null;
+ /**
+ * @var int
+ */
public $errorCategory = null;
+ /**
+ * @var bool
+ */
public $transientOrPersistent = false;
+ /**
+ * @var int
+ */
public $correctiveAction = null;
+ /**
+ * @var int
+ */
public $actionableGroup = null;
+ /**
+ * @var string[]
+ */
public $rootCauseErrorIdList = null;
public function __construct($vals=null) {
@@ -1926,14 +2100,41 @@ class ErrorDetails {
class JobDetails {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $jobID = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var string
+ */
public $jobDescription = null;
+ /**
+ * @var int
+ */
public $creationTime = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\JobStatus
+ */
public $jobStatus = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\ApplicationStatus
+ */
public $applicationStatus = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\ErrorDetails[]
+ */
public $errors = null;
+ /**
+ * @var string
+ */
public $computeResourceConsumed = null;
+ /**
+ * @var string
+ */
public $jobName = null;
+ /**
+ * @var string
+ */
public $workingDir = null;
public function __construct($vals=null) {
@@ -2196,9 +2397,21 @@ class JobDetails {
class DataTransferDetails {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $transferID = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var int
+ */
public $creationTime = null;
+ /**
+ * @var string
+ */
public $transferDescription = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\TransferStatus
+ */
public $transferStatus = null;
public function __construct($vals=null) {
@@ -2330,24 +2543,78 @@ class DataTransferDetails {
}
+/**
+ * A structure holding the actual execution context decided based on user provided configuration data or system inferred
+ * information from scheduling and QoS parameters. One experiment can have multiple tasks. Each tasks results in
+ * data transfers and jobs
+ *
+ */
class TaskDetails {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $taskID = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var int
+ */
public $creationTime = null;
+ /**
+ * @var string
+ */
public $applicationId = null;
+ /**
+ * @var string
+ */
public $applicationVersion = null;
+ /**
+ * @var string
+ */
public $applicationDeploymentId = null;
+ /**
+ * @var \Airavata\Model\AppCatalog\AppInterface\InputDataObjectType[]
+ */
public $applicationInputs = null;
+ /**
+ * @var \Airavata\Model\AppCatalog\AppInterface\OutputDataObjectType[]
+ */
public $applicationOutputs = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\ComputationalResourceScheduling
+ */
public $taskScheduling = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\AdvancedInputDataHandling
+ */
public $advancedInputDataHandling = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\AdvancedOutputDataHandling
+ */
public $advancedOutputDataHandling = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\TaskStatus
+ */
public $taskStatus = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\JobDetails[]
+ */
public $jobDetailsList = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\DataTransferDetails[]
+ */
public $dataTransferDetailsList = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\ErrorDetails[]
+ */
public $errors = null;
+ /**
+ * @var bool
+ */
public $enableEmailNotification = null;
+ /**
+ * @var string[]
+ */
public $emailAddresses = null;
public function __construct($vals=null) {
@@ -2888,18 +3155,52 @@ class TaskDetails {
}
+/**
+ * A structure holding the node data.
+ * nodeInstanceId - unique node identifier for each run
+ */
class WorkflowNodeDetails {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $nodeInstanceId = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var int
+ */
public $creationTime = null;
+ /**
+ * @var string
+ */
public $nodeName = "SINGLE_APP_NODE";
+ /**
+ * @var int
+ */
public $executionUnit = 1;
+ /**
+ * @var string
+ */
public $executionUnitData = null;
+ /**
+ * @var \Airavata\Model\AppCatalog\AppInterface\InputDataObjectType[]
+ */
public $nodeInputs = null;
+ /**
+ * @var \Airavata\Model\AppCatalog\AppInterface\OutputDataObjectType[]
+ */
public $nodeOutputs = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\WorkflowNodeStatus
+ */
public $workflowNodeStatus = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\TaskDetails[]
+ */
public $taskDetailsList = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\ErrorDetails[]
+ */
public $errors = null;
public function __construct($vals=null) {
@@ -3257,10 +3558,23 @@ class WorkflowNodeDetails {
}
+/**
+ * This data structure can be used to store the validation results
+ * captured during validation step and during the launchExperiment
+ * operation it can be easilly checked to see the errors occured
+ * during the experiment launch operation
+ *
+ */
class ValidatorResult {
static $_TSPEC;
+ /**
+ * @var bool
+ */
public $result = null;
+ /**
+ * @var string
+ */
public $errorDetails = null;
public function __construct($vals=null) {
@@ -3352,7 +3666,13 @@ class ValidatorResult {
class ValidationResults {
static $_TSPEC;
+ /**
+ * @var bool
+ */
public $validationState = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\ValidatorResult[]
+ */
public $validationResultList = null;
public function __construct($vals=null) {
@@ -3469,29 +3789,108 @@ class ValidationResults {
}
+/**
+ * A structure holding the experiment metadata and its child models.
+ *
+ * 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.
+ */
class Experiment {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $experimentID = "DO_NOT_SET_AT_CLIENTS";
+ /**
+ * @var string
+ */
public $projectID = "DEFAULT";
+ /**
+ * @var int
+ */
public $creationTime = null;
+ /**
+ * @var string
+ */
public $userName = null;
+ /**
+ * @var string
+ */
public $name = null;
+ /**
+ * @var string
+ */
public $description = null;
+ /**
+ * @var string
+ */
public $applicationId = null;
+ /**
+ * @var string
+ */
public $applicationVersion = null;
+ /**
+ * @var string
+ */
public $workflowTemplateId = null;
+ /**
+ * @var string
+ */
public $workflowTemplateVersion = null;
+ /**
+ * @var string
+ */
public $gatewayExecutionId = null;
+ /**
+ * @var bool
+ */
public $enableEmailNotification = null;
+ /**
+ * @var string[]
+ */
public $emailAddresses = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\UserConfigurationData
+ */
public $userConfigurationData = null;
+ /**
+ * @var string
+ */
public $workflowExecutionInstanceId = null;
+ /**
+ * @var \Airavata\Model\AppCatalog\AppInterface\InputDataObjectType[]
+ */
public $experimentInputs = null;
+ /**
+ * @var \Airavata\Model\AppCatalog\AppInterface\OutputDataObjectType[]
+ */
public $experimentOutputs = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\ExperimentStatus
+ */
public $experimentStatus = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\WorkflowNodeStatus[]
+ */
public $stateChangeList = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\WorkflowNodeDetails[]
+ */
public $workflowNodeDetailsList = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\ErrorDetails[]
+ */
public $errors = null;
public function __construct($vals=null) {
@@ -4120,13 +4519,37 @@ class Experiment {
class ExperimentSummary {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $experimentID = null;
+ /**
+ * @var string
+ */
public $projectID = null;
+ /**
+ * @var int
+ */
public $creationTime = null;
+ /**
+ * @var string
+ */
public $userName = null;
+ /**
+ * @var string
+ */
public $name = null;
+ /**
+ * @var string
+ */
public $description = null;
+ /**
+ * @var string
+ */
public $applicationId = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\ExperimentStatus
+ */
public $experimentStatus = null;
public function __construct($vals=null) {
@@ -4334,10 +4757,370 @@ class ExperimentSummary {
}
-$GLOBALS['experimentModel_CONSTANTS']['DEFAULT_ID'] = "DO_NOT_SET_AT_CLIENTS";
+class ExperimentStatistics {
+ static $_TSPEC;
+
+ /**
+ * @var int
+ */
+ public $allExperimentCount = null;
+ /**
+ * @var int
+ */
+ public $completedExperimentCount = null;
+ /**
+ * @var int
+ */
+ public $cancelledExperimentCount = null;
+ /**
+ * @var int
+ */
+ public $failedExperimentCount = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\ExperimentSummary[]
+ */
+ public $allExperiments = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\ExperimentSummary[]
+ */
+ public $completedExperiments = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\ExperimentSummary[]
+ */
+ public $failedExperiments = null;
+ /**
+ * @var \Airavata\Model\Workspace\Experiment\ExperimentSummary[]
+ */
+ public $cancelledExperiments = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 1 => array(
+ 'var' => 'allExperimentCount',
+ 'type' => TType::I32,
+ ),
+ 2 => array(
+ 'var' => 'completedExperimentCount',
+ 'type' => TType::I32,
+ ),
+ 3 => array(
+ 'var' => 'cancelledExperimentCount',
+ 'type' => TType::I32,
+ ),
+ 4 => array(
+ 'var' => 'failedExperimentCount',
+ 'type' => TType::I32,
+ ),
+ 5 => array(
+ 'var' => 'allExperiments',
+ 'type' => TType::LST,
+ 'etype' => TType::STRUCT,
+ 'elem' => array(
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\Model\Workspace\Experiment\ExperimentSummary',
+ ),
+ ),
+ 6 => array(
+ 'var' => 'completedExperiments',
+ 'type' => TType::LST,
+ 'etype' => TType::STRUCT,
+ 'elem' => array(
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\Model\Workspace\Experiment\ExperimentSummary',
+ ),
+ ),
+ 7 => array(
+ 'var' => 'failedExperiments',
+ 'type' => TType::LST,
+ 'etype' => TType::STRUCT,
+ 'elem' => array(
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\Model\Workspace\Experiment\ExperimentSummary',
+ ),
+ ),
+ 8 => array(
+ 'var' => 'cancelledExperiments',
+ 'type' => TType::LST,
+ 'etype' => TType::STRUCT,
+ 'elem' => array(
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\Model\Workspace\Experiment\ExperimentSummary',
+ ),
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['allExperimentCount'])) {
+ $this->allExperimentCount = $vals['allExperimentCount'];
+ }
+ if (isset($vals['completedExperimentCount'])) {
+ $this->completedExperimentCount = $vals['completedExperimentCount'];
+ }
+ if (isset($vals['cancelledExperimentCount'])) {
+ $this->cancelledExperimentCount = $vals['cancelledExperimentCount'];
+ }
+ if (isset($vals['failedExperimentCount'])) {
+ $this->failedExperimentCount = $vals['failedExperimentCount'];
+ }
+ if (isset($vals['allExperiments'])) {
+ $this->allExperiments = $vals['allExperiments'];
+ }
+ if (isset($vals['completedExperiments'])) {
+ $this->completedExperiments = $vals['completedExperiments'];
+ }
+ if (isset($vals['failedExperiments'])) {
+ $this->failedExperiments = $vals['failedExperiments'];
+ }
+ if (isset($vals['cancelledExperiments'])) {
+ $this->cancelledExperiments = $vals['cancelledExperiments'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'ExperimentStatistics';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 1:
+ if ($ftype == TType::I32) {
+ $xfer += $input->readI32($this->allExperimentCount);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::I32) {
+ $xfer += $input->readI32($this->completedExperimentCount);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::I32) {
+ $xfer += $input->readI32($this->cancelledExperimentCount);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 4:
+ if ($ftype == TType::I32) {
+ $xfer += $input->readI32($this->failedExperimentCount);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 5:
+ if ($ftype == TType::LST) {
+ $this->allExperiments = array();
+ $_size133 = 0;
+ $_etype136 = 0;
+ $xfer += $input->readListBegin($_etype136, $_size133);
+ for ($_i137 = 0; $_i137 < $_size133; ++$_i137)
+ {
+ $elem138 = null;
+ $elem138 = new \Airavata\Model\Workspace\Experiment\ExperimentSummary();
+ $xfer += $elem138->read($input);
+ $this->allExperiments []= $elem138;
+ }
+ $xfer += $input->readListEnd();
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 6:
+ if ($ftype == TType::LST) {
+ $this->completedExperiments = array();
+ $_size139 = 0;
+ $_etype142 = 0;
+ $xfer += $input->readListBegin($_etype142, $_size139);
+ for ($_i143 = 0; $_i143 < $_size139; ++$_i143)
+ {
+ $elem144 = null;
+ $elem144 = new \Airavata\Model\Workspace\Experiment\ExperimentSummary();
+ $xfer += $elem144->read($input);
+ $this->completedExperiments []= $elem144;
+ }
+ $xfer += $input->readListEnd();
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 7:
+ if ($ftype == TType::LST) {
+ $this->failedExperiments = array();
+ $_size145 = 0;
+ $_etype148 = 0;
+ $xfer += $input->readListBegin($_etype148, $_size145);
+ for ($_i149 = 0; $_i149 < $_size145; ++$_i149)
+ {
+ $elem150 = null;
+ $elem150 = new \Airavata\Model\Workspace\Experiment\ExperimentSummary();
+ $xfer += $elem150->read($input);
+ $this->failedExperiments []= $elem150;
+ }
+ $xfer += $input->readListEnd();
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 8:
+ if ($ftype == TType::LST) {
+ $this->cancelledExperiments = array();
+ $_size151 = 0;
+ $_etype154 = 0;
+ $xfer += $input->readListBegin($_etype154, $_size151);
+ for ($_i155 = 0; $_i155 < $_size151; ++$_i155)
+ {
+ $elem156 = null;
+ $elem156 = new \Airavata\Model\Workspace\Experiment\ExperimentSummary();
+ $xfer += $elem156->read($input);
+ $this->cancelledExperiments []= $elem156;
+ }
+ $xfer += $input->readListEnd();
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('ExperimentStatistics');
+ if ($this->allExperimentCount !== null) {
+ $xfer += $output->writeFieldBegin('allExperimentCount', TType::I32, 1);
+ $xfer += $output->writeI32($this->allExperimentCount);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->completedExperimentCount !== null) {
+ $xfer += $output->writeFieldBegin('completedExperimentCount', TType::I32, 2);
+ $xfer += $output->writeI32($this->completedExperimentCount);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->cancelledExperimentCount !== null) {
+ $xfer += $output->writeFieldBegin('cancelledExperimentCount', TType::I32, 3);
+ $xfer += $output->writeI32($this->cancelledExperimentCount);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->failedExperimentCount !== null) {
+ $xfer += $output->writeFieldBegin('failedExperimentCount', TType::I32, 4);
+ $xfer += $output->writeI32($this->failedExperimentCount);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->allExperiments !== null) {
+ if (!is_array($this->allExperiments)) {
+ throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+ }
+ $xfer += $output->writeFieldBegin('allExperiments', TType::LST, 5);
+ {
+ $output->writeListBegin(TType::STRUCT, count($this->allExperiments));
+ {
+ foreach ($this->allExperiments as $iter157)
+ {
+ $xfer += $iter157->write($output);
+ }
+ }
+ $output->writeListEnd();
+ }
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->completedExperiments !== null) {
+ if (!is_array($this->completedExperiments)) {
+ throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+ }
+ $xfer += $output->writeFieldBegin('completedExperiments', TType::LST, 6);
+ {
+ $output->writeListBegin(TType::STRUCT, count($this->completedExperiments));
+ {
+ foreach ($this->completedExperiments as $iter158)
+ {
+ $xfer += $iter158->write($output);
+ }
+ }
+ $output->writeListEnd();
+ }
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->failedExperiments !== null) {
+ if (!is_array($this->failedExperiments)) {
+ throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+ }
+ $xfer += $output->writeFieldBegin('failedExperiments', TType::LST, 7);
+ {
+ $output->writeListBegin(TType::STRUCT, count($this->failedExperiments));
+ {
+ foreach ($this->failedExperiments as $iter159)
+ {
+ $xfer += $iter159->write($output);
+ }
+ }
+ $output->writeListEnd();
+ }
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->cancelledExperiments !== null) {
+ if (!is_array($this->cancelledExperiments)) {
+ throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+ }
+ $xfer += $output->writeFieldBegin('cancelledExperiments', TType::LST, 8);
+ {
+ $output->writeListBegin(TType::STRUCT, count($this->cancelledExperiments));
+ {
+ foreach ($this->cancelledExperiments as $iter160)
+ {
+ $xfer += $iter160->write($output);
+ }
+ }
+ $output->writeListEnd();
+ }
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
+final class Constant extends \Thrift\Type\TConstant {
+ static protected $DEFAULT_ID;
+ static protected $DEFAULT_PROJECT_NAME;
+ static protected $SINGLE_APP_NODE_NAME;
-$GLOBALS['experimentModel_CONSTANTS']['DEFAULT_PROJECT_NAME'] = "DEFAULT";
+ static protected function init_DEFAULT_ID() {
+ return "DO_NOT_SET_AT_CLIENTS";
+ }
-$GLOBALS['experimentModel_CONSTANTS']['SINGLE_APP_NODE_NAME'] = "SINGLE_APP_NODE";
+ static protected function init_DEFAULT_PROJECT_NAME() {
+ return "DEFAULT";
+ }
+
+ static protected function init_SINGLE_APP_NODE_NAME() {
+ return "SINGLE_APP_NODE";
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/a5cb91f0/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Types.php
index 7ccd55c..d44ae02 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/Workspace/Types.php
@@ -2,7 +2,7 @@
namespace Airavata\Model\Workspace;
/**
- * Autogenerated by Thrift Compiler (0.9.1)
+ * Autogenerated by Thrift Compiler (0.9.2)
*
* DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
* @generated
@@ -20,7 +20,13 @@ use Thrift\Exception\TApplicationException;
class Group {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $groupName = null;
+ /**
+ * @var string
+ */
public $description = null;
public function __construct($vals=null) {
@@ -112,12 +118,33 @@ class Group {
class Project {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $projectID = "DEFAULT";
+ /**
+ * @var string
+ */
public $owner = null;
+ /**
+ * @var string
+ */
public $name = null;
+ /**
+ * @var string
+ */
public $description = null;
+ /**
+ * @var int
+ */
public $creationTime = null;
+ /**
+ * @var string[]
+ */
public $sharedUsers = null;
+ /**
+ * @var string[]
+ */
public $sharedGroups = null;
public function __construct($vals=null) {
@@ -356,7 +383,13 @@ class Project {
class User {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $userName = null;
+ /**
+ * @var \Airavata\Model\Workspace\Group[]
+ */
public $groupList = null;
public function __construct($vals=null) {
@@ -476,9 +509,21 @@ class User {
class Gateway {
static $_TSPEC;
+ /**
+ * @var string
+ */
public $gatewayId = null;
+ /**
+ * @var string
+ */
public $gatewayName = null;
+ /**
+ * @var string
+ */
public $domain = null;
+ /**
+ * @var string
+ */
public $emailAddress = null;
public function __construct($vals=null) {