Repository: airavata
Updated Branches:
  refs/heads/master f987a7364 -> 3cdea29b3


AIRAVATA-1667 - Modified both mysql and derby sql script files and introduced 
email monitor property table. Add part of new email monitor property resource 
implementation.


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

Branch: refs/heads/master
Commit: 3cdea29b319942b5561d658bfd550ba537212f47
Parents: f987a73
Author: shamrath <[email protected]>
Authored: Mon Apr 13 11:30:19 2015 -0400
Committer: shamrath <[email protected]>
Committed: Mon Apr 13 11:30:19 2015 -0400

----------------------------------------------------------------------
 .../catalog/data/model/SshJobSubmission.java    | 33 +++++++++++++++++++
 .../resources/SshJobSubmissionResource.java     | 34 +++++++++++++++++++-
 .../catalog/data/util/AppCatalogJPAUtils.java   |  3 ++
 .../src/main/resources/appcatalog-derby.sql     | 18 ++++++++++-
 .../src/main/resources/appcatalog-mysql.sql     | 18 ++++++++++-
 5 files changed, 103 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/airavata/blob/3cdea29b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/model/SshJobSubmission.java
----------------------------------------------------------------------
diff --git 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/model/SshJobSubmission.java
 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/model/SshJobSubmission.java
index fc72881..8e812c4 100644
--- 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/model/SshJobSubmission.java
+++ 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/model/SshJobSubmission.java
@@ -59,6 +59,15 @@ public class SshJobSubmission implements Serializable {
        @Column(name = "SSH_PORT")
        private int sshPort;
 
+    @Column(name = "MONITOR_MODE")
+    private String monitorMode;
+
+    @Column(name = "EMAIL_MONITOR_PROPERTY_ID")
+    private String emailMonitorPropertyId;
+
+    @JoinColumn(name = "EMAIL_MONITOR_PROPERTY_ID")
+    private EmailMonitorProperty emailMonitorProperty;
+
     @Column(name = "CREATION_TIME")
     private Timestamp creationTime;
 
@@ -129,4 +138,28 @@ public class SshJobSubmission implements Serializable {
        public void setSshPort(int sshPort) {
                this.sshPort=sshPort;
        }
+
+    public String getMonitorMode() {
+        return monitorMode;
+    }
+
+    public void setMonitorMode(String monitorMode) {
+        this.monitorMode = monitorMode;
+    }
+
+    public EmailMonitorProperty getEmailMonitorProperty() {
+        return emailMonitorProperty;
+    }
+
+    public void setEmailMonitorProperty(EmailMonitorProperty 
emailMonitorProperty) {
+        this.emailMonitorProperty = emailMonitorProperty;
+    }
+
+    public String getEmailMonitorPropertyId() {
+        return emailMonitorPropertyId;
+    }
+
+    public void setEmailMonitorPropertyId(String emailMonitorPropertyId) {
+        this.emailMonitorPropertyId = emailMonitorPropertyId;
+    }
 }

http://git-wip-us.apache.org/repos/asf/airavata/blob/3cdea29b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/SshJobSubmissionResource.java
----------------------------------------------------------------------
diff --git 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/SshJobSubmissionResource.java
 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/SshJobSubmissionResource.java
index 4b46dd3..2d87c60 100644
--- 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/SshJobSubmissionResource.java
+++ 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/resources/SshJobSubmissionResource.java
@@ -27,6 +27,7 @@ import javax.persistence.EntityManager;
 import javax.persistence.Query;
 
 import org.airavata.appcatalog.cpi.AppCatalogException;
+import 
org.apache.aiaravata.application.catalog.data.model.EmailMonitorProperty;
 import org.apache.aiaravata.application.catalog.data.model.ResourceJobManager;
 import org.apache.aiaravata.application.catalog.data.model.SshJobSubmission;
 import org.apache.aiaravata.application.catalog.data.util.AppCatalogJPAUtils;
@@ -45,6 +46,9 @@ public class SshJobSubmissionResource extends 
AbstractResource {
        private String alternativeSshHostname;
        private String securityProtocol;
        private int sshPort;
+    private String monitorMode;
+    private String emailMonitorPropertyId;
+    private EmailMonitorProperty emailMonitorProperty;
     private Timestamp createdTime;
     private Timestamp updatedTime;
 
@@ -230,7 +234,11 @@ public class SshJobSubmissionResource extends 
AbstractResource {
                        
sshJobSubmission.setAlternativeSshHostname(getAlternativeSshHostname());
                        
sshJobSubmission.setSecurityProtocol(getSecurityProtocol());
                        sshJobSubmission.setSshPort(getSshPort());
-                       if (existingSshJobSubmission == null) {
+            sshJobSubmission.setMonitorMode(getMonitorMode());
+            
sshJobSubmission.setEmailMonitorPropertyId(getEmailMonitorPropertyId());
+            EmailMonitorProperty emailMonitorProperty = 
em.find(EmailMonitorProperty.class, getEmailMonitorPropertyId());
+            sshJobSubmission.setEmailMonitorProperty(emailMonitorProperty);
+            if (existingSshJobSubmission == null) {
                                em.persist(sshJobSubmission);
                        } else {
                                em.merge(sshJobSubmission);
@@ -318,4 +326,28 @@ public class SshJobSubmissionResource extends 
AbstractResource {
        public void setSshPort(int sshPort) {
                this.sshPort=sshPort;
        }
+
+    public String getMonitorMode() {
+        return monitorMode;
+    }
+
+    public void setMonitorMode(String monitorMode) {
+        this.monitorMode = monitorMode;
+    }
+
+    public EmailMonitorProperty getEmailMonitorProperty() {
+        return emailMonitorProperty;
+    }
+
+    public void setEmailMonitorProperty(EmailMonitorProperty 
emailMonitorProperty) {
+        this.emailMonitorProperty = emailMonitorProperty;
+    }
+
+    public String getEmailMonitorPropertyId() {
+        return emailMonitorPropertyId;
+    }
+
+    public void setEmailMonitorPropertyId(String emailMonitorPropertyId) {
+        this.emailMonitorPropertyId = emailMonitorPropertyId;
+    }
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/airavata/blob/3cdea29b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/util/AppCatalogJPAUtils.java
----------------------------------------------------------------------
diff --git 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/util/AppCatalogJPAUtils.java
 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/util/AppCatalogJPAUtils.java
index 3a9b6ed..95eb20b 100644
--- 
a/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/util/AppCatalogJPAUtils.java
+++ 
b/modules/app-catalog/app-catalog-data/src/main/java/org/apache/aiaravata/application/catalog/data/util/AppCatalogJPAUtils.java
@@ -25,6 +25,7 @@ import org.apache.aiaravata.application.catalog.data.model.*;
 import org.apache.aiaravata.application.catalog.data.resources.*;
 import org.apache.airavata.common.exception.ApplicationSettingsException;
 import org.apache.airavata.common.utils.ServerSettings;
+import org.apache.airavata.model.appcatalog.computeresource.MonitorMode;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -606,6 +607,8 @@ public class AppCatalogJPAUtils {
             
sshJobSubmissionResource.setAlternativeSshHostname(o.getAlternativeSshHostname());
             
sshJobSubmissionResource.setSecurityProtocol(o.getSecurityProtocol());
             sshJobSubmissionResource.setSshPort(o.getSshPort());
+            sshJobSubmissionResource.setMonitorMode(o.getMonitorMode());
+            
sshJobSubmissionResource.setEmailMonitorProperty(o.getEmailMonitorProperty());
             sshJobSubmissionResource.setCreatedTime(o.getCreationTime());
             if (o.getUpdateTime() != null){
                 sshJobSubmissionResource.setUpdatedTime(o.getUpdateTime());

http://git-wip-us.apache.org/repos/asf/airavata/blob/3cdea29b/modules/app-catalog/app-catalog-data/src/main/resources/appcatalog-derby.sql
----------------------------------------------------------------------
diff --git 
a/modules/app-catalog/app-catalog-data/src/main/resources/appcatalog-derby.sql 
b/modules/app-catalog/app-catalog-data/src/main/resources/appcatalog-derby.sql
index 4e28e04..5d56086 100644
--- 
a/modules/app-catalog/app-catalog-data/src/main/resources/appcatalog-derby.sql
+++ 
b/modules/app-catalog/app-catalog-data/src/main/resources/appcatalog-derby.sql
@@ -117,10 +117,13 @@ CREATE TABLE SSH_JOB_SUBMISSION
         ALTERNATIVE_SSH_HOSTNAME VARCHAR (255),
         SECURITY_PROTOCOL VARCHAR (255) NOT NULL,
         SSH_PORT INTEGER,
+        MONITOR_MODE VARCHAR (255),
+        EMAIL_MONITOR_PROPERTY_ID VARCHAR (255),
         CREATION_TIME TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
         UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00',
         PRIMARY KEY (JOB_SUBMISSION_INTERFACE_ID),
-        FOREIGN KEY (RESOURCE_JOB_MANAGER_ID) REFERENCES 
RESOURCE_JOB_MANAGER(RESOURCE_JOB_MANAGER_ID)
+        FOREIGN KEY (RESOURCE_JOB_MANAGER_ID) REFERENCES 
RESOURCE_JOB_MANAGER(RESOURCE_JOB_MANAGER_ID),
+        FOREIGN KEY (EMAIL_MONITOR_PROPERTY_ID) REFERENCES  
EMAIL_MONITOR_PROPERTY(EMAIL_MONITOR_PROPERTY_ID)
 );
 
 CREATE TABLE SCP_DATA_MOVEMENT
@@ -442,6 +445,19 @@ CREATE TABLE WORKFLOW_OUTPUT
          FOREIGN KEY (WF_TEMPLATE_ID) REFERENCES WORKFLOW(WF_TEMPLATE_ID) ON 
DELETE CASCADE
 );
 
+CREATE TABLE EMAIL_MONITOR_PROPERTY
+(
+         JOB_SUBMISSION_INTERFACE_ID VARCHAR (255) NOT NULL,
+         EMAIL_MONITOR_PROPERTY_ID VARCHAR (255) NOT NULL,
+         HOST VARCHAR(255),
+         EMAIL_ADDRESS VARCHAR(255),
+         PASSWORD CLOB,
+         FOLDER_NAME VARCHAR(255) DEFAULT "INBOX",
+         EMAIL_PROTOCOL VARCHAR(255),
+         PRIMARY KEY(JOB_SUBMISSION_INTERFACE_ID,EMAIL_MONITOR_PROPERTY_ID),
+         FOREIGN KEY (JOB_SUBMISSION_INTERFACE_ID)  REFERENCES 
SSH_JOB_SUBMISSION(JOB_SUBMISSION_INTERFACE_ID) ON DELETE CASCADE
+);
+
 CREATE TABLE CONFIGURATION
 (
         CONFIG_KEY VARCHAR(255),

http://git-wip-us.apache.org/repos/asf/airavata/blob/3cdea29b/modules/app-catalog/app-catalog-data/src/main/resources/appcatalog-mysql.sql
----------------------------------------------------------------------
diff --git 
a/modules/app-catalog/app-catalog-data/src/main/resources/appcatalog-mysql.sql 
b/modules/app-catalog/app-catalog-data/src/main/resources/appcatalog-mysql.sql
index 2dcc119..aecf044 100644
--- 
a/modules/app-catalog/app-catalog-data/src/main/resources/appcatalog-mysql.sql
+++ 
b/modules/app-catalog/app-catalog-data/src/main/resources/appcatalog-mysql.sql
@@ -128,10 +128,13 @@ CREATE TABLE SSH_JOB_SUBMISSION
         ALTERNATIVE_SSH_HOSTNAME VARCHAR (255),
         SECURITY_PROTOCOL VARCHAR (255) NOT NULL,
         SSH_PORT INTEGER,
+        MONITOR_MODE VARCHAR (255),
+        EMAIL_MONITOR_PROPERTY_ID VARCHAR (255),
         CREATION_TIME TIMESTAMP DEFAULT NOW(),
         UPDATE_TIME TIMESTAMP DEFAULT '0000-00-00 00:00:00' ,
         PRIMARY KEY (JOB_SUBMISSION_INTERFACE_ID),
-        FOREIGN KEY (RESOURCE_JOB_MANAGER_ID) REFERENCES 
RESOURCE_JOB_MANAGER(RESOURCE_JOB_MANAGER_ID)
+        FOREIGN KEY (RESOURCE_JOB_MANAGER_ID) REFERENCES 
RESOURCE_JOB_MANAGER(RESOURCE_JOB_MANAGER_ID),
+        FOREIGN KEY (EMAIL_MONITOR_PROPERTY_ID) REFERENCES  
EMAIL_MONITOR_PROPERTY(EMAIL_MONITOR_PROPERTY_ID)
 );
 
 CREATE TABLE SCP_DATA_MOVEMENT
@@ -440,6 +443,19 @@ CREATE TABLE WORKFLOW_OUTPUT
          FOREIGN KEY (WF_TEMPLATE_ID) REFERENCES WORKFLOW(WF_TEMPLATE_ID) ON 
DELETE CASCADE
 );
 
+CREATE TABLE EMAIL_MONITOR_PROPERTY
+(
+         JOB_SUBMISSION_INTERFACE_ID VARCHAR (255) NOT NULL,
+         EMAIL_MONITOR_PROPERTY_ID VARCHAR (255) NOT NULL,
+         HOST VARCHAR(255),
+         EMAIL_ADDRESS VARCHAR(255),
+         PASSWORD CLOB,
+         FOLDER_NAME VARCHAR(255) DEFAULT "INBOX",
+         EMAIL_PROTOCOL VARCHAR(255),
+         PRIMARY KEY(JOB_SUBMISSION_INTERFACE_ID,EMAIL_MONITOR_PROPERTY_ID),
+         FOREIGN KEY (JOB_SUBMISSION_INTERFACE_ID)  REFERENCES 
SSH_JOB_SUBMISSION(JOB_SUBMISSION_INTERFACE_ID) ON DELETE CASCADE
+);
+
 CREATE TABLE CONFIGURATION
 (
           CONFIG_KEY VARCHAR(255),

Reply via email to