You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by sh...@apache.org on 2016/08/05 23:41:49 UTC
airavata git commit: Added qos, reservation registry changes
Repository: airavata
Updated Branches:
refs/heads/hotfix-for-allocation 9bc25f9a1 -> a4716a7b3
Added qos, reservation registry changes
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/a4716a7b
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/a4716a7b
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/a4716a7b
Branch: refs/heads/hotfix-for-allocation
Commit: a4716a7b3bdf07645370117edc0b9484d3308dab
Parents: 9bc25f9
Author: Shameera Rathnayaka <sh...@gmail.com>
Authored: Fri Aug 5 19:41:44 2016 -0400
Committer: Shameera Rathnayaka <sh...@gmail.com>
Committed: Fri Aug 5 19:41:44 2016 -0400
----------------------------------------------------------------------
.../catalog/impl/GwyResourceProfileImpl.java | 9 ++++
.../model/ComputeResourcePreference.java | 43 +++++++++++++++++++
.../ComputeHostPreferenceResource.java | 45 ++++++++++++++++++++
.../app/catalog/util/AppCatalogJPAUtils.java | 4 ++
.../util/AppCatalogThriftConversion.java | 4 ++
.../src/main/resources/appcatalog-derby.sql | 4 ++
.../src/main/resources/appcatalog-mysql.sql | 4 ++
7 files changed, 113 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/a4716a7b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/GwyResourceProfileImpl.java
----------------------------------------------------------------------
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/GwyResourceProfileImpl.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/GwyResourceProfileImpl.java
index da80baf..bbf300a 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/GwyResourceProfileImpl.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/impl/GwyResourceProfileImpl.java
@@ -21,6 +21,7 @@
package org.apache.airavata.registry.core.app.catalog.impl;
+import org.apache.airavata.common.utils.AiravataUtils;
import org.apache.airavata.model.appcatalog.gatewayprofile.ComputeResourcePreference;
import org.apache.airavata.model.appcatalog.gatewayprofile.GatewayResourceProfile;
import org.apache.airavata.model.appcatalog.gatewayprofile.StoragePreference;
@@ -81,6 +82,10 @@ public class GwyResourceProfileImpl implements GwyResourceProfile {
resource.setBatchQueue(preference.getPreferredBatchQueue());
resource.setProjectNumber(preference.getAllocationProjectNumber());
resource.setScratchLocation(preference.getScratchLocation());
+ resource.setQualityOfService(preference.getQualityOfService());
+ resource.setReservation(preference.getReservation());
+ resource.setReservationStartTime(AiravataUtils.getTime(preference.getReservationStartTime()));
+ resource.setReservationEndTime(AiravataUtils.getTime(preference.getReservationEndTime()));
resource.save();
}
}
@@ -137,6 +142,10 @@ public class GwyResourceProfileImpl implements GwyResourceProfile {
resource.setScratchLocation(preference.getScratchLocation());
resource.setResourceCSToken(preference.getResourceSpecificCredentialStoreToken());
resource.setUsageReportingGatewayId(preference.getUsageReportingGatewayId());
+ resource.setQualityOfService(preference.getQualityOfService());
+ resource.setReservation(preference.getReservation());
+ resource.setReservationStartTime(AiravataUtils.getTime(preference.getReservationStartTime()));
+ resource.setReservationEndTime(AiravataUtils.getTime(preference.getReservationEndTime()));
resource.save();
}
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/a4716a7b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResourcePreference.java
----------------------------------------------------------------------
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResourcePreference.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResourcePreference.java
index cdbce4e..676aa2d 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResourcePreference.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/model/ComputeResourcePreference.java
@@ -30,6 +30,7 @@ import javax.persistence.IdClass;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
+import java.sql.Timestamp;
@Entity
@Table(name = "COMPUTE_RESOURCE_PREFERENCE")
@@ -59,6 +60,15 @@ public class ComputeResourcePreference {
private String computeResourceCSToken;
@Column(name = "USAGE_REPORTING_GATEWAY_ID")
private String usageReportingGWId;
+ @Column(name = "QUALITY_OF_SERVICE")
+ private String qualityOfService;
+ @Column(name = "RESERVATION")
+ private String reservation;
+ @Column(name = "RESERVATION_START_TIME")
+ private Timestamp reservationStartTime;
+ @Column(name = "RESERVATION_END_TIME")
+ private Timestamp reservationEndTime;
+
@ManyToOne(cascade= CascadeType.MERGE)
@JoinColumn(name = "RESOURCE_ID")
@@ -68,6 +78,7 @@ public class ComputeResourcePreference {
@JoinColumn(name = "GATEWAY_ID")
private GatewayProfile gatewayProfile;
+
public String getGatewayId() {
return gatewayId;
}
@@ -171,4 +182,36 @@ public class ComputeResourcePreference {
public void setUsageReportingGWId(String usageReportingGWId) {
this.usageReportingGWId = usageReportingGWId;
}
+
+ public String getQualityOfService() {
+ return qualityOfService;
+ }
+
+ public void setQualityOfService(String qualityOfService) {
+ this.qualityOfService = qualityOfService;
+ }
+
+ public String getReservation() {
+ return reservation;
+ }
+
+ public void setReservation(String reservation) {
+ this.reservation = reservation;
+ }
+
+ public Timestamp getReservationStartTime() {
+ return reservationStartTime;
+ }
+
+ public void setReservationStartTime(Timestamp reservationStratTime) {
+ this.reservationStartTime = reservationStratTime;
+ }
+
+ public Timestamp getReservationEndTime() {
+ return reservationEndTime;
+ }
+
+ public void setReservationEndTime(Timestamp reservationEndTime) {
+ this.reservationEndTime = reservationEndTime;
+ }
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/a4716a7b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/resources/ComputeHostPreferenceResource.java
----------------------------------------------------------------------
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/resources/ComputeHostPreferenceResource.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/resources/ComputeHostPreferenceResource.java
index 6a95f61..67dd77c 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/resources/ComputeHostPreferenceResource.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/resources/ComputeHostPreferenceResource.java
@@ -35,6 +35,7 @@ import org.slf4j.LoggerFactory;
import javax.persistence.EntityManager;
import javax.persistence.Query;
+import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
@@ -53,6 +54,10 @@ public class ComputeHostPreferenceResource extends AppCatAbstractResource {
private String loginUserName;
private String resourceCSToken;
private String usageReportingGatewayId;
+ private String qualityOfService;
+ private String reservation;
+ private Timestamp reservationStartTime;
+ private Timestamp reservationEndTime;
private GatewayProfileResource gatewayProfile;
private ComputeResourceResource computeHostResource;
@@ -161,6 +166,38 @@ public class ComputeHostPreferenceResource extends AppCatAbstractResource {
this.usageReportingGatewayId = usageReportingGatewayId;
}
+ public String getQualityOfService() {
+ return qualityOfService;
+ }
+
+ public void setQualityOfService(String qualityOfService) {
+ this.qualityOfService = qualityOfService;
+ }
+
+ public String getReservation() {
+ return reservation;
+ }
+
+ public void setReservation(String reservation) {
+ this.reservation = reservation;
+ }
+
+ public Timestamp getReservationStartTime() {
+ return reservationStartTime;
+ }
+
+ public void setReservationStartTime(Timestamp reservationStartTime) {
+ this.reservationStartTime = reservationStartTime;
+ }
+
+ public Timestamp getReservationEndTime() {
+ return reservationEndTime;
+ }
+
+ public void setReservationEndTime(Timestamp reservationEndTime) {
+ this.reservationEndTime = reservationEndTime;
+ }
+
@Override
public void remove(Object identifier) throws AppCatalogException {
HashMap<String, String> ids;
@@ -394,6 +431,10 @@ public class ComputeHostPreferenceResource extends AppCatAbstractResource {
existingPreference.setLoginUserName(loginUserName);
existingPreference.setComputeResourceCSToken(resourceCSToken);
existingPreference.setUsageReportingGWId(usageReportingGatewayId);
+ existingPreference.setQualityOfService(qualityOfService);
+ existingPreference.setReservation(reservation);
+ existingPreference.setReservationStartTime(reservationStartTime);
+ existingPreference.setReservationEndTime(reservationEndTime);
em.merge(existingPreference);
} else {
ComputeResourcePreference resourcePreference = new ComputeResourcePreference();
@@ -410,6 +451,10 @@ public class ComputeHostPreferenceResource extends AppCatAbstractResource {
resourcePreference.setLoginUserName(loginUserName);
resourcePreference.setComputeResourceCSToken(resourceCSToken);
resourcePreference.setUsageReportingGWId(usageReportingGatewayId);
+ resourcePreference.setQualityOfService(qualityOfService);
+ resourcePreference.setReservation(reservation);
+ resourcePreference.setReservationStartTime(reservationStartTime);
+ resourcePreference.setReservationEndTime(reservationEndTime);
em.persist(resourcePreference);
}
em.getTransaction().commit();
http://git-wip-us.apache.org/repos/asf/airavata/blob/a4716a7b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/util/AppCatalogJPAUtils.java
----------------------------------------------------------------------
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/util/AppCatalogJPAUtils.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/util/AppCatalogJPAUtils.java
index c839e50..a62259b 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/util/AppCatalogJPAUtils.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/util/AppCatalogJPAUtils.java
@@ -873,6 +873,10 @@ public class AppCatalogJPAUtils {
resource.setUsageReportingGatewayId(o.getUsageReportingGWId());
resource.setComputeHostResource((ComputeResourceResource) createComputeResource(o.getComputeHostResource()));
resource.setGatewayProfile((GatewayProfileResource) createGatewayProfile(o.getGatewayProfile()));
+ resource.setQualityOfService(o.getQualityOfService());
+ resource.setReservation(o.getReservation());
+ resource.setReservationStartTime(o.getReservationStartTime());
+ resource.setReservationEndTime(o.getReservationEndTime());
}
return resource;
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/a4716a7b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/util/AppCatalogThriftConversion.java
----------------------------------------------------------------------
diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/util/AppCatalogThriftConversion.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/util/AppCatalogThriftConversion.java
index be31d46..4d73ac6 100644
--- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/util/AppCatalogThriftConversion.java
+++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/app/catalog/util/AppCatalogThriftConversion.java
@@ -832,6 +832,10 @@ public class AppCatalogThriftConversion {
preference.setLoginUserName(resource.getLoginUserName());
preference.setResourceSpecificCredentialStoreToken(resource.getResourceCSToken());
preference.setUsageReportingGatewayId(resource.getGatewayId());
+ preference.setQualityOfService(resource.getQualityOfService());
+ preference.setReservation(resource.getReservation());
+ preference.setReservationStartTime(resource.getReservationStartTime().getTime());
+ preference.setReservationEndTime(resource.getReservationEndTime().getTime());
return preference;
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/a4716a7b/modules/registry/registry-core/src/main/resources/appcatalog-derby.sql
----------------------------------------------------------------------
diff --git a/modules/registry/registry-core/src/main/resources/appcatalog-derby.sql b/modules/registry/registry-core/src/main/resources/appcatalog-derby.sql
index 61d06a2..9a23f5e 100644
--- a/modules/registry/registry-core/src/main/resources/appcatalog-derby.sql
+++ b/modules/registry/registry-core/src/main/resources/appcatalog-derby.sql
@@ -342,6 +342,10 @@ CREATE TABLE COMPUTE_RESOURCE_PREFERENCE
LOGIN_USERNAME VARCHAR(255),
RESOURCE_CS_TOKEN VARCHAR(255),
USAGE_REPORTING_GATEWAY_ID VARCHAR(255),
+ QUALITY_OF_SERVICE VARCHAR(255),
+ RESERVATION VARCHAR (255),
+ RESERVATION_START_TIME timestamp,
+ RESERVATION_END_TIME timestamp,
PRIMARY KEY(GATEWAY_ID,RESOURCE_ID),
FOREIGN KEY (RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE,
FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY_PROFILE(GATEWAY_ID) ON DELETE CASCADE
http://git-wip-us.apache.org/repos/asf/airavata/blob/a4716a7b/modules/registry/registry-core/src/main/resources/appcatalog-mysql.sql
----------------------------------------------------------------------
diff --git a/modules/registry/registry-core/src/main/resources/appcatalog-mysql.sql b/modules/registry/registry-core/src/main/resources/appcatalog-mysql.sql
index 545ca5c..0aa91a4 100644
--- a/modules/registry/registry-core/src/main/resources/appcatalog-mysql.sql
+++ b/modules/registry/registry-core/src/main/resources/appcatalog-mysql.sql
@@ -341,6 +341,10 @@ CREATE TABLE COMPUTE_RESOURCE_PREFERENCE
LOGIN_USERNAME VARCHAR(255),
RESOURCE_CS_TOKEN VARCHAR(255),
USAGE_REPORTING_GATEWAY_ID VARCHAR(255),
+ QUALITY_OF_SERVICE VARCHAR(255),
+ RESERVATION VARCHAR (255),
+ RESERVATION_START_TIME timestamp,
+ RESERVATION_END_TIME timestamp,
PRIMARY KEY(GATEWAY_ID,RESOURCE_ID),
FOREIGN KEY (RESOURCE_ID) REFERENCES COMPUTE_RESOURCE(RESOURCE_ID) ON DELETE CASCADE,
FOREIGN KEY (GATEWAY_ID) REFERENCES GATEWAY_PROFILE(GATEWAY_ID) ON DELETE CASCADE