Repository: airavata Updated Branches: refs/heads/develop 81e4a397d -> ab0541aeb
http://git-wip-us.apache.org/repos/asf/airavata/blob/ab0541ae/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/NotificationPriority.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/NotificationPriority.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/NotificationPriority.java new file mode 100644 index 0000000..90c56be --- /dev/null +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/NotificationPriority.java @@ -0,0 +1,65 @@ +/** + * 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. + */ + +/** + * Autogenerated by Thrift Compiler (0.9.3) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +package org.apache.airavata.model.workspace; + + +import java.util.Map; +import java.util.HashMap; +import org.apache.thrift.TEnum; + +public enum NotificationPriority implements org.apache.thrift.TEnum { + LOW(0), + NORMAL(1), + HIGH(2); + + private final int value; + + private NotificationPriority(int value) { + this.value = value; + } + + /** + * Get the integer value of this enum value, as defined in the Thrift IDL. + */ + public int getValue() { + return value; + } + + /** + * Find a the enum type by its integer value, as defined in the Thrift IDL. + * @return null if the value is not found. + */ + public static NotificationPriority findByValue(int value) { + switch (value) { + case 0: + return LOW; + case 1: + return NORMAL; + case 2: + return HIGH; + default: + return null; + } + } +} http://git-wip-us.apache.org/repos/asf/airavata/blob/ab0541ae/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Project.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Project.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Project.java index 2a9548e..24442db 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Project.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/Project.java @@ -51,7 +51,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) -@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-04-22") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-04-29") public class Project implements org.apache.thrift.TBase<Project, Project._Fields>, java.io.Serializable, Cloneable, Comparable<Project> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("Project"); http://git-wip-us.apache.org/repos/asf/airavata/blob/ab0541ae/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/User.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/User.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/User.java index b0fcf3b..f3c2e18 100644 --- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/User.java +++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/workspace/User.java @@ -51,7 +51,7 @@ import org.slf4j.Logger; import org.slf4j.LoggerFactory; @SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) -@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-04-22") +@Generated(value = "Autogenerated by Thrift Compiler (0.9.3)", date = "2016-04-29") public class User implements org.apache.thrift.TBase<User, User._Fields>, java.io.Serializable, Cloneable, Comparable<User> { private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("User"); http://git-wip-us.apache.org/repos/asf/airavata/blob/ab0541ae/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/impl/NotificationRegistry.java ---------------------------------------------------------------------- diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/impl/NotificationRegistry.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/impl/NotificationRegistry.java index d30274e..1b019a4 100644 --- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/impl/NotificationRegistry.java +++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/impl/NotificationRegistry.java @@ -46,11 +46,16 @@ public class NotificationRegistry { notificationResource.setNotificationId(notification.getNotificationId()); notificationResource.setGatewayId(notification.getGatewayId()); notificationResource.setTitle(notification.getTitle()); - notificationResource.setNotificationMessage(notification.getNotifcationMessage()); - if(notification.getPublishedtime() != 0) - notificationResource.setPublishedTime(new Timestamp(notification.getPublishedtime())); + notificationResource.setNotificationMessage(notification.getNotificationMessage()); + notificationResource.setPriority(notification.getPriority().toString()); + if(notification.getPublishedTime() != 0) + notificationResource.setPublishedTime(new Timestamp(notification.getPublishedTime())); if(notification.getExpirationTime() != 0) notificationResource.setExpirationTime(new Timestamp(notification.getExpirationTime())); + if(notification.getCreationTime() != 0) + notificationResource.setCreationTime(new Timestamp(notification.getCreationTime())); + else + notificationResource.setCreationTime(new Timestamp(System.currentTimeMillis())); notificationResource.save(); } http://git-wip-us.apache.org/repos/asf/airavata/blob/ab0541ae/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/model/Notification.java ---------------------------------------------------------------------- diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/model/Notification.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/model/Notification.java index 078194a..409bd3d 100644 --- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/model/Notification.java +++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/model/Notification.java @@ -37,6 +37,8 @@ public class Notification { private String gatewayId; private String title; private String notificationMessage; + private String priority; + private Timestamp creationDate; private Timestamp publishedDate; private Timestamp expirationDate; @@ -77,6 +79,24 @@ public class Notification { this.notificationMessage = notificationMessage; } + @Column(name = "PRIORITY") + public String getPriority() { + return priority; + } + + public void setPriority (String priority) { + this.priority = priority; + } + + @Column(name = "CREATION_DATE") + public Timestamp getCreationDate() { + return creationDate; + } + + public void setCreationDate (Timestamp creationDate) { + this.creationDate = creationDate; + } + @Column(name = "PUBLISHED_DATE") public Timestamp getPublishedDate() { return publishedDate; http://git-wip-us.apache.org/repos/asf/airavata/blob/ab0541ae/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/resources/NotificationResource.java ---------------------------------------------------------------------- diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/resources/NotificationResource.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/resources/NotificationResource.java index a569578..d87925e 100644 --- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/resources/NotificationResource.java +++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/resources/NotificationResource.java @@ -43,6 +43,8 @@ public class NotificationResource extends AbstractExpCatResource { private String gatewayId; private String title; private String notificationMessage; + private String priority; + private Timestamp creationTime; private Timestamp publishedTime; private Timestamp expirationTime; @@ -94,6 +96,22 @@ public class NotificationResource extends AbstractExpCatResource { this.expirationTime = expirationTime; } + public String getPriority() { + return priority; + } + + public void setPriority(String priority) { + this.priority = priority; + } + + public Timestamp getCreationTime() { + return creationTime; + } + + public void setCreationTime(Timestamp creationTime) { + this.creationTime = creationTime; + } + /** * @param type child resource type * @return child resource http://git-wip-us.apache.org/repos/asf/airavata/blob/ab0541ae/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/resources/Utils.java ---------------------------------------------------------------------- diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/resources/Utils.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/resources/Utils.java index bff9aeb..afddef8 100644 --- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/resources/Utils.java +++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/resources/Utils.java @@ -377,6 +377,8 @@ public class Utils { notificationResource.setNotificationMessage(o.getNotificationMessage()); notificationResource.setPublishedTime(o.getPublishedDate()); notificationResource.setExpirationTime(o.getExpirationDate()); + notificationResource.setCreationTime(o.getCreationDate()); + notificationResource.setPriority(o.getPriority()); } return notificationResource; http://git-wip-us.apache.org/repos/asf/airavata/blob/ab0541ae/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/utils/ThriftDataModelConversion.java ---------------------------------------------------------------------- diff --git a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/utils/ThriftDataModelConversion.java b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/utils/ThriftDataModelConversion.java index 30523c4..a95b85e 100644 --- a/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/utils/ThriftDataModelConversion.java +++ b/modules/registry/registry-core/src/main/java/org/apache/airavata/registry/core/experiment/catalog/utils/ThriftDataModelConversion.java @@ -37,6 +37,7 @@ import org.apache.airavata.model.task.TaskModel; import org.apache.airavata.model.task.TaskTypes; import org.apache.airavata.model.workspace.Gateway; import org.apache.airavata.model.workspace.Notification; +import org.apache.airavata.model.workspace.NotificationPriority; import org.apache.airavata.model.workspace.Project; import org.apache.airavata.registry.core.experiment.catalog.ExperimentCatResource; import org.apache.airavata.registry.core.experiment.catalog.resources.*; @@ -570,11 +571,14 @@ public class ThriftDataModelConversion { notification.setNotificationId(resource.getNotificationId()); notification.setGatewayId(resource.getGatewayId()); notification.setTitle(resource.getTitle()); - notification.setNotifcationMessage(resource.getNotificationMessage()); + notification.setNotificationMessage(resource.getNotificationMessage()); + notification.setPriority(NotificationPriority.valueOf(resource.getPriority())); if(resource.getPublishedTime() != null) - notification.setPublishedtime(resource.getPublishedTime().getTime()); + notification.setPublishedTime(resource.getPublishedTime().getTime()); if(resource.getExpirationTime() != null) notification.setExpirationTime(resource.getExpirationTime().getTime()); + if(resource.getCreationTime() != null) + notification.setCreationTime(resource.getCreationTime().getTime()); return notification; } return null; http://git-wip-us.apache.org/repos/asf/airavata/blob/ab0541ae/modules/registry/registry-core/src/main/resources/expcatalog-derby.sql ---------------------------------------------------------------------- diff --git a/modules/registry/registry-core/src/main/resources/expcatalog-derby.sql b/modules/registry/registry-core/src/main/resources/expcatalog-derby.sql index e437e8f..8a4cf0b 100644 --- a/modules/registry/registry-core/src/main/resources/expcatalog-derby.sql +++ b/modules/registry/registry-core/src/main/resources/expcatalog-derby.sql @@ -32,9 +32,11 @@ CREATE TABLE NOTIFICATION NOTIFICATION_ID VARCHAR(255), GATEWAY_ID VARCHAR(255), TITLE VARCHAR(255), + PRIORITY VARCHAR(255), NOTIFICATION_MESSAGE VARCHAR(4096), PUBLISHED_DATE TIMESTAMP, EXPIRATION_DATE TIMESTAMP, + CREATION_DATE TIMESTAMP, PRIMARY KEY (NOTIFICATION_ID) ); http://git-wip-us.apache.org/repos/asf/airavata/blob/ab0541ae/modules/registry/registry-core/src/main/resources/expcatalog-mysql.sql ---------------------------------------------------------------------- diff --git a/modules/registry/registry-core/src/main/resources/expcatalog-mysql.sql b/modules/registry/registry-core/src/main/resources/expcatalog-mysql.sql index 9bdad05..ae4e96d 100644 --- a/modules/registry/registry-core/src/main/resources/expcatalog-mysql.sql +++ b/modules/registry/registry-core/src/main/resources/expcatalog-mysql.sql @@ -32,9 +32,11 @@ CREATE TABLE NOTIFICATION NOTIFICATION_ID VARCHAR(255), GATEWAY_ID VARCHAR(255), TITLE VARCHAR(255), + PRIORITY VARCHAR(255), NOTIFICATION_MESSAGE VARCHAR(4096), PUBLISHED_DATE TIMESTAMP, EXPIRATION_DATE TIMESTAMP, + CREATION_DATE TIMESTAMP, PRIMARY KEY (NOTIFICATION_ID) ); http://git-wip-us.apache.org/repos/asf/airavata/blob/ab0541ae/thrift-interface-descriptions/data-models/experiment-catalog-models/workspace_model.thrift ---------------------------------------------------------------------- diff --git a/thrift-interface-descriptions/data-models/experiment-catalog-models/workspace_model.thrift b/thrift-interface-descriptions/data-models/experiment-catalog-models/workspace_model.thrift index 468edc3..f2532dd 100644 --- a/thrift-interface-descriptions/data-models/experiment-catalog-models/workspace_model.thrift +++ b/thrift-interface-descriptions/data-models/experiment-catalog-models/workspace_model.thrift @@ -62,11 +62,19 @@ struct Gateway { 4: optional string emailAddress } +enum NotificationPriority { + LOW, + NORMAL, + HIGH +} + struct Notification { 1: optional string notificationId, 2: required string gatewayId, 3: required string title, - 4: required string notifcationMessage, - 5: optional i64 publishedtime, - 6: optional i64 expirationTime + 4: required string notificationMessage, + 5: optional i64 creationTime, + 6: optional i64 publishedTime, + 7: optional i64 expirationTime, + 8: optional NotificationPriority priority } \ No newline at end of file
