Return-Path: X-Original-To: apmail-airavata-commits-archive@www.apache.org Delivered-To: apmail-airavata-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 8ECE71889A for ; Tue, 14 Jul 2015 16:38:07 +0000 (UTC) Received: (qmail 93645 invoked by uid 500); 14 Jul 2015 16:38:07 -0000 Delivered-To: apmail-airavata-commits-archive@airavata.apache.org Received: (qmail 93558 invoked by uid 500); 14 Jul 2015 16:38:07 -0000 Mailing-List: contact commits-help@airavata.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@airavata.apache.org Delivered-To: mailing list commits@airavata.apache.org Received: (qmail 92895 invoked by uid 99); 14 Jul 2015 16:38:06 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 14 Jul 2015 16:38:06 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id 73197E1808; Tue, 14 Jul 2015 16:38:06 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: smarru@apache.org To: commits@airavata.apache.org Date: Tue, 14 Jul 2015 16:38:20 -0000 Message-Id: <1f19df6177d34554bbc5a6e827bc5f9d@git.apache.org> In-Reply-To: References: X-Mailer: ASF-Git Admin Mailer Subject: [15/40] airavata-php-gateway git commit: Adding update thrift generated files http://git-wip-us.apache.org/repos/asf/airavata-php-gateway/blob/e1d623a8/app/libraries/Airavata/API/Airavata.php ---------------------------------------------------------------------- diff --git a/app/libraries/Airavata/API/Airavata.php b/app/libraries/Airavata/API/Airavata.php index 2532766..8133f81 100644 --- a/app/libraries/Airavata/API/Airavata.php +++ b/app/libraries/Airavata/API/Airavata.php @@ -1,149 +1,2613 @@ + * Returns a list of Deployed Resources. + * + * + * @param string $appModuleId + * @return string[] + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function getAppModuleDeployedResources($appModuleId); + + /** + * Register a Application Interface. + * + * @param applicationModule + * Application Module Object created from the datamodel. + * + * @return appInterfaceId + * Returns a server-side generated airavata application interface globally unique identifier. + * + * + * @param string $gatewayId + * @param \Airavata\Model\AppCatalog\AppInterface\ApplicationInterfaceDescription $applicationInterface + * @return string + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function registerApplicationInterface($gatewayId, \Airavata\Model\AppCatalog\AppInterface\ApplicationInterfaceDescription $applicationInterface); + + /** + * Fetch a Application Interface. + * + * @param appInterfaceId + * The identifier for the requested application module + * + * @return applicationInterface + * Returns a application Interface Object. + * + * + * + * @param string $appInterfaceId + * @return \Airavata\Model\AppCatalog\AppInterface\ApplicationInterfaceDescription 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 + * + * + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function getApplicationInterface($appInterfaceId); + + /** + * Update a Application Interface. + * + * @param appInterfaceId + * The identifier for the requested application deployment to be updated. + * + * @param appInterface + * Application Interface Object created from the datamodel. + * + * @return status + * Returns a success/failure of the update. + * + * + * + * @param string $appInterfaceId + * @param \Airavata\Model\AppCatalog\AppInterface\ApplicationInterfaceDescription $applicationInterface + * @return bool + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function updateApplicationInterface($appInterfaceId, \Airavata\Model\AppCatalog\AppInterface\ApplicationInterfaceDescription $applicationInterface); + + /** + * Delete a Application Interface. + * + * @param appInterfaceId + * The identifier for the requested application interface to be deleted. + * + * @return status + * Returns a success/failure of the deletion. + * + * + * + * @param string $appInterfaceId + * @return bool + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function deleteApplicationInterface($appInterfaceId); + + /** + * Fetch name and id of Application Interface documents. + * + * + * @return map + * Returns a list of application interfaces with corresponsing id's + * + * + * @param string $gatewayId + * @return array + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function getAllApplicationInterfaceNames($gatewayId); + + /** + * Fetch all Application Interface documents. + * + * + * @return map + * Returns a list of application interfaces documents + * + * + * @param string $gatewayId + * @return \Airavata\Model\AppCatalog\AppInterface\ApplicationInterfaceDescription[] + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function getAllApplicationInterfaces($gatewayId); + + /** + * Fetch the list of Application Inputs. + * + * @param appInterfaceId + * The identifier for the requested application interface + * + * @return list + * Returns a list of application inputs. + * + * + * @param string $appInterfaceId + * @return \Airavata\Model\AppCatalog\AppInterface\InputDataObjectType[] + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function getApplicationInputs($appInterfaceId); + + /** + * Fetch the list of Application Outputs. + * + * @param appInterfaceId + * The identifier for the requested application interface + * + * @return list + * Returns a list of application outputs. + * + * + * @param string $appInterfaceId + * @return \Airavata\Model\AppCatalog\AppInterface\OutputDataObjectType[] + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function getApplicationOutputs($appInterfaceId); + + /** + * Fetch a list of all deployed Compute Hosts for a given application interfaces. + * + * @param appInterfaceId + * The identifier for the requested application interface + * + * @return map + * A map of registered compute resource id's and their corresponding hostnames. + * Deployments of each modules listed within the interfaces will be listed. + * + * + * @param string $appInterfaceId + * @return array + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function getAvailableAppInterfaceComputeResources($appInterfaceId); + + /** + * Register a Compute Resource. + * + * @param computeResourceDescription + * Compute Resource Object created from the datamodel. + * + * @return computeResourceId + * Returns a server-side generated airavata compute resource globally unique identifier. + * + * + * @param \Airavata\Model\AppCatalog\ComputeResource\ComputeResourceDescription $computeResourceDescription + * @return string + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function registerComputeResource(\Airavata\Model\AppCatalog\ComputeResource\ComputeResourceDescription $computeResourceDescription); + + /** + * Fetch the given Compute Resource. + * + * @param computeResourceId + * The identifier for the requested compute resource + * + * @return computeResourceDescription + * Compute Resource Object created from the datamodel.. + * + * + * @param string $computeResourceId + * @return \Airavata\Model\AppCatalog\ComputeResource\ComputeResourceDescription 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. + * + * + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function getComputeResource($computeResourceId); + + /** + * Fetch all registered Compute Resources. + * + * @return A map of registered compute resource id's and thier corresponding hostnames. + * Compute Resource Object created from the datamodel.. + * + * + * @return array + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function getAllComputeResourceNames(); + + /** + * Update a Compute Resource. + * + * @param computeResourceId + * The identifier for the requested compute resource to be updated. + * + * @param computeResourceDescription + * Compute Resource Object created from the datamodel. + * + * @return status + * Returns a success/failure of the update. + * + * + * @param string $computeResourceId + * @param \Airavata\Model\AppCatalog\ComputeResource\ComputeResourceDescription $computeResourceDescription + * @return bool + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function updateComputeResource($computeResourceId, \Airavata\Model\AppCatalog\ComputeResource\ComputeResourceDescription $computeResourceDescription); + + /** + * Delete a Compute Resource. + * + * @param computeResourceId + * The identifier for the requested compute resource to be deleted. + * + * @return status + * Returns a success/failure of the deletion. + * + * + * @param string $computeResourceId + * @return bool + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function deleteComputeResource($computeResourceId); + + /** + * Add a Local Job Submission details to a compute resource + * App catalog will return a jobSubmissionInterfaceId which will be added to the jobSubmissionInterfaces. + * + * @param computeResourceId + * The identifier of the compute resource to which JobSubmission protocol to be added + * + * @param priorityOrder + * Specify the priority of this job manager. If this is the only jobmanager, the priority can be zero. + * + * @param localSubmission + * The LOCALSubmission object to be added to the resource. + * + * @return status + * Returns the unique job submission id. + * + * + * @param string $computeResourceId + * @param int $priorityOrder + * @param \Airavata\Model\AppCatalog\ComputeResource\LOCALSubmission $localSubmission + * @return string + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function addLocalSubmissionDetails($computeResourceId, $priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\LOCALSubmission $localSubmission); + + /** + * Update the given Local Job Submission details + * + * @param jobSubmissionInterfaceId + * The identifier of the JobSubmission Interface to be updated. + * + * @param localSubmission + * The LOCALSubmission object to be updated. + * + * @return status + * Returns a success/failure of the deletion. + * + * + * @param string $jobSubmissionInterfaceId + * @param \Airavata\Model\AppCatalog\ComputeResource\LOCALSubmission $localSubmission + * @return bool + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function updateLocalSubmissionDetails($jobSubmissionInterfaceId, \Airavata\Model\AppCatalog\ComputeResource\LOCALSubmission $localSubmission); + + /** + * This method returns localJobSubmission object + * @param jobSubmissionInterfaceId + * The identifier of the JobSubmission Interface to be retrieved. + * @return LOCALSubmission instance + * + * + * @param string $jobSubmissionId + * @return \Airavata\Model\AppCatalog\ComputeResource\LOCALSubmission 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. + * + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function getLocalJobSubmission($jobSubmissionId); + + /** + * Add a SSH Job Submission details to a compute resource + * App catalog will return a jobSubmissionInterfaceId which will be added to the jobSubmissionInterfaces. + * + * @param computeResourceId + * The identifier of the compute resource to which JobSubmission protocol to be added + * + * @param priorityOrder + * Specify the priority of this job manager. If this is the only jobmanager, the priority can be zero. + * + * @param sshJobSubmission + * The SSHJobSubmission object to be added to the resource. + * + * @return status + * Returns the unique job submission id. + * + * + * @param string $computeResourceId + * @param int $priorityOrder + * @param \Airavata\Model\AppCatalog\ComputeResource\SSHJobSubmission $sshJobSubmission + * @return string + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function addSSHJobSubmissionDetails($computeResourceId, $priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\SSHJobSubmission $sshJobSubmission); + + /** + * This method returns SSHJobSubmission object + * @param jobSubmissionInterfaceId + * The identifier of the JobSubmission Interface to be retrieved. + * @return SSHJobSubmission instance + * + * + * @param string $jobSubmissionId + * @return \Airavata\Model\AppCatalog\ComputeResource\SSHJobSubmission 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. + * + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function getSSHJobSubmission($jobSubmissionId); + + /** + * Add a UNICORE Job Submission details to a compute resource + * App catalog will return a jobSubmissionInterfaceId which will be added to the jobSubmissionInterfaces. + * + * @param computeResourceId + * The identifier of the compute resource to which JobSubmission protocol to be added + * + * @param priorityOrder + * Specify the priority of this job manager. If this is the only jobmanager, the priority can be zero. + * + * @param unicoreJobSubmission + * The UnicoreJobSubmission object to be added to the resource. + * + * @return status + * Returns the unique job submission id. + * + * + * @param string $computeResourceId + * @param int $priorityOrder + * @param \Airavata\Model\AppCatalog\ComputeResource\UnicoreJobSubmission $unicoreJobSubmission + * @return string + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function addUNICOREJobSubmissionDetails($computeResourceId, $priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\UnicoreJobSubmission $unicoreJobSubmission); + + /** + * * This method returns UnicoreJobSubmission object + * * @param jobSubmissionInterfaceId + * * The identifier of the JobSubmission Interface to be retrieved. + * * @return UnicoreJobSubmission instance + * * + * + * @param string $jobSubmissionId + * @return \Airavata\Model\AppCatalog\ComputeResource\UnicoreJobSubmission 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. + * + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function getUnicoreJobSubmission($jobSubmissionId); + + /** + * * Add a Cloud Job Submission details to a compute resource + * * App catalog will return a jobSubmissionInterfaceId which will be added to the jobSubmissionInterfaces. + * * + * * @param computeResourceId + * * The identifier of the compute resource to which JobSubmission protocol to be added + * * + * * @param priorityOrder + * * Specify the priority of this job manager. If this is the only jobmanager, the priority can be zero. + * * + * * @param sshJobSubmission + * * The SSHJobSubmission object to be added to the resource. + * * + * * @return status + * * Returns the unique job submission id. + * * + * + * @param string $computeResourceId + * @param int $priorityOrder + * @param \Airavata\Model\AppCatalog\ComputeResource\CloudJobSubmission $cloudSubmission + * @return string + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function addCloudJobSubmissionDetails($computeResourceId, $priorityOrder, \Airavata\Model\AppCatalog\ComputeResource\CloudJobSubmission $cloudSubmission); + + /** + * * This method returns cloudJobSubmission object + * * @param jobSubmissionInterfaceI + * * The identifier of the JobSubmission Interface to be retrieved. + * * @return CloudJobSubmission instance + * * + * + * @param string $jobSubmissionId + * @return \Airavata\Model\AppCatalog\ComputeResource\CloudJobSubmission Cloud Job Submission + * + * + * + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function getCloudJobSubmission($jobSubmissionId); + + /** + * Update the given SSH Job Submission details + * + * @param jobSubmissionInterfaceId + * The identifier of the JobSubmission Interface to be updated. + * + * @param sshJobSubmission + * The SSHJobSubmission object to be updated. + * + * @return status + * Returns a success/failure of the deletion. + * + * + * @param string $jobSubmissionInterfaceId + * @param \Airavata\Model\AppCatalog\ComputeResource\SSHJobSubmission $sshJobSubmission + * @return bool + * @throws \Airavata\API\Error\InvalidRequestException + * @throws \Airavata\API\Error\AiravataClientException + * @throws \Airavata\API\Error\AiravataSystemException + */ + public function updateSSHJobSubmissionDetails($jobSubmissionInterfaceId, \Airavata\Model\AppCatalog\ComputeResource\SSHJobSubmission $sshJobSubmission); + + /** + * Update the given SSH Job Submission details + * + * @param jobSubmissionInterfaceId + * The identifier of the JobSubmission Interface to be updated. + * + * @param cloudJobSubmission + * The CloudJobSubmission object to be updated. + * + * @return status + * Re