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 2015/04/08 23:06:43 UTC
[1/2] airavata git commit: Modified computer resource.thrift file to
support email based monitoring.
Repository: airavata
Updated Branches:
refs/heads/emailMonitoring bf0fddb05 -> 66ac6b928
http://git-wip-us.apache.org/repos/asf/airavata/blob/66ac6b92/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/SSHJobSubmission.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/SSHJobSubmission.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/SSHJobSubmission.java
index 4c19d31..a9bf275 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/SSHJobSubmission.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/SSHJobSubmission.java
@@ -67,6 +67,7 @@ import org.slf4j.LoggerFactory;
private static final org.apache.thrift.protocol.TField ALTERNATIVE_SSHHOST_NAME_FIELD_DESC = new org.apache.thrift.protocol.TField("alternativeSSHHostName", org.apache.thrift.protocol.TType.STRING, (short)4);
private static final org.apache.thrift.protocol.TField SSH_PORT_FIELD_DESC = new org.apache.thrift.protocol.TField("sshPort", org.apache.thrift.protocol.TType.I32, (short)5);
private static final org.apache.thrift.protocol.TField MONITOR_MODE_FIELD_DESC = new org.apache.thrift.protocol.TField("monitorMode", org.apache.thrift.protocol.TType.I32, (short)6);
+ private static final org.apache.thrift.protocol.TField EMAIL_MONITOR_FIELD_DESC = new org.apache.thrift.protocol.TField("emailMonitor", org.apache.thrift.protocol.TType.STRUCT, (short)7);
private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
static {
@@ -80,6 +81,7 @@ import org.slf4j.LoggerFactory;
private String alternativeSSHHostName; // optional
private int sshPort; // optional
private MonitorMode monitorMode; // optional
+ private EmailMonitorProperty emailMonitor; // optional
/** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
@SuppressWarnings("all") public enum _Fields implements org.apache.thrift.TFieldIdEnum {
@@ -96,7 +98,8 @@ import org.slf4j.LoggerFactory;
*
* @see MonitorMode
*/
- MONITOR_MODE((short)6, "monitorMode");
+ MONITOR_MODE((short)6, "monitorMode"),
+ EMAIL_MONITOR((short)7, "emailMonitor");
private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
@@ -123,6 +126,8 @@ import org.slf4j.LoggerFactory;
return SSH_PORT;
case 6: // MONITOR_MODE
return MONITOR_MODE;
+ case 7: // EMAIL_MONITOR
+ return EMAIL_MONITOR;
default:
return null;
}
@@ -165,7 +170,7 @@ import org.slf4j.LoggerFactory;
// isset id assignments
private static final int __SSHPORT_ISSET_ID = 0;
private byte __isset_bitfield = 0;
- private _Fields optionals[] = {_Fields.ALTERNATIVE_SSHHOST_NAME,_Fields.SSH_PORT,_Fields.MONITOR_MODE};
+ private _Fields optionals[] = {_Fields.ALTERNATIVE_SSHHOST_NAME,_Fields.SSH_PORT,_Fields.MONITOR_MODE,_Fields.EMAIL_MONITOR};
public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
static {
Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
@@ -181,6 +186,8 @@ import org.slf4j.LoggerFactory;
new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.I32)));
tmpMap.put(_Fields.MONITOR_MODE, new org.apache.thrift.meta_data.FieldMetaData("monitorMode", org.apache.thrift.TFieldRequirementType.OPTIONAL,
new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, MonitorMode.class)));
+ tmpMap.put(_Fields.EMAIL_MONITOR, new org.apache.thrift.meta_data.FieldMetaData("emailMonitor", org.apache.thrift.TFieldRequirementType.OPTIONAL,
+ new org.apache.thrift.meta_data.StructMetaData(org.apache.thrift.protocol.TType.STRUCT, EmailMonitorProperty.class)));
metaDataMap = Collections.unmodifiableMap(tmpMap);
org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(SSHJobSubmission.class, metaDataMap);
}
@@ -224,6 +231,9 @@ import org.slf4j.LoggerFactory;
if (other.isSetMonitorMode()) {
this.monitorMode = other.monitorMode;
}
+ if (other.isSetEmailMonitor()) {
+ this.emailMonitor = new EmailMonitorProperty(other.emailMonitor);
+ }
}
public SSHJobSubmission deepCopy() {
@@ -240,6 +250,7 @@ import org.slf4j.LoggerFactory;
this.sshPort = 22;
this.monitorMode = null;
+ this.emailMonitor = null;
}
public String getJobSubmissionInterfaceId() {
@@ -395,6 +406,29 @@ import org.slf4j.LoggerFactory;
}
}
+ public EmailMonitorProperty getEmailMonitor() {
+ return this.emailMonitor;
+ }
+
+ public void setEmailMonitor(EmailMonitorProperty emailMonitor) {
+ this.emailMonitor = emailMonitor;
+ }
+
+ public void unsetEmailMonitor() {
+ this.emailMonitor = null;
+ }
+
+ /** Returns true if field emailMonitor is set (has been assigned a value) and false otherwise */
+ public boolean isSetEmailMonitor() {
+ return this.emailMonitor != null;
+ }
+
+ public void setEmailMonitorIsSet(boolean value) {
+ if (!value) {
+ this.emailMonitor = null;
+ }
+ }
+
public void setFieldValue(_Fields field, Object value) {
switch (field) {
case JOB_SUBMISSION_INTERFACE_ID:
@@ -445,6 +479,14 @@ import org.slf4j.LoggerFactory;
}
break;
+ case EMAIL_MONITOR:
+ if (value == null) {
+ unsetEmailMonitor();
+ } else {
+ setEmailMonitor((EmailMonitorProperty)value);
+ }
+ break;
+
}
}
@@ -468,6 +510,9 @@ import org.slf4j.LoggerFactory;
case MONITOR_MODE:
return getMonitorMode();
+ case EMAIL_MONITOR:
+ return getEmailMonitor();
+
}
throw new IllegalStateException();
}
@@ -491,6 +536,8 @@ import org.slf4j.LoggerFactory;
return isSetSshPort();
case MONITOR_MODE:
return isSetMonitorMode();
+ case EMAIL_MONITOR:
+ return isSetEmailMonitor();
}
throw new IllegalStateException();
}
@@ -562,6 +609,15 @@ import org.slf4j.LoggerFactory;
return false;
}
+ boolean this_present_emailMonitor = true && this.isSetEmailMonitor();
+ boolean that_present_emailMonitor = true && that.isSetEmailMonitor();
+ if (this_present_emailMonitor || that_present_emailMonitor) {
+ if (!(this_present_emailMonitor && that_present_emailMonitor))
+ return false;
+ if (!this.emailMonitor.equals(that.emailMonitor))
+ return false;
+ }
+
return true;
}
@@ -638,6 +694,16 @@ import org.slf4j.LoggerFactory;
return lastComparison;
}
}
+ lastComparison = Boolean.valueOf(isSetEmailMonitor()).compareTo(other.isSetEmailMonitor());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetEmailMonitor()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.emailMonitor, other.emailMonitor);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
return 0;
}
@@ -707,6 +773,16 @@ import org.slf4j.LoggerFactory;
}
first = false;
}
+ if (isSetEmailMonitor()) {
+ if (!first) sb.append(", ");
+ sb.append("emailMonitor:");
+ if (this.emailMonitor == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.emailMonitor);
+ }
+ first = false;
+ }
sb.append(")");
return sb.toString();
}
@@ -729,6 +805,9 @@ import org.slf4j.LoggerFactory;
if (resourceJobManager != null) {
resourceJobManager.validate();
}
+ if (emailMonitor != null) {
+ emailMonitor.validate();
+ }
}
private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
@@ -816,6 +895,15 @@ import org.slf4j.LoggerFactory;
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
break;
+ case 7: // EMAIL_MONITOR
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRUCT) {
+ struct.emailMonitor = new EmailMonitorProperty();
+ struct.emailMonitor.read(iprot);
+ struct.setEmailMonitorIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
default:
org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
}
@@ -863,6 +951,13 @@ import org.slf4j.LoggerFactory;
oprot.writeFieldEnd();
}
}
+ if (struct.emailMonitor != null) {
+ if (struct.isSetEmailMonitor()) {
+ oprot.writeFieldBegin(EMAIL_MONITOR_FIELD_DESC);
+ struct.emailMonitor.write(oprot);
+ oprot.writeFieldEnd();
+ }
+ }
oprot.writeFieldStop();
oprot.writeStructEnd();
}
@@ -893,7 +988,10 @@ import org.slf4j.LoggerFactory;
if (struct.isSetMonitorMode()) {
optionals.set(2);
}
- oprot.writeBitSet(optionals, 3);
+ if (struct.isSetEmailMonitor()) {
+ optionals.set(3);
+ }
+ oprot.writeBitSet(optionals, 4);
if (struct.isSetAlternativeSSHHostName()) {
oprot.writeString(struct.alternativeSSHHostName);
}
@@ -903,6 +1001,9 @@ import org.slf4j.LoggerFactory;
if (struct.isSetMonitorMode()) {
oprot.writeI32(struct.monitorMode.getValue());
}
+ if (struct.isSetEmailMonitor()) {
+ struct.emailMonitor.write(oprot);
+ }
}
@Override
@@ -915,7 +1016,7 @@ import org.slf4j.LoggerFactory;
struct.resourceJobManager = new ResourceJobManager();
struct.resourceJobManager.read(iprot);
struct.setResourceJobManagerIsSet(true);
- BitSet incoming = iprot.readBitSet(3);
+ BitSet incoming = iprot.readBitSet(4);
if (incoming.get(0)) {
struct.alternativeSSHHostName = iprot.readString();
struct.setAlternativeSSHHostNameIsSet(true);
@@ -928,6 +1029,11 @@ import org.slf4j.LoggerFactory;
struct.monitorMode = MonitorMode.findByValue(iprot.readI32());
struct.setMonitorModeIsSet(true);
}
+ if (incoming.get(3)) {
+ struct.emailMonitor = new EmailMonitorProperty();
+ struct.emailMonitor.read(iprot);
+ struct.setEmailMonitorIsSet(true);
+ }
}
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/66ac6b92/airavata-api/thrift-interface-descriptions/computeResourceModel.thrift
----------------------------------------------------------------------
diff --git a/airavata-api/thrift-interface-descriptions/computeResourceModel.thrift b/airavata-api/thrift-interface-descriptions/computeResourceModel.thrift
index 929e677..cf9b06c 100644
--- a/airavata-api/thrift-interface-descriptions/computeResourceModel.thrift
+++ b/airavata-api/thrift-interface-descriptions/computeResourceModel.thrift
@@ -208,10 +208,37 @@ enum JobSubmissionProtocol {
**/
enum MonitorMode {
POLL_JOB_MANAGER,
+ JOB_EMAIL_NOTIFICATION_MONITOR,
XSEDE_AMQP_SUBSCRIBE
}
/**
+* Email protocol
+**/
+enum EmailProtocol{
+ POP3,
+ IMAPS
+}
+
+
+/**
+* Email Monitoring Properties
+*
+* host : email host address
+* emailAddress : address which should get email notification
+* password : password to access email address
+* folderName : email folder name default is INBOX
+* storeProtocol : type of store protocol
+**/
+struct EmailMonitorProperty {
+ 1: required string host,
+ 2: required string emailAddress,
+ 3: required string password,
+ 4: required string folderName = "INBOX",
+ 5: required EmailProtocol storeProtocol
+}
+
+/**
* Enumeration of data movement supported by Airavata
*
* SCP:
@@ -320,7 +347,8 @@ struct SSHJobSubmission {
3: required ResourceJobManager resourceJobManager,
4: optional string alternativeSSHHostName,
5: optional i32 sshPort = 22,
- 6: optional MonitorMode monitorMode
+ 6: optional MonitorMode monitorMode,
+ 7: optional EmailMonitorProperty emailMonitor
}
struct GlobusJobSubmission {
[2/2] airavata git commit: Modified computer resource.thrift file to
support email based monitoring.
Posted by sh...@apache.org.
Modified computer resource.thrift file to support email based monitoring.
Project: http://git-wip-us.apache.org/repos/asf/airavata/repo
Commit: http://git-wip-us.apache.org/repos/asf/airavata/commit/66ac6b92
Tree: http://git-wip-us.apache.org/repos/asf/airavata/tree/66ac6b92
Diff: http://git-wip-us.apache.org/repos/asf/airavata/diff/66ac6b92
Branch: refs/heads/emailMonitoring
Commit: 66ac6b9287f7971f5e01901c8ada37ed669cb587
Parents: bf0fddb
Author: shamrath <sh...@gmail.com>
Authored: Wed Apr 8 17:06:37 2015 -0400
Committer: shamrath <sh...@gmail.com>
Committed: Wed Apr 8 17:06:37 2015 -0400
----------------------------------------------------------------------
.../lib/airavata/computeResourceModel_types.cpp | 400 ++++++---
.../lib/airavata/computeResourceModel_types.h | 94 ++-
.../Model/AppCatalog/ComputeResource/Types.php | 192 ++++-
.../model/appcatalog/computeresource/ttypes.py | 169 +++-
.../airavata/model/messaging/event/ttypes.py | 79 ++
.../computeresource/EmailMonitorProperty.java | 805 +++++++++++++++++++
.../computeresource/EmailProtocol.java | 66 ++
.../appcatalog/computeresource/MonitorMode.java | 5 +-
.../computeresource/SSHJobSubmission.java | 114 ++-
.../computeResourceModel.thrift | 30 +-
10 files changed, 1816 insertions(+), 138 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/airavata/blob/66ac6b92/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/computeResourceModel_types.cpp
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/computeResourceModel_types.cpp b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/computeResourceModel_types.cpp
index d54c519..8b83573 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/computeResourceModel_types.cpp
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/computeResourceModel_types.cpp
@@ -113,13 +113,25 @@ const std::map<int, const char*> _JobSubmissionProtocol_VALUES_TO_NAMES(::apache
int _kMonitorModeValues[] = {
MonitorMode::POLL_JOB_MANAGER,
+ MonitorMode::JOB_EMAIL_NOTIFICATION_MONITOR,
MonitorMode::XSEDE_AMQP_SUBSCRIBE
};
const char* _kMonitorModeNames[] = {
"POLL_JOB_MANAGER",
+ "JOB_EMAIL_NOTIFICATION_MONITOR",
"XSEDE_AMQP_SUBSCRIBE"
};
-const std::map<int, const char*> _MonitorMode_VALUES_TO_NAMES(::apache::thrift::TEnumIterator(2, _kMonitorModeValues, _kMonitorModeNames), ::apache::thrift::TEnumIterator(-1, NULL, NULL));
+const std::map<int, const char*> _MonitorMode_VALUES_TO_NAMES(::apache::thrift::TEnumIterator(3, _kMonitorModeValues, _kMonitorModeNames), ::apache::thrift::TEnumIterator(-1, NULL, NULL));
+
+int _kEmailProtocolValues[] = {
+ EmailProtocol::POP3,
+ EmailProtocol::IMAPS
+};
+const char* _kEmailProtocolNames[] = {
+ "POP3",
+ "IMAPS"
+};
+const std::map<int, const char*> _EmailProtocol_VALUES_TO_NAMES(::apache::thrift::TEnumIterator(2, _kEmailProtocolValues, _kEmailProtocolNames), ::apache::thrift::TEnumIterator(-1, NULL, NULL));
int _kDataMovementProtocolValues[] = {
DataMovementProtocol::LOCAL,
@@ -449,6 +461,136 @@ void swap(BatchQueue &a, BatchQueue &b) {
swap(a.__isset, b.__isset);
}
+const char* EmailMonitorProperty::ascii_fingerprint = "1991A6BD46E68BF843F10524459D65B1";
+const uint8_t EmailMonitorProperty::binary_fingerprint[16] = {0x19,0x91,0xA6,0xBD,0x46,0xE6,0x8B,0xF8,0x43,0xF1,0x05,0x24,0x45,0x9D,0x65,0xB1};
+
+uint32_t EmailMonitorProperty::read(::apache::thrift::protocol::TProtocol* iprot) {
+
+ uint32_t xfer = 0;
+ std::string fname;
+ ::apache::thrift::protocol::TType ftype;
+ int16_t fid;
+
+ xfer += iprot->readStructBegin(fname);
+
+ using ::apache::thrift::protocol::TProtocolException;
+
+ bool isset_host = false;
+ bool isset_emailAddress = false;
+ bool isset_password = false;
+ bool isset_folderName = false;
+ bool isset_storeProtocol = false;
+
+ while (true)
+ {
+ xfer += iprot->readFieldBegin(fname, ftype, fid);
+ if (ftype == ::apache::thrift::protocol::T_STOP) {
+ break;
+ }
+ switch (fid)
+ {
+ case 1:
+ if (ftype == ::apache::thrift::protocol::T_STRING) {
+ xfer += iprot->readString(this->host);
+ isset_host = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 2:
+ if (ftype == ::apache::thrift::protocol::T_STRING) {
+ xfer += iprot->readString(this->emailAddress);
+ isset_emailAddress = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 3:
+ if (ftype == ::apache::thrift::protocol::T_STRING) {
+ xfer += iprot->readString(this->password);
+ isset_password = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 4:
+ if (ftype == ::apache::thrift::protocol::T_STRING) {
+ xfer += iprot->readString(this->folderName);
+ isset_folderName = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ case 5:
+ if (ftype == ::apache::thrift::protocol::T_I32) {
+ int32_t ecast10;
+ xfer += iprot->readI32(ecast10);
+ this->storeProtocol = (EmailProtocol::type)ecast10;
+ isset_storeProtocol = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
+ default:
+ xfer += iprot->skip(ftype);
+ break;
+ }
+ xfer += iprot->readFieldEnd();
+ }
+
+ xfer += iprot->readStructEnd();
+
+ if (!isset_host)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_emailAddress)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_password)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_folderName)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ if (!isset_storeProtocol)
+ throw TProtocolException(TProtocolException::INVALID_DATA);
+ return xfer;
+}
+
+uint32_t EmailMonitorProperty::write(::apache::thrift::protocol::TProtocol* oprot) const {
+ uint32_t xfer = 0;
+ xfer += oprot->writeStructBegin("EmailMonitorProperty");
+
+ xfer += oprot->writeFieldBegin("host", ::apache::thrift::protocol::T_STRING, 1);
+ xfer += oprot->writeString(this->host);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("emailAddress", ::apache::thrift::protocol::T_STRING, 2);
+ xfer += oprot->writeString(this->emailAddress);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("password", ::apache::thrift::protocol::T_STRING, 3);
+ xfer += oprot->writeString(this->password);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("folderName", ::apache::thrift::protocol::T_STRING, 4);
+ xfer += oprot->writeString(this->folderName);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldBegin("storeProtocol", ::apache::thrift::protocol::T_I32, 5);
+ xfer += oprot->writeI32((int32_t)this->storeProtocol);
+ xfer += oprot->writeFieldEnd();
+
+ xfer += oprot->writeFieldStop();
+ xfer += oprot->writeStructEnd();
+ return xfer;
+}
+
+void swap(EmailMonitorProperty &a, EmailMonitorProperty &b) {
+ using ::std::swap;
+ swap(a.host, b.host);
+ swap(a.emailAddress, b.emailAddress);
+ swap(a.password, b.password);
+ swap(a.folderName, b.folderName);
+ swap(a.storeProtocol, b.storeProtocol);
+}
+
const char* SCPDataMovement::ascii_fingerprint = "63CAE6EE336A7DBD91CCCD6E22628F4A";
const uint8_t SCPDataMovement::binary_fingerprint[16] = {0x63,0xCA,0xE6,0xEE,0x33,0x6A,0x7D,0xBD,0x91,0xCC,0xCD,0x6E,0x22,0x62,0x8F,0x4A};
@@ -484,9 +626,9 @@ uint32_t SCPDataMovement::read(::apache::thrift::protocol::TProtocol* iprot) {
break;
case 2:
if (ftype == ::apache::thrift::protocol::T_I32) {
- int32_t ecast10;
- xfer += iprot->readI32(ecast10);
- this->securityProtocol = (SecurityProtocol::type)ecast10;
+ int32_t ecast11;
+ xfer += iprot->readI32(ecast11);
+ this->securityProtocol = (SecurityProtocol::type)ecast11;
isset_securityProtocol = true;
} else {
xfer += iprot->skip(ftype);
@@ -596,9 +738,9 @@ uint32_t GridFTPDataMovement::read(::apache::thrift::protocol::TProtocol* iprot)
break;
case 2:
if (ftype == ::apache::thrift::protocol::T_I32) {
- int32_t ecast11;
- xfer += iprot->readI32(ecast11);
- this->securityProtocol = (SecurityProtocol::type)ecast11;
+ int32_t ecast12;
+ xfer += iprot->readI32(ecast12);
+ this->securityProtocol = (SecurityProtocol::type)ecast12;
isset_securityProtocol = true;
} else {
xfer += iprot->skip(ftype);
@@ -608,14 +750,14 @@ uint32_t GridFTPDataMovement::read(::apache::thrift::protocol::TProtocol* iprot)
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
this->gridFTPEndPoints.clear();
- uint32_t _size12;
- ::apache::thrift::protocol::TType _etype15;
- xfer += iprot->readListBegin(_etype15, _size12);
- this->gridFTPEndPoints.resize(_size12);
- uint32_t _i16;
- for (_i16 = 0; _i16 < _size12; ++_i16)
+ uint32_t _size13;
+ ::apache::thrift::protocol::TType _etype16;
+ xfer += iprot->readListBegin(_etype16, _size13);
+ this->gridFTPEndPoints.resize(_size13);
+ uint32_t _i17;
+ for (_i17 = 0; _i17 < _size13; ++_i17)
{
- xfer += iprot->readString(this->gridFTPEndPoints[_i16]);
+ xfer += iprot->readString(this->gridFTPEndPoints[_i17]);
}
xfer += iprot->readListEnd();
}
@@ -657,10 +799,10 @@ uint32_t GridFTPDataMovement::write(::apache::thrift::protocol::TProtocol* oprot
xfer += oprot->writeFieldBegin("gridFTPEndPoints", ::apache::thrift::protocol::T_LIST, 3);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRING, static_cast<uint32_t>(this->gridFTPEndPoints.size()));
- std::vector<std::string> ::const_iterator _iter17;
- for (_iter17 = this->gridFTPEndPoints.begin(); _iter17 != this->gridFTPEndPoints.end(); ++_iter17)
+ std::vector<std::string> ::const_iterator _iter18;
+ for (_iter18 = this->gridFTPEndPoints.begin(); _iter18 != this->gridFTPEndPoints.end(); ++_iter18)
{
- xfer += oprot->writeString((*_iter17));
+ xfer += oprot->writeString((*_iter18));
}
xfer += oprot->writeListEnd();
}
@@ -714,9 +856,9 @@ uint32_t UnicoreDataMovement::read(::apache::thrift::protocol::TProtocol* iprot)
break;
case 2:
if (ftype == ::apache::thrift::protocol::T_I32) {
- int32_t ecast18;
- xfer += iprot->readI32(ecast18);
- this->securityProtocol = (SecurityProtocol::type)ecast18;
+ int32_t ecast19;
+ xfer += iprot->readI32(ecast19);
+ this->securityProtocol = (SecurityProtocol::type)ecast19;
isset_securityProtocol = true;
} else {
xfer += iprot->skip(ftype);
@@ -920,8 +1062,8 @@ void swap(LOCALDataMovement &a, LOCALDataMovement &b) {
swap(a.dataMovementInterfaceId, b.dataMovementInterfaceId);
}
-const char* SSHJobSubmission::ascii_fingerprint = "A62183DAA7AFF027173705420A9D99D0";
-const uint8_t SSHJobSubmission::binary_fingerprint[16] = {0xA6,0x21,0x83,0xDA,0xA7,0xAF,0xF0,0x27,0x17,0x37,0x05,0x42,0x0A,0x9D,0x99,0xD0};
+const char* SSHJobSubmission::ascii_fingerprint = "C2237B7244CABB71130AEE137701206F";
+const uint8_t SSHJobSubmission::binary_fingerprint[16] = {0xC2,0x23,0x7B,0x72,0x44,0xCA,0xBB,0x71,0x13,0x0A,0xEE,0x13,0x77,0x01,0x20,0x6F};
uint32_t SSHJobSubmission::read(::apache::thrift::protocol::TProtocol* iprot) {
@@ -956,9 +1098,9 @@ uint32_t SSHJobSubmission::read(::apache::thrift::protocol::TProtocol* iprot) {
break;
case 2:
if (ftype == ::apache::thrift::protocol::T_I32) {
- int32_t ecast19;
- xfer += iprot->readI32(ecast19);
- this->securityProtocol = (SecurityProtocol::type)ecast19;
+ int32_t ecast20;
+ xfer += iprot->readI32(ecast20);
+ this->securityProtocol = (SecurityProtocol::type)ecast20;
isset_securityProtocol = true;
} else {
xfer += iprot->skip(ftype);
@@ -990,14 +1132,22 @@ uint32_t SSHJobSubmission::read(::apache::thrift::protocol::TProtocol* iprot) {
break;
case 6:
if (ftype == ::apache::thrift::protocol::T_I32) {
- int32_t ecast20;
- xfer += iprot->readI32(ecast20);
- this->monitorMode = (MonitorMode::type)ecast20;
+ int32_t ecast21;
+ xfer += iprot->readI32(ecast21);
+ this->monitorMode = (MonitorMode::type)ecast21;
this->__isset.monitorMode = true;
} else {
xfer += iprot->skip(ftype);
}
break;
+ case 7:
+ if (ftype == ::apache::thrift::protocol::T_STRUCT) {
+ xfer += this->emailMonitor.read(iprot);
+ this->__isset.emailMonitor = true;
+ } else {
+ xfer += iprot->skip(ftype);
+ }
+ break;
default:
xfer += iprot->skip(ftype);
break;
@@ -1047,6 +1197,11 @@ uint32_t SSHJobSubmission::write(::apache::thrift::protocol::TProtocol* oprot) c
xfer += oprot->writeI32((int32_t)this->monitorMode);
xfer += oprot->writeFieldEnd();
}
+ if (this->__isset.emailMonitor) {
+ xfer += oprot->writeFieldBegin("emailMonitor", ::apache::thrift::protocol::T_STRUCT, 7);
+ xfer += this->emailMonitor.write(oprot);
+ xfer += oprot->writeFieldEnd();
+ }
xfer += oprot->writeFieldStop();
xfer += oprot->writeStructEnd();
return xfer;
@@ -1060,6 +1215,7 @@ void swap(SSHJobSubmission &a, SSHJobSubmission &b) {
swap(a.alternativeSSHHostName, b.alternativeSSHHostName);
swap(a.sshPort, b.sshPort);
swap(a.monitorMode, b.monitorMode);
+ swap(a.emailMonitor, b.emailMonitor);
swap(a.__isset, b.__isset);
}
@@ -1098,9 +1254,9 @@ uint32_t GlobusJobSubmission::read(::apache::thrift::protocol::TProtocol* iprot)
break;
case 2:
if (ftype == ::apache::thrift::protocol::T_I32) {
- int32_t ecast21;
- xfer += iprot->readI32(ecast21);
- this->securityProtocol = (SecurityProtocol::type)ecast21;
+ int32_t ecast22;
+ xfer += iprot->readI32(ecast22);
+ this->securityProtocol = (SecurityProtocol::type)ecast22;
isset_securityProtocol = true;
} else {
xfer += iprot->skip(ftype);
@@ -1110,14 +1266,14 @@ uint32_t GlobusJobSubmission::read(::apache::thrift::protocol::TProtocol* iprot)
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
this->globusGateKeeperEndPoint.clear();
- uint32_t _size22;
- ::apache::thrift::protocol::TType _etype25;
- xfer += iprot->readListBegin(_etype25, _size22);
- this->globusGateKeeperEndPoint.resize(_size22);
- uint32_t _i26;
- for (_i26 = 0; _i26 < _size22; ++_i26)
+ uint32_t _size23;
+ ::apache::thrift::protocol::TType _etype26;
+ xfer += iprot->readListBegin(_etype26, _size23);
+ this->globusGateKeeperEndPoint.resize(_size23);
+ uint32_t _i27;
+ for (_i27 = 0; _i27 < _size23; ++_i27)
{
- xfer += iprot->readString(this->globusGateKeeperEndPoint[_i26]);
+ xfer += iprot->readString(this->globusGateKeeperEndPoint[_i27]);
}
xfer += iprot->readListEnd();
}
@@ -1158,10 +1314,10 @@ uint32_t GlobusJobSubmission::write(::apache::thrift::protocol::TProtocol* oprot
xfer += oprot->writeFieldBegin("globusGateKeeperEndPoint", ::apache::thrift::protocol::T_LIST, 3);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRING, static_cast<uint32_t>(this->globusGateKeeperEndPoint.size()));
- std::vector<std::string> ::const_iterator _iter27;
- for (_iter27 = this->globusGateKeeperEndPoint.begin(); _iter27 != this->globusGateKeeperEndPoint.end(); ++_iter27)
+ std::vector<std::string> ::const_iterator _iter28;
+ for (_iter28 = this->globusGateKeeperEndPoint.begin(); _iter28 != this->globusGateKeeperEndPoint.end(); ++_iter28)
{
- xfer += oprot->writeString((*_iter27));
+ xfer += oprot->writeString((*_iter28));
}
xfer += oprot->writeListEnd();
}
@@ -1216,9 +1372,9 @@ uint32_t UnicoreJobSubmission::read(::apache::thrift::protocol::TProtocol* iprot
break;
case 2:
if (ftype == ::apache::thrift::protocol::T_I32) {
- int32_t ecast28;
- xfer += iprot->readI32(ecast28);
- this->securityProtocol = (SecurityProtocol::type)ecast28;
+ int32_t ecast29;
+ xfer += iprot->readI32(ecast29);
+ this->securityProtocol = (SecurityProtocol::type)ecast29;
isset_securityProtocol = true;
} else {
xfer += iprot->skip(ftype);
@@ -1317,9 +1473,9 @@ uint32_t CloudJobSubmission::read(::apache::thrift::protocol::TProtocol* iprot)
break;
case 2:
if (ftype == ::apache::thrift::protocol::T_I32) {
- int32_t ecast29;
- xfer += iprot->readI32(ecast29);
- this->securityProtocol = (SecurityProtocol::type)ecast29;
+ int32_t ecast30;
+ xfer += iprot->readI32(ecast30);
+ this->securityProtocol = (SecurityProtocol::type)ecast30;
isset_securityProtocol = true;
} else {
xfer += iprot->skip(ftype);
@@ -1343,9 +1499,9 @@ uint32_t CloudJobSubmission::read(::apache::thrift::protocol::TProtocol* iprot)
break;
case 5:
if (ftype == ::apache::thrift::protocol::T_I32) {
- int32_t ecast30;
- xfer += iprot->readI32(ecast30);
- this->providerName = (ProviderName::type)ecast30;
+ int32_t ecast31;
+ xfer += iprot->readI32(ecast31);
+ this->providerName = (ProviderName::type)ecast31;
isset_providerName = true;
} else {
xfer += iprot->skip(ftype);
@@ -1462,9 +1618,9 @@ uint32_t JobSubmissionInterface::read(::apache::thrift::protocol::TProtocol* ipr
break;
case 2:
if (ftype == ::apache::thrift::protocol::T_I32) {
- int32_t ecast31;
- xfer += iprot->readI32(ecast31);
- this->jobSubmissionProtocol = (JobSubmissionProtocol::type)ecast31;
+ int32_t ecast32;
+ xfer += iprot->readI32(ecast32);
+ this->jobSubmissionProtocol = (JobSubmissionProtocol::type)ecast32;
isset_jobSubmissionProtocol = true;
} else {
xfer += iprot->skip(ftype);
@@ -1560,9 +1716,9 @@ uint32_t DataMovementInterface::read(::apache::thrift::protocol::TProtocol* ipro
break;
case 2:
if (ftype == ::apache::thrift::protocol::T_I32) {
- int32_t ecast32;
- xfer += iprot->readI32(ecast32);
- this->dataMovementProtocol = (DataMovementProtocol::type)ecast32;
+ int32_t ecast33;
+ xfer += iprot->readI32(ecast33);
+ this->dataMovementProtocol = (DataMovementProtocol::type)ecast33;
isset_dataMovementProtocol = true;
} else {
xfer += iprot->skip(ftype);
@@ -1667,14 +1823,14 @@ uint32_t ComputeResourceDescription::read(::apache::thrift::protocol::TProtocol*
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
this->hostAliases.clear();
- uint32_t _size33;
- ::apache::thrift::protocol::TType _etype36;
- xfer += iprot->readListBegin(_etype36, _size33);
- this->hostAliases.resize(_size33);
- uint32_t _i37;
- for (_i37 = 0; _i37 < _size33; ++_i37)
+ uint32_t _size34;
+ ::apache::thrift::protocol::TType _etype37;
+ xfer += iprot->readListBegin(_etype37, _size34);
+ this->hostAliases.resize(_size34);
+ uint32_t _i38;
+ for (_i38 = 0; _i38 < _size34; ++_i38)
{
- xfer += iprot->readString(this->hostAliases[_i37]);
+ xfer += iprot->readString(this->hostAliases[_i38]);
}
xfer += iprot->readListEnd();
}
@@ -1687,14 +1843,14 @@ uint32_t ComputeResourceDescription::read(::apache::thrift::protocol::TProtocol*
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
this->ipAddresses.clear();
- uint32_t _size38;
- ::apache::thrift::protocol::TType _etype41;
- xfer += iprot->readListBegin(_etype41, _size38);
- this->ipAddresses.resize(_size38);
- uint32_t _i42;
- for (_i42 = 0; _i42 < _size38; ++_i42)
+ uint32_t _size39;
+ ::apache::thrift::protocol::TType _etype42;
+ xfer += iprot->readListBegin(_etype42, _size39);
+ this->ipAddresses.resize(_size39);
+ uint32_t _i43;
+ for (_i43 = 0; _i43 < _size39; ++_i43)
{
- xfer += iprot->readString(this->ipAddresses[_i42]);
+ xfer += iprot->readString(this->ipAddresses[_i43]);
}
xfer += iprot->readListEnd();
}
@@ -1715,14 +1871,14 @@ uint32_t ComputeResourceDescription::read(::apache::thrift::protocol::TProtocol*
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
this->batchQueues.clear();
- uint32_t _size43;
- ::apache::thrift::protocol::TType _etype46;
- xfer += iprot->readListBegin(_etype46, _size43);
- this->batchQueues.resize(_size43);
- uint32_t _i47;
- for (_i47 = 0; _i47 < _size43; ++_i47)
+ uint32_t _size44;
+ ::apache::thrift::protocol::TType _etype47;
+ xfer += iprot->readListBegin(_etype47, _size44);
+ this->batchQueues.resize(_size44);
+ uint32_t _i48;
+ for (_i48 = 0; _i48 < _size44; ++_i48)
{
- xfer += this->batchQueues[_i47].read(iprot);
+ xfer += this->batchQueues[_i48].read(iprot);
}
xfer += iprot->readListEnd();
}
@@ -1735,19 +1891,19 @@ uint32_t ComputeResourceDescription::read(::apache::thrift::protocol::TProtocol*
if (ftype == ::apache::thrift::protocol::T_MAP) {
{
this->fileSystems.clear();
- uint32_t _size48;
- ::apache::thrift::protocol::TType _ktype49;
- ::apache::thrift::protocol::TType _vtype50;
- xfer += iprot->readMapBegin(_ktype49, _vtype50, _size48);
- uint32_t _i52;
- for (_i52 = 0; _i52 < _size48; ++_i52)
+ uint32_t _size49;
+ ::apache::thrift::protocol::TType _ktype50;
+ ::apache::thrift::protocol::TType _vtype51;
+ xfer += iprot->readMapBegin(_ktype50, _vtype51, _size49);
+ uint32_t _i53;
+ for (_i53 = 0; _i53 < _size49; ++_i53)
{
- FileSystems::type _key53;
- int32_t ecast55;
- xfer += iprot->readI32(ecast55);
- _key53 = (FileSystems::type)ecast55;
- std::string& _val54 = this->fileSystems[_key53];
- xfer += iprot->readString(_val54);
+ FileSystems::type _key54;
+ int32_t ecast56;
+ xfer += iprot->readI32(ecast56);
+ _key54 = (FileSystems::type)ecast56;
+ std::string& _val55 = this->fileSystems[_key54];
+ xfer += iprot->readString(_val55);
}
xfer += iprot->readMapEnd();
}
@@ -1760,14 +1916,14 @@ uint32_t ComputeResourceDescription::read(::apache::thrift::protocol::TProtocol*
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
this->jobSubmissionInterfaces.clear();
- uint32_t _size56;
- ::apache::thrift::protocol::TType _etype59;
- xfer += iprot->readListBegin(_etype59, _size56);
- this->jobSubmissionInterfaces.resize(_size56);
- uint32_t _i60;
- for (_i60 = 0; _i60 < _size56; ++_i60)
+ uint32_t _size57;
+ ::apache::thrift::protocol::TType _etype60;
+ xfer += iprot->readListBegin(_etype60, _size57);
+ this->jobSubmissionInterfaces.resize(_size57);
+ uint32_t _i61;
+ for (_i61 = 0; _i61 < _size57; ++_i61)
{
- xfer += this->jobSubmissionInterfaces[_i60].read(iprot);
+ xfer += this->jobSubmissionInterfaces[_i61].read(iprot);
}
xfer += iprot->readListEnd();
}
@@ -1780,14 +1936,14 @@ uint32_t ComputeResourceDescription::read(::apache::thrift::protocol::TProtocol*
if (ftype == ::apache::thrift::protocol::T_LIST) {
{
this->dataMovementInterfaces.clear();
- uint32_t _size61;
- ::apache::thrift::protocol::TType _etype64;
- xfer += iprot->readListBegin(_etype64, _size61);
- this->dataMovementInterfaces.resize(_size61);
- uint32_t _i65;
- for (_i65 = 0; _i65 < _size61; ++_i65)
+ uint32_t _size62;
+ ::apache::thrift::protocol::TType _etype65;
+ xfer += iprot->readListBegin(_etype65, _size62);
+ this->dataMovementInterfaces.resize(_size62);
+ uint32_t _i66;
+ for (_i66 = 0; _i66 < _size62; ++_i66)
{
- xfer += this->dataMovementInterfaces[_i65].read(iprot);
+ xfer += this->dataMovementInterfaces[_i66].read(iprot);
}
xfer += iprot->readListEnd();
}
@@ -1836,10 +1992,10 @@ uint32_t ComputeResourceDescription::write(::apache::thrift::protocol::TProtocol
xfer += oprot->writeFieldBegin("hostAliases", ::apache::thrift::protocol::T_LIST, 3);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRING, static_cast<uint32_t>(this->hostAliases.size()));
- std::vector<std::string> ::const_iterator _iter66;
- for (_iter66 = this->hostAliases.begin(); _iter66 != this->hostAliases.end(); ++_iter66)
+ std::vector<std::string> ::const_iterator _iter67;
+ for (_iter67 = this->hostAliases.begin(); _iter67 != this->hostAliases.end(); ++_iter67)
{
- xfer += oprot->writeString((*_iter66));
+ xfer += oprot->writeString((*_iter67));
}
xfer += oprot->writeListEnd();
}
@@ -1849,10 +2005,10 @@ uint32_t ComputeResourceDescription::write(::apache::thrift::protocol::TProtocol
xfer += oprot->writeFieldBegin("ipAddresses", ::apache::thrift::protocol::T_LIST, 4);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRING, static_cast<uint32_t>(this->ipAddresses.size()));
- std::vector<std::string> ::const_iterator _iter67;
- for (_iter67 = this->ipAddresses.begin(); _iter67 != this->ipAddresses.end(); ++_iter67)
+ std::vector<std::string> ::const_iterator _iter68;
+ for (_iter68 = this->ipAddresses.begin(); _iter68 != this->ipAddresses.end(); ++_iter68)
{
- xfer += oprot->writeString((*_iter67));
+ xfer += oprot->writeString((*_iter68));
}
xfer += oprot->writeListEnd();
}
@@ -1867,10 +2023,10 @@ uint32_t ComputeResourceDescription::write(::apache::thrift::protocol::TProtocol
xfer += oprot->writeFieldBegin("batchQueues", ::apache::thrift::protocol::T_LIST, 6);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->batchQueues.size()));
- std::vector<BatchQueue> ::const_iterator _iter68;
- for (_iter68 = this->batchQueues.begin(); _iter68 != this->batchQueues.end(); ++_iter68)
+ std::vector<BatchQueue> ::const_iterator _iter69;
+ for (_iter69 = this->batchQueues.begin(); _iter69 != this->batchQueues.end(); ++_iter69)
{
- xfer += (*_iter68).write(oprot);
+ xfer += (*_iter69).write(oprot);
}
xfer += oprot->writeListEnd();
}
@@ -1880,11 +2036,11 @@ uint32_t ComputeResourceDescription::write(::apache::thrift::protocol::TProtocol
xfer += oprot->writeFieldBegin("fileSystems", ::apache::thrift::protocol::T_MAP, 7);
{
xfer += oprot->writeMapBegin(::apache::thrift::protocol::T_I32, ::apache::thrift::protocol::T_STRING, static_cast<uint32_t>(this->fileSystems.size()));
- std::map<FileSystems::type, std::string> ::const_iterator _iter69;
- for (_iter69 = this->fileSystems.begin(); _iter69 != this->fileSystems.end(); ++_iter69)
+ std::map<FileSystems::type, std::string> ::const_iterator _iter70;
+ for (_iter70 = this->fileSystems.begin(); _iter70 != this->fileSystems.end(); ++_iter70)
{
- xfer += oprot->writeI32((int32_t)_iter69->first);
- xfer += oprot->writeString(_iter69->second);
+ xfer += oprot->writeI32((int32_t)_iter70->first);
+ xfer += oprot->writeString(_iter70->second);
}
xfer += oprot->writeMapEnd();
}
@@ -1894,10 +2050,10 @@ uint32_t ComputeResourceDescription::write(::apache::thrift::protocol::TProtocol
xfer += oprot->writeFieldBegin("jobSubmissionInterfaces", ::apache::thrift::protocol::T_LIST, 8);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->jobSubmissionInterfaces.size()));
- std::vector<JobSubmissionInterface> ::const_iterator _iter70;
- for (_iter70 = this->jobSubmissionInterfaces.begin(); _iter70 != this->jobSubmissionInterfaces.end(); ++_iter70)
+ std::vector<JobSubmissionInterface> ::const_iterator _iter71;
+ for (_iter71 = this->jobSubmissionInterfaces.begin(); _iter71 != this->jobSubmissionInterfaces.end(); ++_iter71)
{
- xfer += (*_iter70).write(oprot);
+ xfer += (*_iter71).write(oprot);
}
xfer += oprot->writeListEnd();
}
@@ -1907,10 +2063,10 @@ uint32_t ComputeResourceDescription::write(::apache::thrift::protocol::TProtocol
xfer += oprot->writeFieldBegin("dataMovementInterfaces", ::apache::thrift::protocol::T_LIST, 9);
{
xfer += oprot->writeListBegin(::apache::thrift::protocol::T_STRUCT, static_cast<uint32_t>(this->dataMovementInterfaces.size()));
- std::vector<DataMovementInterface> ::const_iterator _iter71;
- for (_iter71 = this->dataMovementInterfaces.begin(); _iter71 != this->dataMovementInterfaces.end(); ++_iter71)
+ std::vector<DataMovementInterface> ::const_iterator _iter72;
+ for (_iter72 = this->dataMovementInterfaces.begin(); _iter72 != this->dataMovementInterfaces.end(); ++_iter72)
{
- xfer += (*_iter71).write(oprot);
+ xfer += (*_iter72).write(oprot);
}
xfer += oprot->writeListEnd();
}
http://git-wip-us.apache.org/repos/asf/airavata/blob/66ac6b92/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/computeResourceModel_types.h
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/computeResourceModel_types.h b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/computeResourceModel_types.h
index 76037b2..05a2dfd 100644
--- a/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/computeResourceModel_types.h
+++ b/airavata-api/airavata-client-sdks/airavata-cpp-sdk/src/main/resources/lib/airavata/computeResourceModel_types.h
@@ -99,12 +99,22 @@ extern const std::map<int, const char*> _JobSubmissionProtocol_VALUES_TO_NAMES;
struct MonitorMode {
enum type {
POLL_JOB_MANAGER = 0,
- XSEDE_AMQP_SUBSCRIBE = 1
+ JOB_EMAIL_NOTIFICATION_MONITOR = 1,
+ XSEDE_AMQP_SUBSCRIBE = 2
};
};
extern const std::map<int, const char*> _MonitorMode_VALUES_TO_NAMES;
+struct EmailProtocol {
+ enum type {
+ POP3 = 0,
+ IMAPS = 1
+ };
+};
+
+extern const std::map<int, const char*> _EmailProtocol_VALUES_TO_NAMES;
+
struct DataMovementProtocol {
enum type {
LOCAL = 0,
@@ -317,6 +327,71 @@ class BatchQueue {
void swap(BatchQueue &a, BatchQueue &b);
+
+class EmailMonitorProperty {
+ public:
+
+ static const char* ascii_fingerprint; // = "1991A6BD46E68BF843F10524459D65B1";
+ static const uint8_t binary_fingerprint[16]; // = {0x19,0x91,0xA6,0xBD,0x46,0xE6,0x8B,0xF8,0x43,0xF1,0x05,0x24,0x45,0x9D,0x65,0xB1};
+
+ EmailMonitorProperty() : host(), emailAddress(), password(), folderName("INBOX"), storeProtocol((EmailProtocol::type)0) {
+ }
+
+ virtual ~EmailMonitorProperty() throw() {}
+
+ std::string host;
+ std::string emailAddress;
+ std::string password;
+ std::string folderName;
+ EmailProtocol::type storeProtocol;
+
+ void __set_host(const std::string& val) {
+ host = val;
+ }
+
+ void __set_emailAddress(const std::string& val) {
+ emailAddress = val;
+ }
+
+ void __set_password(const std::string& val) {
+ password = val;
+ }
+
+ void __set_folderName(const std::string& val) {
+ folderName = val;
+ }
+
+ void __set_storeProtocol(const EmailProtocol::type val) {
+ storeProtocol = val;
+ }
+
+ bool operator == (const EmailMonitorProperty & rhs) const
+ {
+ if (!(host == rhs.host))
+ return false;
+ if (!(emailAddress == rhs.emailAddress))
+ return false;
+ if (!(password == rhs.password))
+ return false;
+ if (!(folderName == rhs.folderName))
+ return false;
+ if (!(storeProtocol == rhs.storeProtocol))
+ return false;
+ return true;
+ }
+ bool operator != (const EmailMonitorProperty &rhs) const {
+ return !(*this == rhs);
+ }
+
+ bool operator < (const EmailMonitorProperty & ) const;
+
+ uint32_t read(::apache::thrift::protocol::TProtocol* iprot);
+ uint32_t write(::apache::thrift::protocol::TProtocol* oprot) const;
+
+};
+
+void swap(EmailMonitorProperty &a, EmailMonitorProperty &b);
+
typedef struct _SCPDataMovement__isset {
_SCPDataMovement__isset() : alternativeSCPHostName(false), sshPort(true) {}
bool alternativeSCPHostName;
@@ -572,17 +647,18 @@ class LOCALDataMovement {
void swap(LOCALDataMovement &a, LOCALDataMovement &b);
typedef struct _SSHJobSubmission__isset {
- _SSHJobSubmission__isset() : alternativeSSHHostName(false), sshPort(true), monitorMode(false) {}
+ _SSHJobSubmission__isset() : alternativeSSHHostName(false), sshPort(true), monitorMode(false), emailMonitor(false) {}
bool alternativeSSHHostName;
bool sshPort;
bool monitorMode;
+ bool emailMonitor;
} _SSHJobSubmission__isset;
class SSHJobSubmission {
public:
- static const char* ascii_fingerprint; // = "A62183DAA7AFF027173705420A9D99D0";
- static const uint8_t binary_fingerprint[16]; // = {0xA6,0x21,0x83,0xDA,0xA7,0xAF,0xF0,0x27,0x17,0x37,0x05,0x42,0x0A,0x9D,0x99,0xD0};
+ static const char* ascii_fingerprint; // = "C2237B7244CABB71130AEE137701206F";
+ static const uint8_t binary_fingerprint[16]; // = {0xC2,0x23,0x7B,0x72,0x44,0xCA,0xBB,0x71,0x13,0x0A,0xEE,0x13,0x77,0x01,0x20,0x6F};
SSHJobSubmission() : jobSubmissionInterfaceId("DO_NOT_SET_AT_CLIENTS"), securityProtocol((SecurityProtocol::type)0), alternativeSSHHostName(), sshPort(22), monitorMode((MonitorMode::type)0) {
}
@@ -595,6 +671,7 @@ class SSHJobSubmission {
std::string alternativeSSHHostName;
int32_t sshPort;
MonitorMode::type monitorMode;
+ EmailMonitorProperty emailMonitor;
_SSHJobSubmission__isset __isset;
@@ -625,6 +702,11 @@ class SSHJobSubmission {
__isset.monitorMode = true;
}
+ void __set_emailMonitor(const EmailMonitorProperty& val) {
+ emailMonitor = val;
+ __isset.emailMonitor = true;
+ }
+
bool operator == (const SSHJobSubmission & rhs) const
{
if (!(jobSubmissionInterfaceId == rhs.jobSubmissionInterfaceId))
@@ -645,6 +727,10 @@ class SSHJobSubmission {
return false;
else if (__isset.monitorMode && !(monitorMode == rhs.monitorMode))
return false;
+ if (__isset.emailMonitor != rhs.__isset.emailMonitor)
+ return false;
+ else if (__isset.emailMonitor && !(emailMonitor == rhs.emailMonitor))
+ return false;
return true;
}
bool operator != (const SSHJobSubmission &rhs) const {
http://git-wip-us.apache.org/repos/asf/airavata/blob/66ac6b92/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/ComputeResource/Types.php
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/ComputeResource/Types.php b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/ComputeResource/Types.php
index 2280d94..e488087 100644
--- a/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/ComputeResource/Types.php
+++ b/airavata-api/airavata-client-sdks/airavata-php-sdk/src/main/resources/lib/Airavata/Model/AppCatalog/ComputeResource/Types.php
@@ -98,10 +98,21 @@ final class JobSubmissionProtocol {
final class MonitorMode {
const POLL_JOB_MANAGER = 0;
- const XSEDE_AMQP_SUBSCRIBE = 1;
+ const JOB_EMAIL_NOTIFICATION_MONITOR = 1;
+ const XSEDE_AMQP_SUBSCRIBE = 2;
static public $__names = array(
0 => 'POLL_JOB_MANAGER',
- 1 => 'XSEDE_AMQP_SUBSCRIBE',
+ 1 => 'JOB_EMAIL_NOTIFICATION_MONITOR',
+ 2 => 'XSEDE_AMQP_SUBSCRIBE',
+ );
+}
+
+final class EmailProtocol {
+ const POP3 = 0;
+ const IMAPS = 1;
+ static public $__names = array(
+ 0 => 'POP3',
+ 1 => 'IMAPS',
);
}
@@ -509,6 +520,158 @@ class BatchQueue {
}
+class EmailMonitorProperty {
+ static $_TSPEC;
+
+ public $host = null;
+ public $emailAddress = null;
+ public $password = null;
+ public $folderName = "INBOX";
+ public $storeProtocol = null;
+
+ public function __construct($vals=null) {
+ if (!isset(self::$_TSPEC)) {
+ self::$_TSPEC = array(
+ 1 => array(
+ 'var' => 'host',
+ 'type' => TType::STRING,
+ ),
+ 2 => array(
+ 'var' => 'emailAddress',
+ 'type' => TType::STRING,
+ ),
+ 3 => array(
+ 'var' => 'password',
+ 'type' => TType::STRING,
+ ),
+ 4 => array(
+ 'var' => 'folderName',
+ 'type' => TType::STRING,
+ ),
+ 5 => array(
+ 'var' => 'storeProtocol',
+ 'type' => TType::I32,
+ ),
+ );
+ }
+ if (is_array($vals)) {
+ if (isset($vals['host'])) {
+ $this->host = $vals['host'];
+ }
+ if (isset($vals['emailAddress'])) {
+ $this->emailAddress = $vals['emailAddress'];
+ }
+ if (isset($vals['password'])) {
+ $this->password = $vals['password'];
+ }
+ if (isset($vals['folderName'])) {
+ $this->folderName = $vals['folderName'];
+ }
+ if (isset($vals['storeProtocol'])) {
+ $this->storeProtocol = $vals['storeProtocol'];
+ }
+ }
+ }
+
+ public function getName() {
+ return 'EmailMonitorProperty';
+ }
+
+ public function read($input)
+ {
+ $xfer = 0;
+ $fname = null;
+ $ftype = 0;
+ $fid = 0;
+ $xfer += $input->readStructBegin($fname);
+ while (true)
+ {
+ $xfer += $input->readFieldBegin($fname, $ftype, $fid);
+ if ($ftype == TType::STOP) {
+ break;
+ }
+ switch ($fid)
+ {
+ case 1:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->host);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 2:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->emailAddress);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 3:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->password);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 4:
+ if ($ftype == TType::STRING) {
+ $xfer += $input->readString($this->folderName);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ case 5:
+ if ($ftype == TType::I32) {
+ $xfer += $input->readI32($this->storeProtocol);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
+ default:
+ $xfer += $input->skip($ftype);
+ break;
+ }
+ $xfer += $input->readFieldEnd();
+ }
+ $xfer += $input->readStructEnd();
+ return $xfer;
+ }
+
+ public function write($output) {
+ $xfer = 0;
+ $xfer += $output->writeStructBegin('EmailMonitorProperty');
+ if ($this->host !== null) {
+ $xfer += $output->writeFieldBegin('host', TType::STRING, 1);
+ $xfer += $output->writeString($this->host);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->emailAddress !== null) {
+ $xfer += $output->writeFieldBegin('emailAddress', TType::STRING, 2);
+ $xfer += $output->writeString($this->emailAddress);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->password !== null) {
+ $xfer += $output->writeFieldBegin('password', TType::STRING, 3);
+ $xfer += $output->writeString($this->password);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->folderName !== null) {
+ $xfer += $output->writeFieldBegin('folderName', TType::STRING, 4);
+ $xfer += $output->writeString($this->folderName);
+ $xfer += $output->writeFieldEnd();
+ }
+ if ($this->storeProtocol !== null) {
+ $xfer += $output->writeFieldBegin('storeProtocol', TType::I32, 5);
+ $xfer += $output->writeI32($this->storeProtocol);
+ $xfer += $output->writeFieldEnd();
+ }
+ $xfer += $output->writeFieldStop();
+ $xfer += $output->writeStructEnd();
+ return $xfer;
+ }
+
+}
+
class SCPDataMovement {
static $_TSPEC;
@@ -1069,6 +1232,7 @@ class SSHJobSubmission {
public $alternativeSSHHostName = null;
public $sshPort = 22;
public $monitorMode = null;
+ public $emailMonitor = null;
public function __construct($vals=null) {
if (!isset(self::$_TSPEC)) {
@@ -1098,6 +1262,11 @@ class SSHJobSubmission {
'var' => 'monitorMode',
'type' => TType::I32,
),
+ 7 => array(
+ 'var' => 'emailMonitor',
+ 'type' => TType::STRUCT,
+ 'class' => '\Airavata\Model\AppCatalog\ComputeResource\EmailMonitorProperty',
+ ),
);
}
if (is_array($vals)) {
@@ -1119,6 +1288,9 @@ class SSHJobSubmission {
if (isset($vals['monitorMode'])) {
$this->monitorMode = $vals['monitorMode'];
}
+ if (isset($vals['emailMonitor'])) {
+ $this->emailMonitor = $vals['emailMonitor'];
+ }
}
}
@@ -1184,6 +1356,14 @@ class SSHJobSubmission {
$xfer += $input->skip($ftype);
}
break;
+ case 7:
+ if ($ftype == TType::STRUCT) {
+ $this->emailMonitor = new \Airavata\Model\AppCatalog\ComputeResource\EmailMonitorProperty();
+ $xfer += $this->emailMonitor->read($input);
+ } else {
+ $xfer += $input->skip($ftype);
+ }
+ break;
default:
$xfer += $input->skip($ftype);
break;
@@ -1230,6 +1410,14 @@ class SSHJobSubmission {
$xfer += $output->writeI32($this->monitorMode);
$xfer += $output->writeFieldEnd();
}
+ if ($this->emailMonitor !== null) {
+ if (!is_object($this->emailMonitor)) {
+ throw new TProtocolException('Bad type in structure.', TProtocolException::INVALID_DATA);
+ }
+ $xfer += $output->writeFieldBegin('emailMonitor', TType::STRUCT, 7);
+ $xfer += $this->emailMonitor->write($output);
+ $xfer += $output->writeFieldEnd();
+ }
$xfer += $output->writeFieldStop();
$xfer += $output->writeStructEnd();
return $xfer;
http://git-wip-us.apache.org/repos/asf/airavata/blob/66ac6b92/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/computeresource/ttypes.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/computeresource/ttypes.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/computeresource/ttypes.py
index 7f70c25..e635472 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/computeresource/ttypes.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/computeresource/ttypes.py
@@ -237,16 +237,37 @@ class MonitorMode:
"""
POLL_JOB_MANAGER = 0
- XSEDE_AMQP_SUBSCRIBE = 1
+ JOB_EMAIL_NOTIFICATION_MONITOR = 1
+ XSEDE_AMQP_SUBSCRIBE = 2
_VALUES_TO_NAMES = {
0: "POLL_JOB_MANAGER",
- 1: "XSEDE_AMQP_SUBSCRIBE",
+ 1: "JOB_EMAIL_NOTIFICATION_MONITOR",
+ 2: "XSEDE_AMQP_SUBSCRIBE",
}
_NAMES_TO_VALUES = {
"POLL_JOB_MANAGER": 0,
- "XSEDE_AMQP_SUBSCRIBE": 1,
+ "JOB_EMAIL_NOTIFICATION_MONITOR": 1,
+ "XSEDE_AMQP_SUBSCRIBE": 2,
+ }
+
+class EmailProtocol:
+ """
+ Email protocol
+
+ """
+ POP3 = 0
+ IMAPS = 1
+
+ _VALUES_TO_NAMES = {
+ 0: "POP3",
+ 1: "IMAPS",
+ }
+
+ _NAMES_TO_VALUES = {
+ "POP3": 0,
+ "IMAPS": 1,
}
class DataMovementProtocol:
@@ -587,6 +608,133 @@ class BatchQueue:
def __ne__(self, other):
return not (self == other)
+class EmailMonitorProperty:
+ """
+ Email Monitoring Properties
+
+ host : email host address
+ emailAddress : address which should get email notification
+ password : password to access email address
+ folderName : email folder name default is INBOX
+ storeProtocol : type of store protocol
+
+
+ Attributes:
+ - host
+ - emailAddress
+ - password
+ - folderName
+ - storeProtocol
+ """
+
+ thrift_spec = (
+ None, # 0
+ (1, TType.STRING, 'host', None, None, ), # 1
+ (2, TType.STRING, 'emailAddress', None, None, ), # 2
+ (3, TType.STRING, 'password', None, None, ), # 3
+ (4, TType.STRING, 'folderName', None, "INBOX", ), # 4
+ (5, TType.I32, 'storeProtocol', None, None, ), # 5
+ )
+
+ def __init__(self, host=None, emailAddress=None, password=None, folderName=thrift_spec[4][4], storeProtocol=None,):
+ self.host = host
+ self.emailAddress = emailAddress
+ self.password = password
+ self.folderName = folderName
+ self.storeProtocol = storeProtocol
+
+ def read(self, iprot):
+ if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
+ fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
+ return
+ iprot.readStructBegin()
+ while True:
+ (fname, ftype, fid) = iprot.readFieldBegin()
+ if ftype == TType.STOP:
+ break
+ if fid == 1:
+ if ftype == TType.STRING:
+ self.host = iprot.readString();
+ else:
+ iprot.skip(ftype)
+ elif fid == 2:
+ if ftype == TType.STRING:
+ self.emailAddress = iprot.readString();
+ else:
+ iprot.skip(ftype)
+ elif fid == 3:
+ if ftype == TType.STRING:
+ self.password = iprot.readString();
+ else:
+ iprot.skip(ftype)
+ elif fid == 4:
+ if ftype == TType.STRING:
+ self.folderName = iprot.readString();
+ else:
+ iprot.skip(ftype)
+ elif fid == 5:
+ if ftype == TType.I32:
+ self.storeProtocol = iprot.readI32();
+ else:
+ iprot.skip(ftype)
+ else:
+ iprot.skip(ftype)
+ iprot.readFieldEnd()
+ iprot.readStructEnd()
+
+ def write(self, oprot):
+ if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
+ oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
+ return
+ oprot.writeStructBegin('EmailMonitorProperty')
+ if self.host is not None:
+ oprot.writeFieldBegin('host', TType.STRING, 1)
+ oprot.writeString(self.host)
+ oprot.writeFieldEnd()
+ if self.emailAddress is not None:
+ oprot.writeFieldBegin('emailAddress', TType.STRING, 2)
+ oprot.writeString(self.emailAddress)
+ oprot.writeFieldEnd()
+ if self.password is not None:
+ oprot.writeFieldBegin('password', TType.STRING, 3)
+ oprot.writeString(self.password)
+ oprot.writeFieldEnd()
+ if self.folderName is not None:
+ oprot.writeFieldBegin('folderName', TType.STRING, 4)
+ oprot.writeString(self.folderName)
+ oprot.writeFieldEnd()
+ if self.storeProtocol is not None:
+ oprot.writeFieldBegin('storeProtocol', TType.I32, 5)
+ oprot.writeI32(self.storeProtocol)
+ oprot.writeFieldEnd()
+ oprot.writeFieldStop()
+ oprot.writeStructEnd()
+
+ def validate(self):
+ if self.host is None:
+ raise TProtocol.TProtocolException(message='Required field host is unset!')
+ if self.emailAddress is None:
+ raise TProtocol.TProtocolException(message='Required field emailAddress is unset!')
+ if self.password is None:
+ raise TProtocol.TProtocolException(message='Required field password is unset!')
+ if self.folderName is None:
+ raise TProtocol.TProtocolException(message='Required field folderName is unset!')
+ if self.storeProtocol is None:
+ raise TProtocol.TProtocolException(message='Required field storeProtocol is unset!')
+ return
+
+
+ def __repr__(self):
+ L = ['%s=%r' % (key, value)
+ for key, value in self.__dict__.iteritems()]
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
+
+ def __eq__(self, other):
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not (self == other)
+
class SCPDataMovement:
"""
Data Movement through Secured Copy
@@ -1068,6 +1216,7 @@ class SSHJobSubmission:
- alternativeSSHHostName
- sshPort
- monitorMode
+ - emailMonitor
"""
thrift_spec = (
@@ -1078,15 +1227,17 @@ class SSHJobSubmission:
(4, TType.STRING, 'alternativeSSHHostName', None, None, ), # 4
(5, TType.I32, 'sshPort', None, 22, ), # 5
(6, TType.I32, 'monitorMode', None, None, ), # 6
+ (7, TType.STRUCT, 'emailMonitor', (EmailMonitorProperty, EmailMonitorProperty.thrift_spec), None, ), # 7
)
- def __init__(self, jobSubmissionInterfaceId=thrift_spec[1][4], securityProtocol=None, resourceJobManager=None, alternativeSSHHostName=None, sshPort=thrift_spec[5][4], monitorMode=None,):
+ def __init__(self, jobSubmissionInterfaceId=thrift_spec[1][4], securityProtocol=None, resourceJobManager=None, alternativeSSHHostName=None, sshPort=thrift_spec[5][4], monitorMode=None, emailMonitor=None,):
self.jobSubmissionInterfaceId = jobSubmissionInterfaceId
self.securityProtocol = securityProtocol
self.resourceJobManager = resourceJobManager
self.alternativeSSHHostName = alternativeSSHHostName
self.sshPort = sshPort
self.monitorMode = monitorMode
+ self.emailMonitor = emailMonitor
def read(self, iprot):
if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
@@ -1128,6 +1279,12 @@ class SSHJobSubmission:
self.monitorMode = iprot.readI32();
else:
iprot.skip(ftype)
+ elif fid == 7:
+ if ftype == TType.STRUCT:
+ self.emailMonitor = EmailMonitorProperty()
+ self.emailMonitor.read(iprot)
+ else:
+ iprot.skip(ftype)
else:
iprot.skip(ftype)
iprot.readFieldEnd()
@@ -1162,6 +1319,10 @@ class SSHJobSubmission:
oprot.writeFieldBegin('monitorMode', TType.I32, 6)
oprot.writeI32(self.monitorMode)
oprot.writeFieldEnd()
+ if self.emailMonitor is not None:
+ oprot.writeFieldBegin('emailMonitor', TType.STRUCT, 7)
+ self.emailMonitor.write(oprot)
+ oprot.writeFieldEnd()
oprot.writeFieldStop()
oprot.writeStructEnd()
http://git-wip-us.apache.org/repos/asf/airavata/blob/66ac6b92/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/messaging/event/ttypes.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/messaging/event/ttypes.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/messaging/event/ttypes.py
index 279231b..5cfac76 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/messaging/event/ttypes.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/messaging/event/ttypes.py
@@ -46,6 +46,7 @@ class MessageType:
JOB = 3
LAUNCHTASK = 4
TERMINATETASK = 5
+ TASKOUTPUT = 6
_VALUES_TO_NAMES = {
0: "EXPERIMENT",
@@ -54,6 +55,7 @@ class MessageType:
3: "JOB",
4: "LAUNCHTASK",
5: "TERMINATETASK",
+ 6: "TASKOUTPUT",
}
_NAMES_TO_VALUES = {
@@ -63,6 +65,7 @@ class MessageType:
"JOB": 3,
"LAUNCHTASK": 4,
"TERMINATETASK": 5,
+ "TASKOUTPUT": 6,
}
@@ -785,6 +788,82 @@ class JobIdentifier:
def __ne__(self, other):
return not (self == other)
+class ProcessSubmitEvent:
+ """
+ Attributes:
+ - taskId
+ - credentialToken
+ """
+
+ thrift_spec = (
+ None, # 0
+ (1, TType.STRING, 'taskId', None, None, ), # 1
+ (2, TType.STRING, 'credentialToken', None, None, ), # 2
+ )
+
+ def __init__(self, taskId=None, credentialToken=None,):
+ self.taskId = taskId
+ self.credentialToken = credentialToken
+
+ def read(self, iprot):
+ if iprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None and fastbinary is not None:
+ fastbinary.decode_binary(self, iprot.trans, (self.__class__, self.thrift_spec))
+ return
+ iprot.readStructBegin()
+ while True:
+ (fname, ftype, fid) = iprot.readFieldBegin()
+ if ftype == TType.STOP:
+ break
+ if fid == 1:
+ if ftype == TType.STRING:
+ self.taskId = iprot.readString();
+ else:
+ iprot.skip(ftype)
+ elif fid == 2:
+ if ftype == TType.STRING:
+ self.credentialToken = iprot.readString();
+ else:
+ iprot.skip(ftype)
+ else:
+ iprot.skip(ftype)
+ iprot.readFieldEnd()
+ iprot.readStructEnd()
+
+ def write(self, oprot):
+ if oprot.__class__ == TBinaryProtocol.TBinaryProtocolAccelerated and self.thrift_spec is not None and fastbinary is not None:
+ oprot.trans.write(fastbinary.encode_binary(self, (self.__class__, self.thrift_spec)))
+ return
+ oprot.writeStructBegin('ProcessSubmitEvent')
+ if self.taskId is not None:
+ oprot.writeFieldBegin('taskId', TType.STRING, 1)
+ oprot.writeString(self.taskId)
+ oprot.writeFieldEnd()
+ if self.credentialToken is not None:
+ oprot.writeFieldBegin('credentialToken', TType.STRING, 2)
+ oprot.writeString(self.credentialToken)
+ oprot.writeFieldEnd()
+ oprot.writeFieldStop()
+ oprot.writeStructEnd()
+
+ def validate(self):
+ if self.taskId is None:
+ raise TProtocol.TProtocolException(message='Required field taskId is unset!')
+ if self.credentialToken is None:
+ raise TProtocol.TProtocolException(message='Required field credentialToken is unset!')
+ return
+
+
+ def __repr__(self):
+ L = ['%s=%r' % (key, value)
+ for key, value in self.__dict__.iteritems()]
+ return '%s(%s)' % (self.__class__.__name__, ', '.join(L))
+
+ def __eq__(self, other):
+ return isinstance(other, self.__class__) and self.__dict__ == other.__dict__
+
+ def __ne__(self, other):
+ return not (self == other)
+
class TaskSubmitEvent:
"""
Attributes:
http://git-wip-us.apache.org/repos/asf/airavata/blob/66ac6b92/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/EmailMonitorProperty.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/EmailMonitorProperty.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/EmailMonitorProperty.java
new file mode 100644
index 0000000..bad6eee
--- /dev/null
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/EmailMonitorProperty.java
@@ -0,0 +1,805 @@
+/**
+ * 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.1)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ * @generated
+ */
+package org.apache.airavata.model.appcatalog.computeresource;
+
+import org.apache.thrift.scheme.IScheme;
+import org.apache.thrift.scheme.SchemeFactory;
+import org.apache.thrift.scheme.StandardScheme;
+
+import org.apache.thrift.scheme.TupleScheme;
+import org.apache.thrift.protocol.TTupleProtocol;
+import org.apache.thrift.protocol.TProtocolException;
+import org.apache.thrift.EncodingUtils;
+import org.apache.thrift.TException;
+import org.apache.thrift.async.AsyncMethodCallback;
+import org.apache.thrift.server.AbstractNonblockingServer.*;
+import java.util.List;
+import java.util.ArrayList;
+import java.util.Map;
+import java.util.HashMap;
+import java.util.EnumMap;
+import java.util.Set;
+import java.util.HashSet;
+import java.util.EnumSet;
+import java.util.Collections;
+import java.util.BitSet;
+import java.nio.ByteBuffer;
+import java.util.Arrays;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * Email Monitoring Properties
+ *
+ * host : email host address
+ * emailAddress : address which should get email notification
+ * password : password to access email address
+ * folderName : email folder name default is INBOX
+ * storeProtocol : type of store protocol
+ *
+ */
+@SuppressWarnings("all") public class EmailMonitorProperty implements org.apache.thrift.TBase<EmailMonitorProperty, EmailMonitorProperty._Fields>, java.io.Serializable, Cloneable, Comparable<EmailMonitorProperty> {
+ private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("EmailMonitorProperty");
+
+ private static final org.apache.thrift.protocol.TField HOST_FIELD_DESC = new org.apache.thrift.protocol.TField("host", org.apache.thrift.protocol.TType.STRING, (short)1);
+ private static final org.apache.thrift.protocol.TField EMAIL_ADDRESS_FIELD_DESC = new org.apache.thrift.protocol.TField("emailAddress", org.apache.thrift.protocol.TType.STRING, (short)2);
+ private static final org.apache.thrift.protocol.TField PASSWORD_FIELD_DESC = new org.apache.thrift.protocol.TField("password", org.apache.thrift.protocol.TType.STRING, (short)3);
+ private static final org.apache.thrift.protocol.TField FOLDER_NAME_FIELD_DESC = new org.apache.thrift.protocol.TField("folderName", org.apache.thrift.protocol.TType.STRING, (short)4);
+ private static final org.apache.thrift.protocol.TField STORE_PROTOCOL_FIELD_DESC = new org.apache.thrift.protocol.TField("storeProtocol", org.apache.thrift.protocol.TType.I32, (short)5);
+
+ private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>();
+ static {
+ schemes.put(StandardScheme.class, new EmailMonitorPropertyStandardSchemeFactory());
+ schemes.put(TupleScheme.class, new EmailMonitorPropertyTupleSchemeFactory());
+ }
+
+ private String host; // required
+ private String emailAddress; // required
+ private String password; // required
+ private String folderName; // required
+ private EmailProtocol storeProtocol; // required
+
+ /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */
+ @SuppressWarnings("all") public enum _Fields implements org.apache.thrift.TFieldIdEnum {
+ HOST((short)1, "host"),
+ EMAIL_ADDRESS((short)2, "emailAddress"),
+ PASSWORD((short)3, "password"),
+ FOLDER_NAME((short)4, "folderName"),
+ /**
+ *
+ * @see EmailProtocol
+ */
+ STORE_PROTOCOL((short)5, "storeProtocol");
+
+ private static final Map<String, _Fields> byName = new HashMap<String, _Fields>();
+
+ static {
+ for (_Fields field : EnumSet.allOf(_Fields.class)) {
+ byName.put(field.getFieldName(), field);
+ }
+ }
+
+ /**
+ * Find the _Fields constant that matches fieldId, or null if its not found.
+ */
+ public static _Fields findByThriftId(int fieldId) {
+ switch(fieldId) {
+ case 1: // HOST
+ return HOST;
+ case 2: // EMAIL_ADDRESS
+ return EMAIL_ADDRESS;
+ case 3: // PASSWORD
+ return PASSWORD;
+ case 4: // FOLDER_NAME
+ return FOLDER_NAME;
+ case 5: // STORE_PROTOCOL
+ return STORE_PROTOCOL;
+ default:
+ return null;
+ }
+ }
+
+ /**
+ * Find the _Fields constant that matches fieldId, throwing an exception
+ * if it is not found.
+ */
+ public static _Fields findByThriftIdOrThrow(int fieldId) {
+ _Fields fields = findByThriftId(fieldId);
+ if (fields == null) throw new IllegalArgumentException("Field " + fieldId + " doesn't exist!");
+ return fields;
+ }
+
+ /**
+ * Find the _Fields constant that matches name, or null if its not found.
+ */
+ public static _Fields findByName(String name) {
+ return byName.get(name);
+ }
+
+ private final short _thriftId;
+ private final String _fieldName;
+
+ _Fields(short thriftId, String fieldName) {
+ _thriftId = thriftId;
+ _fieldName = fieldName;
+ }
+
+ public short getThriftFieldId() {
+ return _thriftId;
+ }
+
+ public String getFieldName() {
+ return _fieldName;
+ }
+ }
+
+ // isset id assignments
+ public static final Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> metaDataMap;
+ static {
+ Map<_Fields, org.apache.thrift.meta_data.FieldMetaData> tmpMap = new EnumMap<_Fields, org.apache.thrift.meta_data.FieldMetaData>(_Fields.class);
+ tmpMap.put(_Fields.HOST, new org.apache.thrift.meta_data.FieldMetaData("host", org.apache.thrift.TFieldRequirementType.REQUIRED,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+ tmpMap.put(_Fields.EMAIL_ADDRESS, new org.apache.thrift.meta_data.FieldMetaData("emailAddress", org.apache.thrift.TFieldRequirementType.REQUIRED,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+ tmpMap.put(_Fields.PASSWORD, new org.apache.thrift.meta_data.FieldMetaData("password", org.apache.thrift.TFieldRequirementType.REQUIRED,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+ tmpMap.put(_Fields.FOLDER_NAME, new org.apache.thrift.meta_data.FieldMetaData("folderName", org.apache.thrift.TFieldRequirementType.REQUIRED,
+ new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING)));
+ tmpMap.put(_Fields.STORE_PROTOCOL, new org.apache.thrift.meta_data.FieldMetaData("storeProtocol", org.apache.thrift.TFieldRequirementType.REQUIRED,
+ new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, EmailProtocol.class)));
+ metaDataMap = Collections.unmodifiableMap(tmpMap);
+ org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(EmailMonitorProperty.class, metaDataMap);
+ }
+
+ public EmailMonitorProperty() {
+ this.folderName = "INBOX";
+
+ }
+
+ public EmailMonitorProperty(
+ String host,
+ String emailAddress,
+ String password,
+ String folderName,
+ EmailProtocol storeProtocol)
+ {
+ this();
+ this.host = host;
+ this.emailAddress = emailAddress;
+ this.password = password;
+ this.folderName = folderName;
+ this.storeProtocol = storeProtocol;
+ }
+
+ /**
+ * Performs a deep copy on <i>other</i>.
+ */
+ public EmailMonitorProperty(EmailMonitorProperty other) {
+ if (other.isSetHost()) {
+ this.host = other.host;
+ }
+ if (other.isSetEmailAddress()) {
+ this.emailAddress = other.emailAddress;
+ }
+ if (other.isSetPassword()) {
+ this.password = other.password;
+ }
+ if (other.isSetFolderName()) {
+ this.folderName = other.folderName;
+ }
+ if (other.isSetStoreProtocol()) {
+ this.storeProtocol = other.storeProtocol;
+ }
+ }
+
+ public EmailMonitorProperty deepCopy() {
+ return new EmailMonitorProperty(this);
+ }
+
+ @Override
+ public void clear() {
+ this.host = null;
+ this.emailAddress = null;
+ this.password = null;
+ this.folderName = "INBOX";
+
+ this.storeProtocol = null;
+ }
+
+ public String getHost() {
+ return this.host;
+ }
+
+ public void setHost(String host) {
+ this.host = host;
+ }
+
+ public void unsetHost() {
+ this.host = null;
+ }
+
+ /** Returns true if field host is set (has been assigned a value) and false otherwise */
+ public boolean isSetHost() {
+ return this.host != null;
+ }
+
+ public void setHostIsSet(boolean value) {
+ if (!value) {
+ this.host = null;
+ }
+ }
+
+ public String getEmailAddress() {
+ return this.emailAddress;
+ }
+
+ public void setEmailAddress(String emailAddress) {
+ this.emailAddress = emailAddress;
+ }
+
+ public void unsetEmailAddress() {
+ this.emailAddress = null;
+ }
+
+ /** Returns true if field emailAddress is set (has been assigned a value) and false otherwise */
+ public boolean isSetEmailAddress() {
+ return this.emailAddress != null;
+ }
+
+ public void setEmailAddressIsSet(boolean value) {
+ if (!value) {
+ this.emailAddress = null;
+ }
+ }
+
+ public String getPassword() {
+ return this.password;
+ }
+
+ public void setPassword(String password) {
+ this.password = password;
+ }
+
+ public void unsetPassword() {
+ this.password = null;
+ }
+
+ /** Returns true if field password is set (has been assigned a value) and false otherwise */
+ public boolean isSetPassword() {
+ return this.password != null;
+ }
+
+ public void setPasswordIsSet(boolean value) {
+ if (!value) {
+ this.password = null;
+ }
+ }
+
+ public String getFolderName() {
+ return this.folderName;
+ }
+
+ public void setFolderName(String folderName) {
+ this.folderName = folderName;
+ }
+
+ public void unsetFolderName() {
+ this.folderName = null;
+ }
+
+ /** Returns true if field folderName is set (has been assigned a value) and false otherwise */
+ public boolean isSetFolderName() {
+ return this.folderName != null;
+ }
+
+ public void setFolderNameIsSet(boolean value) {
+ if (!value) {
+ this.folderName = null;
+ }
+ }
+
+ /**
+ *
+ * @see EmailProtocol
+ */
+ public EmailProtocol getStoreProtocol() {
+ return this.storeProtocol;
+ }
+
+ /**
+ *
+ * @see EmailProtocol
+ */
+ public void setStoreProtocol(EmailProtocol storeProtocol) {
+ this.storeProtocol = storeProtocol;
+ }
+
+ public void unsetStoreProtocol() {
+ this.storeProtocol = null;
+ }
+
+ /** Returns true if field storeProtocol is set (has been assigned a value) and false otherwise */
+ public boolean isSetStoreProtocol() {
+ return this.storeProtocol != null;
+ }
+
+ public void setStoreProtocolIsSet(boolean value) {
+ if (!value) {
+ this.storeProtocol = null;
+ }
+ }
+
+ public void setFieldValue(_Fields field, Object value) {
+ switch (field) {
+ case HOST:
+ if (value == null) {
+ unsetHost();
+ } else {
+ setHost((String)value);
+ }
+ break;
+
+ case EMAIL_ADDRESS:
+ if (value == null) {
+ unsetEmailAddress();
+ } else {
+ setEmailAddress((String)value);
+ }
+ break;
+
+ case PASSWORD:
+ if (value == null) {
+ unsetPassword();
+ } else {
+ setPassword((String)value);
+ }
+ break;
+
+ case FOLDER_NAME:
+ if (value == null) {
+ unsetFolderName();
+ } else {
+ setFolderName((String)value);
+ }
+ break;
+
+ case STORE_PROTOCOL:
+ if (value == null) {
+ unsetStoreProtocol();
+ } else {
+ setStoreProtocol((EmailProtocol)value);
+ }
+ break;
+
+ }
+ }
+
+ public Object getFieldValue(_Fields field) {
+ switch (field) {
+ case HOST:
+ return getHost();
+
+ case EMAIL_ADDRESS:
+ return getEmailAddress();
+
+ case PASSWORD:
+ return getPassword();
+
+ case FOLDER_NAME:
+ return getFolderName();
+
+ case STORE_PROTOCOL:
+ return getStoreProtocol();
+
+ }
+ throw new IllegalStateException();
+ }
+
+ /** Returns true if field corresponding to fieldID is set (has been assigned a value) and false otherwise */
+ public boolean isSet(_Fields field) {
+ if (field == null) {
+ throw new IllegalArgumentException();
+ }
+
+ switch (field) {
+ case HOST:
+ return isSetHost();
+ case EMAIL_ADDRESS:
+ return isSetEmailAddress();
+ case PASSWORD:
+ return isSetPassword();
+ case FOLDER_NAME:
+ return isSetFolderName();
+ case STORE_PROTOCOL:
+ return isSetStoreProtocol();
+ }
+ throw new IllegalStateException();
+ }
+
+ @Override
+ public boolean equals(Object that) {
+ if (that == null)
+ return false;
+ if (that instanceof EmailMonitorProperty)
+ return this.equals((EmailMonitorProperty)that);
+ return false;
+ }
+
+ public boolean equals(EmailMonitorProperty that) {
+ if (that == null)
+ return false;
+
+ boolean this_present_host = true && this.isSetHost();
+ boolean that_present_host = true && that.isSetHost();
+ if (this_present_host || that_present_host) {
+ if (!(this_present_host && that_present_host))
+ return false;
+ if (!this.host.equals(that.host))
+ return false;
+ }
+
+ boolean this_present_emailAddress = true && this.isSetEmailAddress();
+ boolean that_present_emailAddress = true && that.isSetEmailAddress();
+ if (this_present_emailAddress || that_present_emailAddress) {
+ if (!(this_present_emailAddress && that_present_emailAddress))
+ return false;
+ if (!this.emailAddress.equals(that.emailAddress))
+ return false;
+ }
+
+ boolean this_present_password = true && this.isSetPassword();
+ boolean that_present_password = true && that.isSetPassword();
+ if (this_present_password || that_present_password) {
+ if (!(this_present_password && that_present_password))
+ return false;
+ if (!this.password.equals(that.password))
+ return false;
+ }
+
+ boolean this_present_folderName = true && this.isSetFolderName();
+ boolean that_present_folderName = true && that.isSetFolderName();
+ if (this_present_folderName || that_present_folderName) {
+ if (!(this_present_folderName && that_present_folderName))
+ return false;
+ if (!this.folderName.equals(that.folderName))
+ return false;
+ }
+
+ boolean this_present_storeProtocol = true && this.isSetStoreProtocol();
+ boolean that_present_storeProtocol = true && that.isSetStoreProtocol();
+ if (this_present_storeProtocol || that_present_storeProtocol) {
+ if (!(this_present_storeProtocol && that_present_storeProtocol))
+ return false;
+ if (!this.storeProtocol.equals(that.storeProtocol))
+ return false;
+ }
+
+ return true;
+ }
+
+ @Override
+ public int hashCode() {
+ return 0;
+ }
+
+ @Override
+ public int compareTo(EmailMonitorProperty other) {
+ if (!getClass().equals(other.getClass())) {
+ return getClass().getName().compareTo(other.getClass().getName());
+ }
+
+ int lastComparison = 0;
+
+ lastComparison = Boolean.valueOf(isSetHost()).compareTo(other.isSetHost());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetHost()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.host, other.host);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetEmailAddress()).compareTo(other.isSetEmailAddress());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetEmailAddress()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.emailAddress, other.emailAddress);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetPassword()).compareTo(other.isSetPassword());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetPassword()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.password, other.password);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetFolderName()).compareTo(other.isSetFolderName());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetFolderName()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.folderName, other.folderName);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ lastComparison = Boolean.valueOf(isSetStoreProtocol()).compareTo(other.isSetStoreProtocol());
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ if (isSetStoreProtocol()) {
+ lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.storeProtocol, other.storeProtocol);
+ if (lastComparison != 0) {
+ return lastComparison;
+ }
+ }
+ return 0;
+ }
+
+ public _Fields fieldForId(int fieldId) {
+ return _Fields.findByThriftId(fieldId);
+ }
+
+ public void read(org.apache.thrift.protocol.TProtocol iprot) throws org.apache.thrift.TException {
+ schemes.get(iprot.getScheme()).getScheme().read(iprot, this);
+ }
+
+ public void write(org.apache.thrift.protocol.TProtocol oprot) throws org.apache.thrift.TException {
+ schemes.get(oprot.getScheme()).getScheme().write(oprot, this);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder("EmailMonitorProperty(");
+ boolean first = true;
+
+ sb.append("host:");
+ if (this.host == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.host);
+ }
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("emailAddress:");
+ if (this.emailAddress == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.emailAddress);
+ }
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("password:");
+ if (this.password == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.password);
+ }
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("folderName:");
+ if (this.folderName == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.folderName);
+ }
+ first = false;
+ if (!first) sb.append(", ");
+ sb.append("storeProtocol:");
+ if (this.storeProtocol == null) {
+ sb.append("null");
+ } else {
+ sb.append(this.storeProtocol);
+ }
+ first = false;
+ sb.append(")");
+ return sb.toString();
+ }
+
+ public void validate() throws org.apache.thrift.TException {
+ // check for required fields
+ if (!isSetHost()) {
+ throw new org.apache.thrift.protocol.TProtocolException("Required field 'host' is unset! Struct:" + toString());
+ }
+
+ if (!isSetEmailAddress()) {
+ throw new org.apache.thrift.protocol.TProtocolException("Required field 'emailAddress' is unset! Struct:" + toString());
+ }
+
+ if (!isSetPassword()) {
+ throw new org.apache.thrift.protocol.TProtocolException("Required field 'password' is unset! Struct:" + toString());
+ }
+
+ if (!isSetFolderName()) {
+ throw new org.apache.thrift.protocol.TProtocolException("Required field 'folderName' is unset! Struct:" + toString());
+ }
+
+ if (!isSetStoreProtocol()) {
+ throw new org.apache.thrift.protocol.TProtocolException("Required field 'storeProtocol' is unset! Struct:" + toString());
+ }
+
+ // check for sub-struct validity
+ }
+
+ private void writeObject(java.io.ObjectOutputStream out) throws java.io.IOException {
+ try {
+ write(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(out)));
+ } catch (org.apache.thrift.TException te) {
+ throw new java.io.IOException(te);
+ }
+ }
+
+ private void readObject(java.io.ObjectInputStream in) throws java.io.IOException, ClassNotFoundException {
+ try {
+ read(new org.apache.thrift.protocol.TCompactProtocol(new org.apache.thrift.transport.TIOStreamTransport(in)));
+ } catch (org.apache.thrift.TException te) {
+ throw new java.io.IOException(te);
+ }
+ }
+
+ private static class EmailMonitorPropertyStandardSchemeFactory implements SchemeFactory {
+ public EmailMonitorPropertyStandardScheme getScheme() {
+ return new EmailMonitorPropertyStandardScheme();
+ }
+ }
+
+ private static class EmailMonitorPropertyStandardScheme extends StandardScheme<EmailMonitorProperty> {
+
+ public void read(org.apache.thrift.protocol.TProtocol iprot, EmailMonitorProperty struct) throws org.apache.thrift.TException {
+ org.apache.thrift.protocol.TField schemeField;
+ iprot.readStructBegin();
+ while (true)
+ {
+ schemeField = iprot.readFieldBegin();
+ if (schemeField.type == org.apache.thrift.protocol.TType.STOP) {
+ break;
+ }
+ switch (schemeField.id) {
+ case 1: // HOST
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.host = iprot.readString();
+ struct.setHostIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 2: // EMAIL_ADDRESS
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.emailAddress = iprot.readString();
+ struct.setEmailAddressIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 3: // PASSWORD
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.password = iprot.readString();
+ struct.setPasswordIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 4: // FOLDER_NAME
+ if (schemeField.type == org.apache.thrift.protocol.TType.STRING) {
+ struct.folderName = iprot.readString();
+ struct.setFolderNameIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ case 5: // STORE_PROTOCOL
+ if (schemeField.type == org.apache.thrift.protocol.TType.I32) {
+ struct.storeProtocol = EmailProtocol.findByValue(iprot.readI32());
+ struct.setStoreProtocolIsSet(true);
+ } else {
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ break;
+ default:
+ org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type);
+ }
+ iprot.readFieldEnd();
+ }
+ iprot.readStructEnd();
+ struct.validate();
+ }
+
+ public void write(org.apache.thrift.protocol.TProtocol oprot, EmailMonitorProperty struct) throws org.apache.thrift.TException {
+ struct.validate();
+
+ oprot.writeStructBegin(STRUCT_DESC);
+ if (struct.host != null) {
+ oprot.writeFieldBegin(HOST_FIELD_DESC);
+ oprot.writeString(struct.host);
+ oprot.writeFieldEnd();
+ }
+ if (struct.emailAddress != null) {
+ oprot.writeFieldBegin(EMAIL_ADDRESS_FIELD_DESC);
+ oprot.writeString(struct.emailAddress);
+ oprot.writeFieldEnd();
+ }
+ if (struct.password != null) {
+ oprot.writeFieldBegin(PASSWORD_FIELD_DESC);
+ oprot.writeString(struct.password);
+ oprot.writeFieldEnd();
+ }
+ if (struct.folderName != null) {
+ oprot.writeFieldBegin(FOLDER_NAME_FIELD_DESC);
+ oprot.writeString(struct.folderName);
+ oprot.writeFieldEnd();
+ }
+ if (struct.storeProtocol != null) {
+ oprot.writeFieldBegin(STORE_PROTOCOL_FIELD_DESC);
+ oprot.writeI32(struct.storeProtocol.getValue());
+ oprot.writeFieldEnd();
+ }
+ oprot.writeFieldStop();
+ oprot.writeStructEnd();
+ }
+
+ }
+
+ private static class EmailMonitorPropertyTupleSchemeFactory implements SchemeFactory {
+ public EmailMonitorPropertyTupleScheme getScheme() {
+ return new EmailMonitorPropertyTupleScheme();
+ }
+ }
+
+ private static class EmailMonitorPropertyTupleScheme extends TupleScheme<EmailMonitorProperty> {
+
+ @Override
+ public void write(org.apache.thrift.protocol.TProtocol prot, EmailMonitorProperty struct) throws org.apache.thrift.TException {
+ TTupleProtocol oprot = (TTupleProtocol) prot;
+ oprot.writeString(struct.host);
+ oprot.writeString(struct.emailAddress);
+ oprot.writeString(struct.password);
+ oprot.writeString(struct.folderName);
+ oprot.writeI32(struct.storeProtocol.getValue());
+ }
+
+ @Override
+ public void read(org.apache.thrift.protocol.TProtocol prot, EmailMonitorProperty struct) throws org.apache.thrift.TException {
+ TTupleProtocol iprot = (TTupleProtocol) prot;
+ struct.host = iprot.readString();
+ struct.setHostIsSet(true);
+ struct.emailAddress = iprot.readString();
+ struct.setEmailAddressIsSet(true);
+ struct.password = iprot.readString();
+ struct.setPasswordIsSet(true);
+ struct.folderName = iprot.readString();
+ struct.setFolderNameIsSet(true);
+ struct.storeProtocol = EmailProtocol.findByValue(iprot.readI32());
+ struct.setStoreProtocolIsSet(true);
+ }
+ }
+
+}
+
http://git-wip-us.apache.org/repos/asf/airavata/blob/66ac6b92/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/EmailProtocol.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/EmailProtocol.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/EmailProtocol.java
new file mode 100644
index 0000000..d646f8a
--- /dev/null
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/EmailProtocol.java
@@ -0,0 +1,66 @@
+/**
+ * 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.1)
+ *
+ * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
+ * @generated
+ */
+package org.apache.airavata.model.appcatalog.computeresource;
+
+
+import java.util.Map;
+import java.util.HashMap;
+import org.apache.thrift.TEnum;
+
+/**
+ * Email protocol
+ *
+ */
+@SuppressWarnings("all") public enum EmailProtocol implements org.apache.thrift.TEnum {
+ POP3(0),
+ IMAPS(1);
+
+ private final int value;
+
+ private EmailProtocol(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 EmailProtocol findByValue(int value) {
+ switch (value) {
+ case 0:
+ return POP3;
+ case 1:
+ return IMAPS;
+ default:
+ return null;
+ }
+ }
+}
http://git-wip-us.apache.org/repos/asf/airavata/blob/66ac6b92/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/MonitorMode.java
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/MonitorMode.java b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/MonitorMode.java
index 2545711..53cadd7 100644
--- a/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/MonitorMode.java
+++ b/airavata-api/airavata-data-models/src/main/java/org/apache/airavata/model/appcatalog/computeresource/MonitorMode.java
@@ -41,7 +41,8 @@ import org.apache.thrift.TEnum;
*/
@SuppressWarnings("all") public enum MonitorMode implements org.apache.thrift.TEnum {
POLL_JOB_MANAGER(0),
- XSEDE_AMQP_SUBSCRIBE(1);
+ JOB_EMAIL_NOTIFICATION_MONITOR(1),
+ XSEDE_AMQP_SUBSCRIBE(2);
private final int value;
@@ -65,6 +66,8 @@ import org.apache.thrift.TEnum;
case 0:
return POLL_JOB_MANAGER;
case 1:
+ return JOB_EMAIL_NOTIFICATION_MONITOR;
+ case 2:
return XSEDE_AMQP_SUBSCRIBE;
default:
return null;