You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ch...@apache.org on 2014/07/02 22:06:19 UTC

git commit: adding app catalog data model util classes

Repository: airavata
Updated Branches:
  refs/heads/master ab566e1b6 -> bd9c12d0d


adding app catalog data model util classes


Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/bd9c12d0
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/bd9c12d0
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/bd9c12d0

Branch: refs/heads/master
Commit: bd9c12d0daff8a6e263ad3488b77117be2f72fb8
Parents: ab566e1
Author: Chathuri Wimalasena <ka...@gmail.com>
Authored: Wed Jul 2 16:06:13 2014 -0400
Committer: Chathuri Wimalasena <ka...@gmail.com>
Committed: Wed Jul 2 16:06:13 2014 -0400

----------------------------------------------------------------------
 .../airavata/model/util/AppDeploymentUtil.java  | 50 ++++++++++++
 .../airavata/model/util/AppInterfaceUtil.java   | 71 +++++++++++++++++
 .../model/util/ComputeResourceUtil.java         | 84 ++++++++++++++++++++
 3 files changed, 205 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/bd9c12d0/airavata-api/airavata-model-utils/src/main/java/org/apache/airavata/model/util/AppDeploymentUtil.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-model-utils/src/main/java/org/apache/airavata/model/util/AppDeploymentUtil.java b/airavata-api/airavata-model-utils/src/main/java/org/apache/airavata/model/util/AppDeploymentUtil.java
new file mode 100644
index 0000000..4e1a369
--- /dev/null
+++ b/airavata-api/airavata-model-utils/src/main/java/org/apache/airavata/model/util/AppDeploymentUtil.java
@@ -0,0 +1,50 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+package org.apache.airavata.model.util;
+
+import org.apache.airavata.model.appcatalog.appdeployment.ApplicationDeploymentDescription;
+import org.apache.airavata.model.appcatalog.appdeployment.SetEnvPaths;
+
+public class AppDeploymentUtil {
+    public static ApplicationDeploymentDescription createAppDeployment (String moduleId,
+                                                                        String computeHost,
+                                                                        String executablePath,
+                                                                        String appDepDescription,
+                                                                        String moduleLoadCmd){
+        ApplicationDeploymentDescription description = new ApplicationDeploymentDescription();
+        description.setAppModuleId(moduleId);
+        description.setComputeHostId(computeHost);
+        description.setExecutablePath(executablePath);
+        description.setAppDeploymentDescription(appDepDescription);
+        description.setModuleLoadCmd(moduleLoadCmd);
+        return description;
+    }
+
+    public static SetEnvPaths createEnvPath (String name,
+                                             String val){
+        SetEnvPaths setEnvPaths = new SetEnvPaths();
+        setEnvPaths.setName(name);
+        setEnvPaths.setValue(val);
+        return setEnvPaths;
+    }
+
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/bd9c12d0/airavata-api/airavata-model-utils/src/main/java/org/apache/airavata/model/util/AppInterfaceUtil.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-model-utils/src/main/java/org/apache/airavata/model/util/AppInterfaceUtil.java b/airavata-api/airavata-model-utils/src/main/java/org/apache/airavata/model/util/AppInterfaceUtil.java
new file mode 100644
index 0000000..2de82b3
--- /dev/null
+++ b/airavata-api/airavata-model-utils/src/main/java/org/apache/airavata/model/util/AppInterfaceUtil.java
@@ -0,0 +1,71 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+package org.apache.airavata.model.util;
+
+import org.apache.airavata.model.appcatalog.appinterface.ApplicationInterfaceDescription;
+import org.apache.airavata.model.appcatalog.appinterface.DataType;
+import org.apache.airavata.model.appcatalog.appinterface.InputDataObjectType;
+import org.apache.airavata.model.appcatalog.appinterface.OutputDataObjectType;
+
+import java.util.List;
+
+public class AppInterfaceUtil {
+    public static ApplicationInterfaceDescription createAppInterface (String applicationName,
+                                                                      List<String> appModules,
+                                                                      List<InputDataObjectType> appInputs,
+                                                                      List<OutputDataObjectType> appOutputs){
+        ApplicationInterfaceDescription interfaceDescription = new ApplicationInterfaceDescription();
+        interfaceDescription.setApplicationName(applicationName);
+        interfaceDescription.setApplicationModules(appModules);
+        interfaceDescription.setApplicationInputs(appInputs);
+        interfaceDescription.setApplicationOutputs(appOutputs);
+        return interfaceDescription;
+    }
+
+    public static InputDataObjectType createApplicationInput (String name,
+                                                              String value,
+                                                              DataType type,
+                                                              String applicationArgument,
+                                                              boolean standardInput,
+                                                              String userFriendlyDesc,
+                                                              String metadata){
+        InputDataObjectType appInput = new InputDataObjectType();
+        appInput.setName(name);
+        appInput.setValue(value);
+        appInput.setType(type);
+        appInput.setMetaData(metadata);
+        appInput.setApplicationArguement(applicationArgument);
+        appInput.setUserFriendlyDescription(userFriendlyDesc);
+        appInput.setStandardInput(standardInput);
+        return appInput;
+    }
+
+    public static OutputDataObjectType createApplicationOutput (String name,
+                                                                String value,
+                                                                DataType type){
+        OutputDataObjectType appOutput = new OutputDataObjectType();
+        appOutput.setName(name);
+        appOutput.setValue(value);
+        appOutput.setType(type);
+        return appOutput;
+    }
+}

http://git-wip-us.apache.org/repos/asf/airavata/blob/bd9c12d0/airavata-api/airavata-model-utils/src/main/java/org/apache/airavata/model/util/ComputeResourceUtil.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-model-utils/src/main/java/org/apache/airavata/model/util/ComputeResourceUtil.java b/airavata-api/airavata-model-utils/src/main/java/org/apache/airavata/model/util/ComputeResourceUtil.java
new file mode 100644
index 0000000..49d80b0
--- /dev/null
+++ b/airavata-api/airavata-model-utils/src/main/java/org/apache/airavata/model/util/ComputeResourceUtil.java
@@ -0,0 +1,84 @@
+/*
+ *
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ *
+ */
+
+package org.apache.airavata.model.util;
+
+import org.apache.airavata.model.computehost.*;
+
+import java.util.List;
+
+public class ComputeResourceUtil {
+    public static ComputeResourceDescription createComputeResource (String resourceName,
+                                                                    String resourceDesc,
+                                                                    String preferedSubmissionProtocol){
+        ComputeResourceDescription computeResource = new ComputeResourceDescription();
+        computeResource.setHostName(resourceName);
+        computeResource.setResourceDescription(resourceDesc);
+        computeResource.setPreferredJobSubmissionProtocol(preferedSubmissionProtocol);
+        return computeResource;
+    }
+
+    public static SSHJobSubmission createSSHJobSubmission (int sshPort,
+                                                        ResourceJobManager jobManager){
+        SSHJobSubmission jobSubmission = new SSHJobSubmission();
+        jobSubmission.setResourceJobManager(jobManager);
+        jobSubmission.setSshPort(sshPort);
+        return jobSubmission;
+    }
+
+    public static GSISSHJobSubmission createGSISSHJobSubmission (int sshPort,
+                                                              ResourceJobManager jobManager,
+                                                              String installedPath,
+                                                              String monitorMode){
+        GSISSHJobSubmission jobSubmission = new GSISSHJobSubmission();
+        jobSubmission.setResourceJobManager(jobManager);
+        jobSubmission.setSshPort(sshPort);
+        jobSubmission.setInstalledPath(installedPath);
+        jobSubmission.setMonitorMode(monitorMode);
+        return jobSubmission;
+    }
+
+    public static GlobusJobSubmission createGlobusJobSubmission (SecurityProtocol securityProtocol,
+                                                                 ResourceJobManager resourceJobManager,
+                                                                 List<String> globusEPs){
+        GlobusJobSubmission jobSubmission = new GlobusJobSubmission();
+        jobSubmission.setResourceJobManager(resourceJobManager);
+        jobSubmission.setSecurityProtocol(securityProtocol);
+        jobSubmission.setGlobusGateKeeperEndPoint(globusEPs);
+        return jobSubmission;
+    }
+
+    public static SCPDataMovement createSCPDataMovement (SecurityProtocol securityProtocol,
+                                                         int sshPort){
+        SCPDataMovement dataMovement = new SCPDataMovement();
+        dataMovement.setSecurityProtocol(securityProtocol);
+        dataMovement.setSshPort(sshPort);
+        return dataMovement;
+    }
+
+    public static GridFTPDataMovement createGridFTPDataMovement (SecurityProtocol securityProtocol,
+                                                                List<String> gridFTPEPs){
+        GridFTPDataMovement dataMovement = new GridFTPDataMovement();
+        dataMovement.setSecurityProtocol(securityProtocol);
+        dataMovement.setGridFTPEndPoint(gridFTPEPs);
+        return dataMovement;
+    }
+}