http://git-wip-us.apache.org/repos/asf/airavata/blob/25da582a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/model/appcatalog/computeresource/UnicoreJobSubmission.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/model/appcatalog/computeresource/UnicoreJobSubmission.java b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/model/appcatalog/computeresource/UnicoreJobSubmission.java new file mode 100644 index 0000000..3235fb2 --- /dev/null +++ b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/model/appcatalog/computeresource/UnicoreJobSubmission.java @@ -0,0 +1,637 @@ +/** + * 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.2) + * + * 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 javax.annotation.Generated; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) +/** + * Unicore Job Submission + * + * unicoreEndPointURL: + * unicoreGateway End Point. The provider will query this service to fetch required service end points. + * authenticationMode + * The authenticationMode defines the way certificate is fetched. + */ +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-12-2") +public class UnicoreJobSubmission implements org.apache.thrift.TBase<UnicoreJobSubmission, UnicoreJobSubmission._Fields>, java.io.Serializable, Cloneable, Comparable<UnicoreJobSubmission> { + private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("UnicoreJobSubmission"); + + private static final org.apache.thrift.protocol.TField JOB_SUBMISSION_INTERFACE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("jobSubmissionInterfaceId", org.apache.thrift.protocol.TType.STRING, (short)1); + private static final org.apache.thrift.protocol.TField SECURITY_PROTOCOL_FIELD_DESC = new org.apache.thrift.protocol.TField("securityProtocol", org.apache.thrift.protocol.TType.I32, (short)2); + private static final org.apache.thrift.protocol.TField UNICORE_END_POINT_URL_FIELD_DESC = new org.apache.thrift.protocol.TField("unicoreEndPointURL", org.apache.thrift.protocol.TType.STRING, (short)3); + + private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>(); + static { + schemes.put(StandardScheme.class, new UnicoreJobSubmissionStandardSchemeFactory()); + schemes.put(TupleScheme.class, new UnicoreJobSubmissionTupleSchemeFactory()); + } + + public String jobSubmissionInterfaceId; // required + /** + * + * @see org.apache.airavata.model.data.movement.SecurityProtocol + */ + public org.apache.airavata.model.data.movement.SecurityProtocol securityProtocol; // required + public String unicoreEndPointURL; // required + + /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */ + public enum _Fields implements org.apache.thrift.TFieldIdEnum { + JOB_SUBMISSION_INTERFACE_ID((short)1, "jobSubmissionInterfaceId"), + /** + * + * @see org.apache.airavata.model.data.movement.SecurityProtocol + */ + SECURITY_PROTOCOL((short)2, "securityProtocol"), + UNICORE_END_POINT_URL((short)3, "unicoreEndPointURL"); + + 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: // JOB_SUBMISSION_INTERFACE_ID + return JOB_SUBMISSION_INTERFACE_ID; + case 2: // SECURITY_PROTOCOL + return SECURITY_PROTOCOL; + case 3: // UNICORE_END_POINT_URL + return UNICORE_END_POINT_URL; + 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.JOB_SUBMISSION_INTERFACE_ID, new org.apache.thrift.meta_data.FieldMetaData("jobSubmissionInterfaceId", org.apache.thrift.TFieldRequirementType.REQUIRED, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + tmpMap.put(_Fields.SECURITY_PROTOCOL, new org.apache.thrift.meta_data.FieldMetaData("securityProtocol", org.apache.thrift.TFieldRequirementType.REQUIRED, + new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, org.apache.airavata.model.data.movement.SecurityProtocol.class))); + tmpMap.put(_Fields.UNICORE_END_POINT_URL, new org.apache.thrift.meta_data.FieldMetaData("unicoreEndPointURL", org.apache.thrift.TFieldRequirementType.REQUIRED, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + metaDataMap = Collections.unmodifiableMap(tmpMap); + org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(UnicoreJobSubmission.class, metaDataMap); + } + + public UnicoreJobSubmission() { + this.jobSubmissionInterfaceId = "DO_NOT_SET_AT_CLIENTS"; + + } + + public UnicoreJobSubmission( + String jobSubmissionInterfaceId, + org.apache.airavata.model.data.movement.SecurityProtocol securityProtocol, + String unicoreEndPointURL) + { + this(); + this.jobSubmissionInterfaceId = jobSubmissionInterfaceId; + this.securityProtocol = securityProtocol; + this.unicoreEndPointURL = unicoreEndPointURL; + } + + /** + * Performs a deep copy on <i>other</i>. + */ + public UnicoreJobSubmission(UnicoreJobSubmission other) { + if (other.isSetJobSubmissionInterfaceId()) { + this.jobSubmissionInterfaceId = other.jobSubmissionInterfaceId; + } + if (other.isSetSecurityProtocol()) { + this.securityProtocol = other.securityProtocol; + } + if (other.isSetUnicoreEndPointURL()) { + this.unicoreEndPointURL = other.unicoreEndPointURL; + } + } + + public UnicoreJobSubmission deepCopy() { + return new UnicoreJobSubmission(this); + } + + @Override + public void clear() { + this.jobSubmissionInterfaceId = "DO_NOT_SET_AT_CLIENTS"; + + this.securityProtocol = null; + this.unicoreEndPointURL = null; + } + + public String getJobSubmissionInterfaceId() { + return this.jobSubmissionInterfaceId; + } + + public UnicoreJobSubmission setJobSubmissionInterfaceId(String jobSubmissionInterfaceId) { + this.jobSubmissionInterfaceId = jobSubmissionInterfaceId; + return this; + } + + public void unsetJobSubmissionInterfaceId() { + this.jobSubmissionInterfaceId = null; + } + + /** Returns true if field jobSubmissionInterfaceId is set (has been assigned a value) and false otherwise */ + public boolean isSetJobSubmissionInterfaceId() { + return this.jobSubmissionInterfaceId != null; + } + + public void setJobSubmissionInterfaceIdIsSet(boolean value) { + if (!value) { + this.jobSubmissionInterfaceId = null; + } + } + + /** + * + * @see org.apache.airavata.model.data.movement.SecurityProtocol + */ + public org.apache.airavata.model.data.movement.SecurityProtocol getSecurityProtocol() { + return this.securityProtocol; + } + + /** + * + * @see org.apache.airavata.model.data.movement.SecurityProtocol + */ + public UnicoreJobSubmission setSecurityProtocol(org.apache.airavata.model.data.movement.SecurityProtocol securityProtocol) { + this.securityProtocol = securityProtocol; + return this; + } + + public void unsetSecurityProtocol() { + this.securityProtocol = null; + } + + /** Returns true if field securityProtocol is set (has been assigned a value) and false otherwise */ + public boolean isSetSecurityProtocol() { + return this.securityProtocol != null; + } + + public void setSecurityProtocolIsSet(boolean value) { + if (!value) { + this.securityProtocol = null; + } + } + + public String getUnicoreEndPointURL() { + return this.unicoreEndPointURL; + } + + public UnicoreJobSubmission setUnicoreEndPointURL(String unicoreEndPointURL) { + this.unicoreEndPointURL = unicoreEndPointURL; + return this; + } + + public void unsetUnicoreEndPointURL() { + this.unicoreEndPointURL = null; + } + + /** Returns true if field unicoreEndPointURL is set (has been assigned a value) and false otherwise */ + public boolean isSetUnicoreEndPointURL() { + return this.unicoreEndPointURL != null; + } + + public void setUnicoreEndPointURLIsSet(boolean value) { + if (!value) { + this.unicoreEndPointURL = null; + } + } + + public void setFieldValue(_Fields field, Object value) { + switch (field) { + case JOB_SUBMISSION_INTERFACE_ID: + if (value == null) { + unsetJobSubmissionInterfaceId(); + } else { + setJobSubmissionInterfaceId((String)value); + } + break; + + case SECURITY_PROTOCOL: + if (value == null) { + unsetSecurityProtocol(); + } else { + setSecurityProtocol((org.apache.airavata.model.data.movement.SecurityProtocol)value); + } + break; + + case UNICORE_END_POINT_URL: + if (value == null) { + unsetUnicoreEndPointURL(); + } else { + setUnicoreEndPointURL((String)value); + } + break; + + } + } + + public Object getFieldValue(_Fields field) { + switch (field) { + case JOB_SUBMISSION_INTERFACE_ID: + return getJobSubmissionInterfaceId(); + + case SECURITY_PROTOCOL: + return getSecurityProtocol(); + + case UNICORE_END_POINT_URL: + return getUnicoreEndPointURL(); + + } + 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 JOB_SUBMISSION_INTERFACE_ID: + return isSetJobSubmissionInterfaceId(); + case SECURITY_PROTOCOL: + return isSetSecurityProtocol(); + case UNICORE_END_POINT_URL: + return isSetUnicoreEndPointURL(); + } + throw new IllegalStateException(); + } + + @Override + public boolean equals(Object that) { + if (that == null) + return false; + if (that instanceof UnicoreJobSubmission) + return this.equals((UnicoreJobSubmission)that); + return false; + } + + public boolean equals(UnicoreJobSubmission that) { + if (that == null) + return false; + + boolean this_present_jobSubmissionInterfaceId = true && this.isSetJobSubmissionInterfaceId(); + boolean that_present_jobSubmissionInterfaceId = true && that.isSetJobSubmissionInterfaceId(); + if (this_present_jobSubmissionInterfaceId || that_present_jobSubmissionInterfaceId) { + if (!(this_present_jobSubmissionInterfaceId && that_present_jobSubmissionInterfaceId)) + return false; + if (!this.jobSubmissionInterfaceId.equals(that.jobSubmissionInterfaceId)) + return false; + } + + boolean this_present_securityProtocol = true && this.isSetSecurityProtocol(); + boolean that_present_securityProtocol = true && that.isSetSecurityProtocol(); + if (this_present_securityProtocol || that_present_securityProtocol) { + if (!(this_present_securityProtocol && that_present_securityProtocol)) + return false; + if (!this.securityProtocol.equals(that.securityProtocol)) + return false; + } + + boolean this_present_unicoreEndPointURL = true && this.isSetUnicoreEndPointURL(); + boolean that_present_unicoreEndPointURL = true && that.isSetUnicoreEndPointURL(); + if (this_present_unicoreEndPointURL || that_present_unicoreEndPointURL) { + if (!(this_present_unicoreEndPointURL && that_present_unicoreEndPointURL)) + return false; + if (!this.unicoreEndPointURL.equals(that.unicoreEndPointURL)) + return false; + } + + return true; + } + + @Override + public int hashCode() { + List<Object> list = new ArrayList<Object>(); + + boolean present_jobSubmissionInterfaceId = true && (isSetJobSubmissionInterfaceId()); + list.add(present_jobSubmissionInterfaceId); + if (present_jobSubmissionInterfaceId) + list.add(jobSubmissionInterfaceId); + + boolean present_securityProtocol = true && (isSetSecurityProtocol()); + list.add(present_securityProtocol); + if (present_securityProtocol) + list.add(securityProtocol.getValue()); + + boolean present_unicoreEndPointURL = true && (isSetUnicoreEndPointURL()); + list.add(present_unicoreEndPointURL); + if (present_unicoreEndPointURL) + list.add(unicoreEndPointURL); + + return list.hashCode(); + } + + @Override + public int compareTo(UnicoreJobSubmission other) { + if (!getClass().equals(other.getClass())) { + return getClass().getName().compareTo(other.getClass().getName()); + } + + int lastComparison = 0; + + lastComparison = Boolean.valueOf(isSetJobSubmissionInterfaceId()).compareTo(other.isSetJobSubmissionInterfaceId()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetJobSubmissionInterfaceId()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.jobSubmissionInterfaceId, other.jobSubmissionInterfaceId); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetSecurityProtocol()).compareTo(other.isSetSecurityProtocol()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetSecurityProtocol()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.securityProtocol, other.securityProtocol); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetUnicoreEndPointURL()).compareTo(other.isSetUnicoreEndPointURL()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetUnicoreEndPointURL()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.unicoreEndPointURL, other.unicoreEndPointURL); + 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("UnicoreJobSubmission("); + boolean first = true; + + sb.append("jobSubmissionInterfaceId:"); + if (this.jobSubmissionInterfaceId == null) { + sb.append("null"); + } else { + sb.append(this.jobSubmissionInterfaceId); + } + first = false; + if (!first) sb.append(", "); + sb.append("securityProtocol:"); + if (this.securityProtocol == null) { + sb.append("null"); + } else { + sb.append(this.securityProtocol); + } + first = false; + if (!first) sb.append(", "); + sb.append("unicoreEndPointURL:"); + if (this.unicoreEndPointURL == null) { + sb.append("null"); + } else { + sb.append(this.unicoreEndPointURL); + } + first = false; + sb.append(")"); + return sb.toString(); + } + + public void validate() throws org.apache.thrift.TException { + // check for required fields + if (jobSubmissionInterfaceId == null) { + throw new org.apache.thrift.protocol.TProtocolException("Required field 'jobSubmissionInterfaceId' was not present! Struct: " + toString()); + } + if (securityProtocol == null) { + throw new org.apache.thrift.protocol.TProtocolException("Required field 'securityProtocol' was not present! Struct: " + toString()); + } + if (unicoreEndPointURL == null) { + throw new org.apache.thrift.protocol.TProtocolException("Required field 'unicoreEndPointURL' was not present! 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 UnicoreJobSubmissionStandardSchemeFactory implements SchemeFactory { + public UnicoreJobSubmissionStandardScheme getScheme() { + return new UnicoreJobSubmissionStandardScheme(); + } + } + + private static class UnicoreJobSubmissionStandardScheme extends StandardScheme<UnicoreJobSubmission> { + + public void read(org.apache.thrift.protocol.TProtocol iprot, UnicoreJobSubmission 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: // JOB_SUBMISSION_INTERFACE_ID + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { + struct.jobSubmissionInterfaceId = iprot.readString(); + struct.setJobSubmissionInterfaceIdIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 2: // SECURITY_PROTOCOL + if (schemeField.type == org.apache.thrift.protocol.TType.I32) { + struct.securityProtocol = org.apache.airavata.model.data.movement.SecurityProtocol.findByValue(iprot.readI32()); + struct.setSecurityProtocolIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 3: // UNICORE_END_POINT_URL + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { + struct.unicoreEndPointURL = iprot.readString(); + struct.setUnicoreEndPointURLIsSet(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(); + + // check for required fields of primitive type, which can't be checked in the validate method + struct.validate(); + } + + public void write(org.apache.thrift.protocol.TProtocol oprot, UnicoreJobSubmission struct) throws org.apache.thrift.TException { + struct.validate(); + + oprot.writeStructBegin(STRUCT_DESC); + if (struct.jobSubmissionInterfaceId != null) { + oprot.writeFieldBegin(JOB_SUBMISSION_INTERFACE_ID_FIELD_DESC); + oprot.writeString(struct.jobSubmissionInterfaceId); + oprot.writeFieldEnd(); + } + if (struct.securityProtocol != null) { + oprot.writeFieldBegin(SECURITY_PROTOCOL_FIELD_DESC); + oprot.writeI32(struct.securityProtocol.getValue()); + oprot.writeFieldEnd(); + } + if (struct.unicoreEndPointURL != null) { + oprot.writeFieldBegin(UNICORE_END_POINT_URL_FIELD_DESC); + oprot.writeString(struct.unicoreEndPointURL); + oprot.writeFieldEnd(); + } + oprot.writeFieldStop(); + oprot.writeStructEnd(); + } + + } + + private static class UnicoreJobSubmissionTupleSchemeFactory implements SchemeFactory { + public UnicoreJobSubmissionTupleScheme getScheme() { + return new UnicoreJobSubmissionTupleScheme(); + } + } + + private static class UnicoreJobSubmissionTupleScheme extends TupleScheme<UnicoreJobSubmission> { + + @Override + public void write(org.apache.thrift.protocol.TProtocol prot, UnicoreJobSubmission struct) throws org.apache.thrift.TException { + TTupleProtocol oprot = (TTupleProtocol) prot; + oprot.writeString(struct.jobSubmissionInterfaceId); + oprot.writeI32(struct.securityProtocol.getValue()); + oprot.writeString(struct.unicoreEndPointURL); + } + + @Override + public void read(org.apache.thrift.protocol.TProtocol prot, UnicoreJobSubmission struct) throws org.apache.thrift.TException { + TTupleProtocol iprot = (TTupleProtocol) prot; + struct.jobSubmissionInterfaceId = iprot.readString(); + struct.setJobSubmissionInterfaceIdIsSet(true); + struct.securityProtocol = org.apache.airavata.model.data.movement.SecurityProtocol.findByValue(iprot.readI32()); + struct.setSecurityProtocolIsSet(true); + struct.unicoreEndPointURL = iprot.readString(); + struct.setUnicoreEndPointURLIsSet(true); + } + } + +} +
http://git-wip-us.apache.org/repos/asf/airavata/blob/25da582a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/ComputeResourcePreference.java ---------------------------------------------------------------------- diff --git a/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/ComputeResourcePreference.java b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/ComputeResourcePreference.java new file mode 100644 index 0000000..05cfd18 --- /dev/null +++ b/airavata-api/airavata-api-stubs/src/main/java/org/apache/airavata/model/appcatalog/gatewayprofile/ComputeResourcePreference.java @@ -0,0 +1,1329 @@ +/** + * 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.2) + * + * DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING + * @generated + */ +package org.apache.airavata.model.appcatalog.gatewayprofile; + +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 javax.annotation.Generated; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; + +@SuppressWarnings({"cast", "rawtypes", "serial", "unchecked"}) +/** + * Gateway specific preferences for a Computer Resource + * + * computeResourceId: + * Corelate the preference to a compute resource. + * + * overridebyAiravata: + * If turned true, Airavata will override the preferences of better alternatives exist. + * + * loginUserName: + * If turned true, Airavata will override the preferences of better alternatives exist. + * + * preferredJobSubmissionProtocol: + * For resources with multiple job submission protocols, the gateway can pick a preferred option. + * + * preferredDataMovementProtocol: + * For resources with multiple data movement protocols, the gateway can pick a preferred option. + * + * preferredBatchQueue: + * Gateways can choose a defualt batch queue based on average job dimention, reservations or other metrics. + * + * scratchLocation: + * Path to the local scratch space on a HPC cluster. Typically used to create working directory for job execution. + * + * allocationProjectNumber: + * Typically used on HPC machines to charge computing usage to a account number. For instance, on XSEDE once an + * allocation is approved, an allocation number is assigned. Before passing this number with job submittions, the + * account to be used has to be added to the allocation. + * + * resourceSpecificCredentialStoreToken: + * Resource specific credential store token. If this token is specified, then it is superceeded by the gateway's + * default credential store. + * + */ +@Generated(value = "Autogenerated by Thrift Compiler (0.9.2)", date = "2015-12-2") +public class ComputeResourcePreference implements org.apache.thrift.TBase<ComputeResourcePreference, ComputeResourcePreference._Fields>, java.io.Serializable, Cloneable, Comparable<ComputeResourcePreference> { + private static final org.apache.thrift.protocol.TStruct STRUCT_DESC = new org.apache.thrift.protocol.TStruct("ComputeResourcePreference"); + + private static final org.apache.thrift.protocol.TField COMPUTE_RESOURCE_ID_FIELD_DESC = new org.apache.thrift.protocol.TField("computeResourceId", org.apache.thrift.protocol.TType.STRING, (short)1); + private static final org.apache.thrift.protocol.TField OVERRIDEBY_AIRAVATA_FIELD_DESC = new org.apache.thrift.protocol.TField("overridebyAiravata", org.apache.thrift.protocol.TType.BOOL, (short)2); + private static final org.apache.thrift.protocol.TField LOGIN_USER_NAME_FIELD_DESC = new org.apache.thrift.protocol.TField("loginUserName", org.apache.thrift.protocol.TType.STRING, (short)3); + private static final org.apache.thrift.protocol.TField PREFERRED_JOB_SUBMISSION_PROTOCOL_FIELD_DESC = new org.apache.thrift.protocol.TField("preferredJobSubmissionProtocol", org.apache.thrift.protocol.TType.I32, (short)4); + private static final org.apache.thrift.protocol.TField PREFERRED_DATA_MOVEMENT_PROTOCOL_FIELD_DESC = new org.apache.thrift.protocol.TField("preferredDataMovementProtocol", org.apache.thrift.protocol.TType.I32, (short)5); + private static final org.apache.thrift.protocol.TField PREFERRED_BATCH_QUEUE_FIELD_DESC = new org.apache.thrift.protocol.TField("preferredBatchQueue", org.apache.thrift.protocol.TType.STRING, (short)6); + private static final org.apache.thrift.protocol.TField SCRATCH_LOCATION_FIELD_DESC = new org.apache.thrift.protocol.TField("scratchLocation", org.apache.thrift.protocol.TType.STRING, (short)7); + private static final org.apache.thrift.protocol.TField ALLOCATION_PROJECT_NUMBER_FIELD_DESC = new org.apache.thrift.protocol.TField("allocationProjectNumber", org.apache.thrift.protocol.TType.STRING, (short)8); + private static final org.apache.thrift.protocol.TField RESOURCE_SPECIFIC_CREDENTIAL_STORE_TOKEN_FIELD_DESC = new org.apache.thrift.protocol.TField("resourceSpecificCredentialStoreToken", org.apache.thrift.protocol.TType.STRING, (short)9); + + private static final Map<Class<? extends IScheme>, SchemeFactory> schemes = new HashMap<Class<? extends IScheme>, SchemeFactory>(); + static { + schemes.put(StandardScheme.class, new ComputeResourcePreferenceStandardSchemeFactory()); + schemes.put(TupleScheme.class, new ComputeResourcePreferenceTupleSchemeFactory()); + } + + public String computeResourceId; // required + public boolean overridebyAiravata; // required + public String loginUserName; // optional + /** + * + * @see org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol + */ + public org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol preferredJobSubmissionProtocol; // optional + /** + * + * @see org.apache.airavata.model.data.movement.DataMovementProtocol + */ + public org.apache.airavata.model.data.movement.DataMovementProtocol preferredDataMovementProtocol; // optional + public String preferredBatchQueue; // optional + public String scratchLocation; // optional + public String allocationProjectNumber; // optional + public String resourceSpecificCredentialStoreToken; // optional + + /** The set of fields this struct contains, along with convenience methods for finding and manipulating them. */ + public enum _Fields implements org.apache.thrift.TFieldIdEnum { + COMPUTE_RESOURCE_ID((short)1, "computeResourceId"), + OVERRIDEBY_AIRAVATA((short)2, "overridebyAiravata"), + LOGIN_USER_NAME((short)3, "loginUserName"), + /** + * + * @see org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol + */ + PREFERRED_JOB_SUBMISSION_PROTOCOL((short)4, "preferredJobSubmissionProtocol"), + /** + * + * @see org.apache.airavata.model.data.movement.DataMovementProtocol + */ + PREFERRED_DATA_MOVEMENT_PROTOCOL((short)5, "preferredDataMovementProtocol"), + PREFERRED_BATCH_QUEUE((short)6, "preferredBatchQueue"), + SCRATCH_LOCATION((short)7, "scratchLocation"), + ALLOCATION_PROJECT_NUMBER((short)8, "allocationProjectNumber"), + RESOURCE_SPECIFIC_CREDENTIAL_STORE_TOKEN((short)9, "resourceSpecificCredentialStoreToken"); + + 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: // COMPUTE_RESOURCE_ID + return COMPUTE_RESOURCE_ID; + case 2: // OVERRIDEBY_AIRAVATA + return OVERRIDEBY_AIRAVATA; + case 3: // LOGIN_USER_NAME + return LOGIN_USER_NAME; + case 4: // PREFERRED_JOB_SUBMISSION_PROTOCOL + return PREFERRED_JOB_SUBMISSION_PROTOCOL; + case 5: // PREFERRED_DATA_MOVEMENT_PROTOCOL + return PREFERRED_DATA_MOVEMENT_PROTOCOL; + case 6: // PREFERRED_BATCH_QUEUE + return PREFERRED_BATCH_QUEUE; + case 7: // SCRATCH_LOCATION + return SCRATCH_LOCATION; + case 8: // ALLOCATION_PROJECT_NUMBER + return ALLOCATION_PROJECT_NUMBER; + case 9: // RESOURCE_SPECIFIC_CREDENTIAL_STORE_TOKEN + return RESOURCE_SPECIFIC_CREDENTIAL_STORE_TOKEN; + 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 + private static final int __OVERRIDEBYAIRAVATA_ISSET_ID = 0; + private byte __isset_bitfield = 0; + private static final _Fields optionals[] = {_Fields.LOGIN_USER_NAME,_Fields.PREFERRED_JOB_SUBMISSION_PROTOCOL,_Fields.PREFERRED_DATA_MOVEMENT_PROTOCOL,_Fields.PREFERRED_BATCH_QUEUE,_Fields.SCRATCH_LOCATION,_Fields.ALLOCATION_PROJECT_NUMBER,_Fields.RESOURCE_SPECIFIC_CREDENTIAL_STORE_TOKEN}; + 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.COMPUTE_RESOURCE_ID, new org.apache.thrift.meta_data.FieldMetaData("computeResourceId", org.apache.thrift.TFieldRequirementType.REQUIRED, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + tmpMap.put(_Fields.OVERRIDEBY_AIRAVATA, new org.apache.thrift.meta_data.FieldMetaData("overridebyAiravata", org.apache.thrift.TFieldRequirementType.REQUIRED, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.BOOL))); + tmpMap.put(_Fields.LOGIN_USER_NAME, new org.apache.thrift.meta_data.FieldMetaData("loginUserName", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + tmpMap.put(_Fields.PREFERRED_JOB_SUBMISSION_PROTOCOL, new org.apache.thrift.meta_data.FieldMetaData("preferredJobSubmissionProtocol", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol.class))); + tmpMap.put(_Fields.PREFERRED_DATA_MOVEMENT_PROTOCOL, new org.apache.thrift.meta_data.FieldMetaData("preferredDataMovementProtocol", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.EnumMetaData(org.apache.thrift.protocol.TType.ENUM, org.apache.airavata.model.data.movement.DataMovementProtocol.class))); + tmpMap.put(_Fields.PREFERRED_BATCH_QUEUE, new org.apache.thrift.meta_data.FieldMetaData("preferredBatchQueue", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + tmpMap.put(_Fields.SCRATCH_LOCATION, new org.apache.thrift.meta_data.FieldMetaData("scratchLocation", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + tmpMap.put(_Fields.ALLOCATION_PROJECT_NUMBER, new org.apache.thrift.meta_data.FieldMetaData("allocationProjectNumber", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + tmpMap.put(_Fields.RESOURCE_SPECIFIC_CREDENTIAL_STORE_TOKEN, new org.apache.thrift.meta_data.FieldMetaData("resourceSpecificCredentialStoreToken", org.apache.thrift.TFieldRequirementType.OPTIONAL, + new org.apache.thrift.meta_data.FieldValueMetaData(org.apache.thrift.protocol.TType.STRING))); + metaDataMap = Collections.unmodifiableMap(tmpMap); + org.apache.thrift.meta_data.FieldMetaData.addStructMetaDataMap(ComputeResourcePreference.class, metaDataMap); + } + + public ComputeResourcePreference() { + this.overridebyAiravata = true; + + } + + public ComputeResourcePreference( + String computeResourceId, + boolean overridebyAiravata) + { + this(); + this.computeResourceId = computeResourceId; + this.overridebyAiravata = overridebyAiravata; + setOverridebyAiravataIsSet(true); + } + + /** + * Performs a deep copy on <i>other</i>. + */ + public ComputeResourcePreference(ComputeResourcePreference other) { + __isset_bitfield = other.__isset_bitfield; + if (other.isSetComputeResourceId()) { + this.computeResourceId = other.computeResourceId; + } + this.overridebyAiravata = other.overridebyAiravata; + if (other.isSetLoginUserName()) { + this.loginUserName = other.loginUserName; + } + if (other.isSetPreferredJobSubmissionProtocol()) { + this.preferredJobSubmissionProtocol = other.preferredJobSubmissionProtocol; + } + if (other.isSetPreferredDataMovementProtocol()) { + this.preferredDataMovementProtocol = other.preferredDataMovementProtocol; + } + if (other.isSetPreferredBatchQueue()) { + this.preferredBatchQueue = other.preferredBatchQueue; + } + if (other.isSetScratchLocation()) { + this.scratchLocation = other.scratchLocation; + } + if (other.isSetAllocationProjectNumber()) { + this.allocationProjectNumber = other.allocationProjectNumber; + } + if (other.isSetResourceSpecificCredentialStoreToken()) { + this.resourceSpecificCredentialStoreToken = other.resourceSpecificCredentialStoreToken; + } + } + + public ComputeResourcePreference deepCopy() { + return new ComputeResourcePreference(this); + } + + @Override + public void clear() { + this.computeResourceId = null; + this.overridebyAiravata = true; + + this.loginUserName = null; + this.preferredJobSubmissionProtocol = null; + this.preferredDataMovementProtocol = null; + this.preferredBatchQueue = null; + this.scratchLocation = null; + this.allocationProjectNumber = null; + this.resourceSpecificCredentialStoreToken = null; + } + + public String getComputeResourceId() { + return this.computeResourceId; + } + + public ComputeResourcePreference setComputeResourceId(String computeResourceId) { + this.computeResourceId = computeResourceId; + return this; + } + + public void unsetComputeResourceId() { + this.computeResourceId = null; + } + + /** Returns true if field computeResourceId is set (has been assigned a value) and false otherwise */ + public boolean isSetComputeResourceId() { + return this.computeResourceId != null; + } + + public void setComputeResourceIdIsSet(boolean value) { + if (!value) { + this.computeResourceId = null; + } + } + + public boolean isOverridebyAiravata() { + return this.overridebyAiravata; + } + + public ComputeResourcePreference setOverridebyAiravata(boolean overridebyAiravata) { + this.overridebyAiravata = overridebyAiravata; + setOverridebyAiravataIsSet(true); + return this; + } + + public void unsetOverridebyAiravata() { + __isset_bitfield = EncodingUtils.clearBit(__isset_bitfield, __OVERRIDEBYAIRAVATA_ISSET_ID); + } + + /** Returns true if field overridebyAiravata is set (has been assigned a value) and false otherwise */ + public boolean isSetOverridebyAiravata() { + return EncodingUtils.testBit(__isset_bitfield, __OVERRIDEBYAIRAVATA_ISSET_ID); + } + + public void setOverridebyAiravataIsSet(boolean value) { + __isset_bitfield = EncodingUtils.setBit(__isset_bitfield, __OVERRIDEBYAIRAVATA_ISSET_ID, value); + } + + public String getLoginUserName() { + return this.loginUserName; + } + + public ComputeResourcePreference setLoginUserName(String loginUserName) { + this.loginUserName = loginUserName; + return this; + } + + public void unsetLoginUserName() { + this.loginUserName = null; + } + + /** Returns true if field loginUserName is set (has been assigned a value) and false otherwise */ + public boolean isSetLoginUserName() { + return this.loginUserName != null; + } + + public void setLoginUserNameIsSet(boolean value) { + if (!value) { + this.loginUserName = null; + } + } + + /** + * + * @see org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol + */ + public org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol getPreferredJobSubmissionProtocol() { + return this.preferredJobSubmissionProtocol; + } + + /** + * + * @see org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol + */ + public ComputeResourcePreference setPreferredJobSubmissionProtocol(org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol preferredJobSubmissionProtocol) { + this.preferredJobSubmissionProtocol = preferredJobSubmissionProtocol; + return this; + } + + public void unsetPreferredJobSubmissionProtocol() { + this.preferredJobSubmissionProtocol = null; + } + + /** Returns true if field preferredJobSubmissionProtocol is set (has been assigned a value) and false otherwise */ + public boolean isSetPreferredJobSubmissionProtocol() { + return this.preferredJobSubmissionProtocol != null; + } + + public void setPreferredJobSubmissionProtocolIsSet(boolean value) { + if (!value) { + this.preferredJobSubmissionProtocol = null; + } + } + + /** + * + * @see org.apache.airavata.model.data.movement.DataMovementProtocol + */ + public org.apache.airavata.model.data.movement.DataMovementProtocol getPreferredDataMovementProtocol() { + return this.preferredDataMovementProtocol; + } + + /** + * + * @see org.apache.airavata.model.data.movement.DataMovementProtocol + */ + public ComputeResourcePreference setPreferredDataMovementProtocol(org.apache.airavata.model.data.movement.DataMovementProtocol preferredDataMovementProtocol) { + this.preferredDataMovementProtocol = preferredDataMovementProtocol; + return this; + } + + public void unsetPreferredDataMovementProtocol() { + this.preferredDataMovementProtocol = null; + } + + /** Returns true if field preferredDataMovementProtocol is set (has been assigned a value) and false otherwise */ + public boolean isSetPreferredDataMovementProtocol() { + return this.preferredDataMovementProtocol != null; + } + + public void setPreferredDataMovementProtocolIsSet(boolean value) { + if (!value) { + this.preferredDataMovementProtocol = null; + } + } + + public String getPreferredBatchQueue() { + return this.preferredBatchQueue; + } + + public ComputeResourcePreference setPreferredBatchQueue(String preferredBatchQueue) { + this.preferredBatchQueue = preferredBatchQueue; + return this; + } + + public void unsetPreferredBatchQueue() { + this.preferredBatchQueue = null; + } + + /** Returns true if field preferredBatchQueue is set (has been assigned a value) and false otherwise */ + public boolean isSetPreferredBatchQueue() { + return this.preferredBatchQueue != null; + } + + public void setPreferredBatchQueueIsSet(boolean value) { + if (!value) { + this.preferredBatchQueue = null; + } + } + + public String getScratchLocation() { + return this.scratchLocation; + } + + public ComputeResourcePreference setScratchLocation(String scratchLocation) { + this.scratchLocation = scratchLocation; + return this; + } + + public void unsetScratchLocation() { + this.scratchLocation = null; + } + + /** Returns true if field scratchLocation is set (has been assigned a value) and false otherwise */ + public boolean isSetScratchLocation() { + return this.scratchLocation != null; + } + + public void setScratchLocationIsSet(boolean value) { + if (!value) { + this.scratchLocation = null; + } + } + + public String getAllocationProjectNumber() { + return this.allocationProjectNumber; + } + + public ComputeResourcePreference setAllocationProjectNumber(String allocationProjectNumber) { + this.allocationProjectNumber = allocationProjectNumber; + return this; + } + + public void unsetAllocationProjectNumber() { + this.allocationProjectNumber = null; + } + + /** Returns true if field allocationProjectNumber is set (has been assigned a value) and false otherwise */ + public boolean isSetAllocationProjectNumber() { + return this.allocationProjectNumber != null; + } + + public void setAllocationProjectNumberIsSet(boolean value) { + if (!value) { + this.allocationProjectNumber = null; + } + } + + public String getResourceSpecificCredentialStoreToken() { + return this.resourceSpecificCredentialStoreToken; + } + + public ComputeResourcePreference setResourceSpecificCredentialStoreToken(String resourceSpecificCredentialStoreToken) { + this.resourceSpecificCredentialStoreToken = resourceSpecificCredentialStoreToken; + return this; + } + + public void unsetResourceSpecificCredentialStoreToken() { + this.resourceSpecificCredentialStoreToken = null; + } + + /** Returns true if field resourceSpecificCredentialStoreToken is set (has been assigned a value) and false otherwise */ + public boolean isSetResourceSpecificCredentialStoreToken() { + return this.resourceSpecificCredentialStoreToken != null; + } + + public void setResourceSpecificCredentialStoreTokenIsSet(boolean value) { + if (!value) { + this.resourceSpecificCredentialStoreToken = null; + } + } + + public void setFieldValue(_Fields field, Object value) { + switch (field) { + case COMPUTE_RESOURCE_ID: + if (value == null) { + unsetComputeResourceId(); + } else { + setComputeResourceId((String)value); + } + break; + + case OVERRIDEBY_AIRAVATA: + if (value == null) { + unsetOverridebyAiravata(); + } else { + setOverridebyAiravata((Boolean)value); + } + break; + + case LOGIN_USER_NAME: + if (value == null) { + unsetLoginUserName(); + } else { + setLoginUserName((String)value); + } + break; + + case PREFERRED_JOB_SUBMISSION_PROTOCOL: + if (value == null) { + unsetPreferredJobSubmissionProtocol(); + } else { + setPreferredJobSubmissionProtocol((org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol)value); + } + break; + + case PREFERRED_DATA_MOVEMENT_PROTOCOL: + if (value == null) { + unsetPreferredDataMovementProtocol(); + } else { + setPreferredDataMovementProtocol((org.apache.airavata.model.data.movement.DataMovementProtocol)value); + } + break; + + case PREFERRED_BATCH_QUEUE: + if (value == null) { + unsetPreferredBatchQueue(); + } else { + setPreferredBatchQueue((String)value); + } + break; + + case SCRATCH_LOCATION: + if (value == null) { + unsetScratchLocation(); + } else { + setScratchLocation((String)value); + } + break; + + case ALLOCATION_PROJECT_NUMBER: + if (value == null) { + unsetAllocationProjectNumber(); + } else { + setAllocationProjectNumber((String)value); + } + break; + + case RESOURCE_SPECIFIC_CREDENTIAL_STORE_TOKEN: + if (value == null) { + unsetResourceSpecificCredentialStoreToken(); + } else { + setResourceSpecificCredentialStoreToken((String)value); + } + break; + + } + } + + public Object getFieldValue(_Fields field) { + switch (field) { + case COMPUTE_RESOURCE_ID: + return getComputeResourceId(); + + case OVERRIDEBY_AIRAVATA: + return Boolean.valueOf(isOverridebyAiravata()); + + case LOGIN_USER_NAME: + return getLoginUserName(); + + case PREFERRED_JOB_SUBMISSION_PROTOCOL: + return getPreferredJobSubmissionProtocol(); + + case PREFERRED_DATA_MOVEMENT_PROTOCOL: + return getPreferredDataMovementProtocol(); + + case PREFERRED_BATCH_QUEUE: + return getPreferredBatchQueue(); + + case SCRATCH_LOCATION: + return getScratchLocation(); + + case ALLOCATION_PROJECT_NUMBER: + return getAllocationProjectNumber(); + + case RESOURCE_SPECIFIC_CREDENTIAL_STORE_TOKEN: + return getResourceSpecificCredentialStoreToken(); + + } + 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 COMPUTE_RESOURCE_ID: + return isSetComputeResourceId(); + case OVERRIDEBY_AIRAVATA: + return isSetOverridebyAiravata(); + case LOGIN_USER_NAME: + return isSetLoginUserName(); + case PREFERRED_JOB_SUBMISSION_PROTOCOL: + return isSetPreferredJobSubmissionProtocol(); + case PREFERRED_DATA_MOVEMENT_PROTOCOL: + return isSetPreferredDataMovementProtocol(); + case PREFERRED_BATCH_QUEUE: + return isSetPreferredBatchQueue(); + case SCRATCH_LOCATION: + return isSetScratchLocation(); + case ALLOCATION_PROJECT_NUMBER: + return isSetAllocationProjectNumber(); + case RESOURCE_SPECIFIC_CREDENTIAL_STORE_TOKEN: + return isSetResourceSpecificCredentialStoreToken(); + } + throw new IllegalStateException(); + } + + @Override + public boolean equals(Object that) { + if (that == null) + return false; + if (that instanceof ComputeResourcePreference) + return this.equals((ComputeResourcePreference)that); + return false; + } + + public boolean equals(ComputeResourcePreference that) { + if (that == null) + return false; + + boolean this_present_computeResourceId = true && this.isSetComputeResourceId(); + boolean that_present_computeResourceId = true && that.isSetComputeResourceId(); + if (this_present_computeResourceId || that_present_computeResourceId) { + if (!(this_present_computeResourceId && that_present_computeResourceId)) + return false; + if (!this.computeResourceId.equals(that.computeResourceId)) + return false; + } + + boolean this_present_overridebyAiravata = true; + boolean that_present_overridebyAiravata = true; + if (this_present_overridebyAiravata || that_present_overridebyAiravata) { + if (!(this_present_overridebyAiravata && that_present_overridebyAiravata)) + return false; + if (this.overridebyAiravata != that.overridebyAiravata) + return false; + } + + boolean this_present_loginUserName = true && this.isSetLoginUserName(); + boolean that_present_loginUserName = true && that.isSetLoginUserName(); + if (this_present_loginUserName || that_present_loginUserName) { + if (!(this_present_loginUserName && that_present_loginUserName)) + return false; + if (!this.loginUserName.equals(that.loginUserName)) + return false; + } + + boolean this_present_preferredJobSubmissionProtocol = true && this.isSetPreferredJobSubmissionProtocol(); + boolean that_present_preferredJobSubmissionProtocol = true && that.isSetPreferredJobSubmissionProtocol(); + if (this_present_preferredJobSubmissionProtocol || that_present_preferredJobSubmissionProtocol) { + if (!(this_present_preferredJobSubmissionProtocol && that_present_preferredJobSubmissionProtocol)) + return false; + if (!this.preferredJobSubmissionProtocol.equals(that.preferredJobSubmissionProtocol)) + return false; + } + + boolean this_present_preferredDataMovementProtocol = true && this.isSetPreferredDataMovementProtocol(); + boolean that_present_preferredDataMovementProtocol = true && that.isSetPreferredDataMovementProtocol(); + if (this_present_preferredDataMovementProtocol || that_present_preferredDataMovementProtocol) { + if (!(this_present_preferredDataMovementProtocol && that_present_preferredDataMovementProtocol)) + return false; + if (!this.preferredDataMovementProtocol.equals(that.preferredDataMovementProtocol)) + return false; + } + + boolean this_present_preferredBatchQueue = true && this.isSetPreferredBatchQueue(); + boolean that_present_preferredBatchQueue = true && that.isSetPreferredBatchQueue(); + if (this_present_preferredBatchQueue || that_present_preferredBatchQueue) { + if (!(this_present_preferredBatchQueue && that_present_preferredBatchQueue)) + return false; + if (!this.preferredBatchQueue.equals(that.preferredBatchQueue)) + return false; + } + + boolean this_present_scratchLocation = true && this.isSetScratchLocation(); + boolean that_present_scratchLocation = true && that.isSetScratchLocation(); + if (this_present_scratchLocation || that_present_scratchLocation) { + if (!(this_present_scratchLocation && that_present_scratchLocation)) + return false; + if (!this.scratchLocation.equals(that.scratchLocation)) + return false; + } + + boolean this_present_allocationProjectNumber = true && this.isSetAllocationProjectNumber(); + boolean that_present_allocationProjectNumber = true && that.isSetAllocationProjectNumber(); + if (this_present_allocationProjectNumber || that_present_allocationProjectNumber) { + if (!(this_present_allocationProjectNumber && that_present_allocationProjectNumber)) + return false; + if (!this.allocationProjectNumber.equals(that.allocationProjectNumber)) + return false; + } + + boolean this_present_resourceSpecificCredentialStoreToken = true && this.isSetResourceSpecificCredentialStoreToken(); + boolean that_present_resourceSpecificCredentialStoreToken = true && that.isSetResourceSpecificCredentialStoreToken(); + if (this_present_resourceSpecificCredentialStoreToken || that_present_resourceSpecificCredentialStoreToken) { + if (!(this_present_resourceSpecificCredentialStoreToken && that_present_resourceSpecificCredentialStoreToken)) + return false; + if (!this.resourceSpecificCredentialStoreToken.equals(that.resourceSpecificCredentialStoreToken)) + return false; + } + + return true; + } + + @Override + public int hashCode() { + List<Object> list = new ArrayList<Object>(); + + boolean present_computeResourceId = true && (isSetComputeResourceId()); + list.add(present_computeResourceId); + if (present_computeResourceId) + list.add(computeResourceId); + + boolean present_overridebyAiravata = true; + list.add(present_overridebyAiravata); + if (present_overridebyAiravata) + list.add(overridebyAiravata); + + boolean present_loginUserName = true && (isSetLoginUserName()); + list.add(present_loginUserName); + if (present_loginUserName) + list.add(loginUserName); + + boolean present_preferredJobSubmissionProtocol = true && (isSetPreferredJobSubmissionProtocol()); + list.add(present_preferredJobSubmissionProtocol); + if (present_preferredJobSubmissionProtocol) + list.add(preferredJobSubmissionProtocol.getValue()); + + boolean present_preferredDataMovementProtocol = true && (isSetPreferredDataMovementProtocol()); + list.add(present_preferredDataMovementProtocol); + if (present_preferredDataMovementProtocol) + list.add(preferredDataMovementProtocol.getValue()); + + boolean present_preferredBatchQueue = true && (isSetPreferredBatchQueue()); + list.add(present_preferredBatchQueue); + if (present_preferredBatchQueue) + list.add(preferredBatchQueue); + + boolean present_scratchLocation = true && (isSetScratchLocation()); + list.add(present_scratchLocation); + if (present_scratchLocation) + list.add(scratchLocation); + + boolean present_allocationProjectNumber = true && (isSetAllocationProjectNumber()); + list.add(present_allocationProjectNumber); + if (present_allocationProjectNumber) + list.add(allocationProjectNumber); + + boolean present_resourceSpecificCredentialStoreToken = true && (isSetResourceSpecificCredentialStoreToken()); + list.add(present_resourceSpecificCredentialStoreToken); + if (present_resourceSpecificCredentialStoreToken) + list.add(resourceSpecificCredentialStoreToken); + + return list.hashCode(); + } + + @Override + public int compareTo(ComputeResourcePreference other) { + if (!getClass().equals(other.getClass())) { + return getClass().getName().compareTo(other.getClass().getName()); + } + + int lastComparison = 0; + + lastComparison = Boolean.valueOf(isSetComputeResourceId()).compareTo(other.isSetComputeResourceId()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetComputeResourceId()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.computeResourceId, other.computeResourceId); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetOverridebyAiravata()).compareTo(other.isSetOverridebyAiravata()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetOverridebyAiravata()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.overridebyAiravata, other.overridebyAiravata); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetLoginUserName()).compareTo(other.isSetLoginUserName()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetLoginUserName()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.loginUserName, other.loginUserName); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetPreferredJobSubmissionProtocol()).compareTo(other.isSetPreferredJobSubmissionProtocol()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetPreferredJobSubmissionProtocol()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.preferredJobSubmissionProtocol, other.preferredJobSubmissionProtocol); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetPreferredDataMovementProtocol()).compareTo(other.isSetPreferredDataMovementProtocol()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetPreferredDataMovementProtocol()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.preferredDataMovementProtocol, other.preferredDataMovementProtocol); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetPreferredBatchQueue()).compareTo(other.isSetPreferredBatchQueue()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetPreferredBatchQueue()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.preferredBatchQueue, other.preferredBatchQueue); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetScratchLocation()).compareTo(other.isSetScratchLocation()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetScratchLocation()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.scratchLocation, other.scratchLocation); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetAllocationProjectNumber()).compareTo(other.isSetAllocationProjectNumber()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetAllocationProjectNumber()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.allocationProjectNumber, other.allocationProjectNumber); + if (lastComparison != 0) { + return lastComparison; + } + } + lastComparison = Boolean.valueOf(isSetResourceSpecificCredentialStoreToken()).compareTo(other.isSetResourceSpecificCredentialStoreToken()); + if (lastComparison != 0) { + return lastComparison; + } + if (isSetResourceSpecificCredentialStoreToken()) { + lastComparison = org.apache.thrift.TBaseHelper.compareTo(this.resourceSpecificCredentialStoreToken, other.resourceSpecificCredentialStoreToken); + 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("ComputeResourcePreference("); + boolean first = true; + + sb.append("computeResourceId:"); + if (this.computeResourceId == null) { + sb.append("null"); + } else { + sb.append(this.computeResourceId); + } + first = false; + if (!first) sb.append(", "); + sb.append("overridebyAiravata:"); + sb.append(this.overridebyAiravata); + first = false; + if (isSetLoginUserName()) { + if (!first) sb.append(", "); + sb.append("loginUserName:"); + if (this.loginUserName == null) { + sb.append("null"); + } else { + sb.append(this.loginUserName); + } + first = false; + } + if (isSetPreferredJobSubmissionProtocol()) { + if (!first) sb.append(", "); + sb.append("preferredJobSubmissionProtocol:"); + if (this.preferredJobSubmissionProtocol == null) { + sb.append("null"); + } else { + sb.append(this.preferredJobSubmissionProtocol); + } + first = false; + } + if (isSetPreferredDataMovementProtocol()) { + if (!first) sb.append(", "); + sb.append("preferredDataMovementProtocol:"); + if (this.preferredDataMovementProtocol == null) { + sb.append("null"); + } else { + sb.append(this.preferredDataMovementProtocol); + } + first = false; + } + if (isSetPreferredBatchQueue()) { + if (!first) sb.append(", "); + sb.append("preferredBatchQueue:"); + if (this.preferredBatchQueue == null) { + sb.append("null"); + } else { + sb.append(this.preferredBatchQueue); + } + first = false; + } + if (isSetScratchLocation()) { + if (!first) sb.append(", "); + sb.append("scratchLocation:"); + if (this.scratchLocation == null) { + sb.append("null"); + } else { + sb.append(this.scratchLocation); + } + first = false; + } + if (isSetAllocationProjectNumber()) { + if (!first) sb.append(", "); + sb.append("allocationProjectNumber:"); + if (this.allocationProjectNumber == null) { + sb.append("null"); + } else { + sb.append(this.allocationProjectNumber); + } + first = false; + } + if (isSetResourceSpecificCredentialStoreToken()) { + if (!first) sb.append(", "); + sb.append("resourceSpecificCredentialStoreToken:"); + if (this.resourceSpecificCredentialStoreToken == null) { + sb.append("null"); + } else { + sb.append(this.resourceSpecificCredentialStoreToken); + } + first = false; + } + sb.append(")"); + return sb.toString(); + } + + public void validate() throws org.apache.thrift.TException { + // check for required fields + if (computeResourceId == null) { + throw new org.apache.thrift.protocol.TProtocolException("Required field 'computeResourceId' was not present! Struct: " + toString()); + } + // alas, we cannot check 'overridebyAiravata' because it's a primitive and you chose the non-beans generator. + // 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 { + // it doesn't seem like you should have to do this, but java serialization is wacky, and doesn't call the default constructor. + __isset_bitfield = 0; + 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 ComputeResourcePreferenceStandardSchemeFactory implements SchemeFactory { + public ComputeResourcePreferenceStandardScheme getScheme() { + return new ComputeResourcePreferenceStandardScheme(); + } + } + + private static class ComputeResourcePreferenceStandardScheme extends StandardScheme<ComputeResourcePreference> { + + public void read(org.apache.thrift.protocol.TProtocol iprot, ComputeResourcePreference 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: // COMPUTE_RESOURCE_ID + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { + struct.computeResourceId = iprot.readString(); + struct.setComputeResourceIdIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 2: // OVERRIDEBY_AIRAVATA + if (schemeField.type == org.apache.thrift.protocol.TType.BOOL) { + struct.overridebyAiravata = iprot.readBool(); + struct.setOverridebyAiravataIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 3: // LOGIN_USER_NAME + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { + struct.loginUserName = iprot.readString(); + struct.setLoginUserNameIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 4: // PREFERRED_JOB_SUBMISSION_PROTOCOL + if (schemeField.type == org.apache.thrift.protocol.TType.I32) { + struct.preferredJobSubmissionProtocol = org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol.findByValue(iprot.readI32()); + struct.setPreferredJobSubmissionProtocolIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 5: // PREFERRED_DATA_MOVEMENT_PROTOCOL + if (schemeField.type == org.apache.thrift.protocol.TType.I32) { + struct.preferredDataMovementProtocol = org.apache.airavata.model.data.movement.DataMovementProtocol.findByValue(iprot.readI32()); + struct.setPreferredDataMovementProtocolIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 6: // PREFERRED_BATCH_QUEUE + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { + struct.preferredBatchQueue = iprot.readString(); + struct.setPreferredBatchQueueIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 7: // SCRATCH_LOCATION + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { + struct.scratchLocation = iprot.readString(); + struct.setScratchLocationIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 8: // ALLOCATION_PROJECT_NUMBER + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { + struct.allocationProjectNumber = iprot.readString(); + struct.setAllocationProjectNumberIsSet(true); + } else { + org.apache.thrift.protocol.TProtocolUtil.skip(iprot, schemeField.type); + } + break; + case 9: // RESOURCE_SPECIFIC_CREDENTIAL_STORE_TOKEN + if (schemeField.type == org.apache.thrift.protocol.TType.STRING) { + struct.resourceSpecificCredentialStoreToken = iprot.readString(); + struct.setResourceSpecificCredentialStoreTokenIsSet(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(); + + // check for required fields of primitive type, which can't be checked in the validate method + if (!struct.isSetOverridebyAiravata()) { + throw new org.apache.thrift.protocol.TProtocolException("Required field 'overridebyAiravata' was not found in serialized data! Struct: " + toString()); + } + struct.validate(); + } + + public void write(org.apache.thrift.protocol.TProtocol oprot, ComputeResourcePreference struct) throws org.apache.thrift.TException { + struct.validate(); + + oprot.writeStructBegin(STRUCT_DESC); + if (struct.computeResourceId != null) { + oprot.writeFieldBegin(COMPUTE_RESOURCE_ID_FIELD_DESC); + oprot.writeString(struct.computeResourceId); + oprot.writeFieldEnd(); + } + oprot.writeFieldBegin(OVERRIDEBY_AIRAVATA_FIELD_DESC); + oprot.writeBool(struct.overridebyAiravata); + oprot.writeFieldEnd(); + if (struct.loginUserName != null) { + if (struct.isSetLoginUserName()) { + oprot.writeFieldBegin(LOGIN_USER_NAME_FIELD_DESC); + oprot.writeString(struct.loginUserName); + oprot.writeFieldEnd(); + } + } + if (struct.preferredJobSubmissionProtocol != null) { + if (struct.isSetPreferredJobSubmissionProtocol()) { + oprot.writeFieldBegin(PREFERRED_JOB_SUBMISSION_PROTOCOL_FIELD_DESC); + oprot.writeI32(struct.preferredJobSubmissionProtocol.getValue()); + oprot.writeFieldEnd(); + } + } + if (struct.preferredDataMovementProtocol != null) { + if (struct.isSetPreferredDataMovementProtocol()) { + oprot.writeFieldBegin(PREFERRED_DATA_MOVEMENT_PROTOCOL_FIELD_DESC); + oprot.writeI32(struct.preferredDataMovementProtocol.getValue()); + oprot.writeFieldEnd(); + } + } + if (struct.preferredBatchQueue != null) { + if (struct.isSetPreferredBatchQueue()) { + oprot.writeFieldBegin(PREFERRED_BATCH_QUEUE_FIELD_DESC); + oprot.writeString(struct.preferredBatchQueue); + oprot.writeFieldEnd(); + } + } + if (struct.scratchLocation != null) { + if (struct.isSetScratchLocation()) { + oprot.writeFieldBegin(SCRATCH_LOCATION_FIELD_DESC); + oprot.writeString(struct.scratchLocation); + oprot.writeFieldEnd(); + } + } + if (struct.allocationProjectNumber != null) { + if (struct.isSetAllocationProjectNumber()) { + oprot.writeFieldBegin(ALLOCATION_PROJECT_NUMBER_FIELD_DESC); + oprot.writeString(struct.allocationProjectNumber); + oprot.writeFieldEnd(); + } + } + if (struct.resourceSpecificCredentialStoreToken != null) { + if (struct.isSetResourceSpecificCredentialStoreToken()) { + oprot.writeFieldBegin(RESOURCE_SPECIFIC_CREDENTIAL_STORE_TOKEN_FIELD_DESC); + oprot.writeString(struct.resourceSpecificCredentialStoreToken); + oprot.writeFieldEnd(); + } + } + oprot.writeFieldStop(); + oprot.writeStructEnd(); + } + + } + + private static class ComputeResourcePreferenceTupleSchemeFactory implements SchemeFactory { + public ComputeResourcePreferenceTupleScheme getScheme() { + return new ComputeResourcePreferenceTupleScheme(); + } + } + + private static class ComputeResourcePreferenceTupleScheme extends TupleScheme<ComputeResourcePreference> { + + @Override + public void write(org.apache.thrift.protocol.TProtocol prot, ComputeResourcePreference struct) throws org.apache.thrift.TException { + TTupleProtocol oprot = (TTupleProtocol) prot; + oprot.writeString(struct.computeResourceId); + oprot.writeBool(struct.overridebyAiravata); + BitSet optionals = new BitSet(); + if (struct.isSetLoginUserName()) { + optionals.set(0); + } + if (struct.isSetPreferredJobSubmissionProtocol()) { + optionals.set(1); + } + if (struct.isSetPreferredDataMovementProtocol()) { + optionals.set(2); + } + if (struct.isSetPreferredBatchQueue()) { + optionals.set(3); + } + if (struct.isSetScratchLocation()) { + optionals.set(4); + } + if (struct.isSetAllocationProjectNumber()) { + optionals.set(5); + } + if (struct.isSetResourceSpecificCredentialStoreToken()) { + optionals.set(6); + } + oprot.writeBitSet(optionals, 7); + if (struct.isSetLoginUserName()) { + oprot.writeString(struct.loginUserName); + } + if (struct.isSetPreferredJobSubmissionProtocol()) { + oprot.writeI32(struct.preferredJobSubmissionProtocol.getValue()); + } + if (struct.isSetPreferredDataMovementProtocol()) { + oprot.writeI32(struct.preferredDataMovementProtocol.getValue()); + } + if (struct.isSetPreferredBatchQueue()) { + oprot.writeString(struct.preferredBatchQueue); + } + if (struct.isSetScratchLocation()) { + oprot.writeString(struct.scratchLocation); + } + if (struct.isSetAllocationProjectNumber()) { + oprot.writeString(struct.allocationProjectNumber); + } + if (struct.isSetResourceSpecificCredentialStoreToken()) { + oprot.writeString(struct.resourceSpecificCredentialStoreToken); + } + } + + @Override + public void read(org.apache.thrift.protocol.TProtocol prot, ComputeResourcePreference struct) throws org.apache.thrift.TException { + TTupleProtocol iprot = (TTupleProtocol) prot; + struct.computeResourceId = iprot.readString(); + struct.setComputeResourceIdIsSet(true); + struct.overridebyAiravata = iprot.readBool(); + struct.setOverridebyAiravataIsSet(true); + BitSet incoming = iprot.readBitSet(7); + if (incoming.get(0)) { + struct.loginUserName = iprot.readString(); + struct.setLoginUserNameIsSet(true); + } + if (incoming.get(1)) { + struct.preferredJobSubmissionProtocol = org.apache.airavata.model.appcatalog.computeresource.JobSubmissionProtocol.findByValue(iprot.readI32()); + struct.setPreferredJobSubmissionProtocolIsSet(true); + } + if (incoming.get(2)) { + struct.preferredDataMovementProtocol = org.apache.airavata.model.data.movement.DataMovementProtocol.findByValue(iprot.readI32()); + struct.setPreferredDataMovementProtocolIsSet(true); + } + if (incoming.get(3)) { + struct.preferredBatchQueue = iprot.readString(); + struct.setPreferredBatchQueueIsSet(true); + } + if (incoming.get(4)) { + struct.scratchLocation = iprot.readString(); + struct.setScratchLocationIsSet(true); + } + if (incoming.get(5)) { + struct.allocationProjectNumber = iprot.readString(); + struct.setAllocationProjectNumberIsSet(true); + } + if (incoming.get(6)) { + struct.resourceSpecificCredentialStoreToken = iprot.readString(); + struct.setResourceSpecificCredentialStoreTokenIsSet(true); + } + } + } + +} +
