You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by ma...@apache.org on 2017/09/05 20:44:45 UTC
[43/52] [partial] airavata git commit: AIRAVATA-2505 Upgrade Airavata
to Thrift 0.10.0
http://git-wip-us.apache.org/repos/asf/airavata/blob/8e775660/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/sharing/constants.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/sharing/constants.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/sharing/constants.py
index 4a6492b..eb0d35a 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/sharing/constants.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/sharing/constants.py
@@ -1,11 +1,12 @@
#
-# Autogenerated by Thrift Compiler (0.9.3)
+# Autogenerated by Thrift Compiler (0.10.0)
#
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
#
# options string: py
#
-from thrift.Thrift import TType, TMessageType, TException, TApplicationException
-from ttypes import *
-
+from thrift.Thrift import TType, TMessageType, TFrozenDict, TException, TApplicationException
+from thrift.protocol.TProtocol import TProtocolException
+import sys
+from .ttypes import *
http://git-wip-us.apache.org/repos/asf/airavata/blob/8e775660/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/sharing/ttypes.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/sharing/ttypes.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/sharing/ttypes.py
index 56bdc1f..3a24bad 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/sharing/ttypes.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/sharing/ttypes.py
@@ -1,20 +1,14 @@
#
-# Autogenerated by Thrift Compiler (0.9.3)
+# Autogenerated by Thrift Compiler (0.10.0)
#
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
#
# options string: py
#
-from thrift.Thrift import TType, TMessageType, TException, TApplicationException
+from thrift.Thrift import TType, TMessageType, TFrozenDict, TException, TApplicationException
+from thrift.protocol.TProtocol import TProtocolException
+import sys
import apache.airavata.model.sharing.ttypes
-
from thrift.transport import TTransport
-from thrift.protocol import TBinaryProtocol, TProtocol
-try:
- from thrift.protocol import fastbinary
-except:
- fastbinary = None
-
-
http://git-wip-us.apache.org/repos/asf/airavata/blob/8e775660/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/ttypes.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/ttypes.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/ttypes.py
index e829011..2a5de1c 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/ttypes.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/api/ttypes.py
@@ -1,12 +1,14 @@
#
-# Autogenerated by Thrift Compiler (0.9.3)
+# Autogenerated by Thrift Compiler (0.10.0)
#
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
#
# options string: py
#
-from thrift.Thrift import TType, TMessageType, TException, TApplicationException
+from thrift.Thrift import TType, TMessageType, TFrozenDict, TException, TApplicationException
+from thrift.protocol.TProtocol import TProtocolException
+import sys
import apache.airavata.api.error.ttypes
import apache.airavata.model.security.ttypes
import apache.airavata.model.ttypes
@@ -29,12 +31,4 @@ import apache.airavata.model.data.replica.ttypes
import apache.airavata.model.group.ttypes
import apache.airavata.model.user.ttypes
-
from thrift.transport import TTransport
-from thrift.protocol import TBinaryProtocol, TProtocol
-try:
- from thrift.protocol import fastbinary
-except:
- fastbinary = None
-
-
http://git-wip-us.apache.org/repos/asf/airavata/blob/8e775660/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appdeployment/constants.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appdeployment/constants.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appdeployment/constants.py
index 4a6492b..eb0d35a 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appdeployment/constants.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appdeployment/constants.py
@@ -1,11 +1,12 @@
#
-# Autogenerated by Thrift Compiler (0.9.3)
+# Autogenerated by Thrift Compiler (0.10.0)
#
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
#
# options string: py
#
-from thrift.Thrift import TType, TMessageType, TException, TApplicationException
-from ttypes import *
-
+from thrift.Thrift import TType, TMessageType, TFrozenDict, TException, TApplicationException
+from thrift.protocol.TProtocol import TProtocolException
+import sys
+from .ttypes import *
http://git-wip-us.apache.org/repos/asf/airavata/blob/8e775660/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appdeployment/ttypes.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appdeployment/ttypes.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appdeployment/ttypes.py
index fd2e305..048f8f1 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appdeployment/ttypes.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appdeployment/ttypes.py
@@ -1,699 +1,651 @@
#
-# Autogenerated by Thrift Compiler (0.9.3)
+# Autogenerated by Thrift Compiler (0.10.0)
#
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
#
# options string: py
#
-from thrift.Thrift import TType, TMessageType, TException, TApplicationException
+from thrift.Thrift import TType, TMessageType, TFrozenDict, TException, TApplicationException
+from thrift.protocol.TProtocol import TProtocolException
+import sys
import apache.airavata.model.commons.ttypes
import apache.airavata.model.appcatalog.parallelism.ttypes
-
from thrift.transport import TTransport
-from thrift.protocol import TBinaryProtocol, TProtocol
-try:
- from thrift.protocol import fastbinary
-except:
- fastbinary = None
-
-
-
-class SetEnvPaths:
- """
- Key Value pairs to be used to set environments
-
- name:
- Name of the environment variable such as PATH, LD_LIBRARY_PATH, NETCDF_HOME.
-
- value:
- Value of the environment variable to set
-
- envPathOrder:
- The order of the setting of the env variables when there are multiple env variables
-
- Attributes:
- - name
- - value
- - envPathOrder
- """
-
- thrift_spec = (
- None, # 0
- (1, TType.STRING, 'name', None, None, ), # 1
- (2, TType.STRING, 'value', None, None, ), # 2
- (3, TType.I32, 'envPathOrder', None, None, ), # 3
- )
-
- def __init__(self, name=None, value=None, envPathOrder=None,):
- self.name = name
- self.value = value
- self.envPathOrder = envPathOrder
-
- 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.name = iprot.readString()
- else:
- iprot.skip(ftype)
- elif fid == 2:
- if ftype == TType.STRING:
- self.value = iprot.readString()
- else:
- iprot.skip(ftype)
- elif fid == 3:
- if ftype == TType.I32:
- self.envPathOrder = 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('SetEnvPaths')
- if self.name is not None:
- oprot.writeFieldBegin('name', TType.STRING, 1)
- oprot.writeString(self.name)
- oprot.writeFieldEnd()
- if self.value is not None:
- oprot.writeFieldBegin('value', TType.STRING, 2)
- oprot.writeString(self.value)
- oprot.writeFieldEnd()
- if self.envPathOrder is not None:
- oprot.writeFieldBegin('envPathOrder', TType.I32, 3)
- oprot.writeI32(self.envPathOrder)
- oprot.writeFieldEnd()
- oprot.writeFieldStop()
- oprot.writeStructEnd()
-
- def validate(self):
- if self.name is None:
- raise TProtocol.TProtocolException(message='Required field name is unset!')
- if self.value is None:
- raise TProtocol.TProtocolException(message='Required field value is unset!')
- return
-
-
- def __hash__(self):
- value = 17
- value = (value * 31) ^ hash(self.name)
- value = (value * 31) ^ hash(self.value)
- value = (value * 31) ^ hash(self.envPathOrder)
- return value
-
- 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 CommandObject:
- """
- Job commands to be used in Pre Job, Post Job and Module Load Commands
-
- command:
- The actual command in string format
-
- commandOrder:
- Order of the command in the multiple command situation
-
- Attributes:
- - command
- - commandOrder
- """
-
- thrift_spec = (
- None, # 0
- (1, TType.STRING, 'command', None, None, ), # 1
- (2, TType.I32, 'commandOrder', None, None, ), # 2
- )
-
- def __init__(self, command=None, commandOrder=None,):
- self.command = command
- self.commandOrder = commandOrder
-
- 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.command = iprot.readString()
- else:
- iprot.skip(ftype)
- elif fid == 2:
- if ftype == TType.I32:
- self.commandOrder = 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('CommandObject')
- if self.command is not None:
- oprot.writeFieldBegin('command', TType.STRING, 1)
- oprot.writeString(self.command)
- oprot.writeFieldEnd()
- if self.commandOrder is not None:
- oprot.writeFieldBegin('commandOrder', TType.I32, 2)
- oprot.writeI32(self.commandOrder)
- oprot.writeFieldEnd()
- oprot.writeFieldStop()
- oprot.writeStructEnd()
-
- def validate(self):
- if self.command is None:
- raise TProtocol.TProtocolException(message='Required field command is unset!')
- return
-
-
- def __hash__(self):
- value = 17
- value = (value * 31) ^ hash(self.command)
- value = (value * 31) ^ hash(self.commandOrder)
- return value
-
- 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 ApplicationModule:
- """
- Application Module Information. A module has to be registered before registering a deployment.
-
- appModuleId: Airavata Internal Unique Job ID. This is set by the registry.
-
- appModuleName:
- Name of the application module.
-
- appModuleVersion:
- Version of the application.
-
- appModuleDescription:
- Descriprion of the Module
-
-
- Attributes:
- - appModuleId
- - appModuleName
- - appModuleVersion
- - appModuleDescription
- """
-
- thrift_spec = (
- None, # 0
- (1, TType.STRING, 'appModuleId', None, "DO_NOT_SET_AT_CLIENTS", ), # 1
- (2, TType.STRING, 'appModuleName', None, None, ), # 2
- (3, TType.STRING, 'appModuleVersion', None, None, ), # 3
- (4, TType.STRING, 'appModuleDescription', None, None, ), # 4
- )
-
- def __init__(self, appModuleId=thrift_spec[1][4], appModuleName=None, appModuleVersion=None, appModuleDescription=None,):
- self.appModuleId = appModuleId
- self.appModuleName = appModuleName
- self.appModuleVersion = appModuleVersion
- self.appModuleDescription = appModuleDescription
-
- 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.appModuleId = iprot.readString()
- else:
- iprot.skip(ftype)
- elif fid == 2:
- if ftype == TType.STRING:
- self.appModuleName = iprot.readString()
- else:
- iprot.skip(ftype)
- elif fid == 3:
- if ftype == TType.STRING:
- self.appModuleVersion = iprot.readString()
- else:
- iprot.skip(ftype)
- elif fid == 4:
- if ftype == TType.STRING:
- self.appModuleDescription = 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('ApplicationModule')
- if self.appModuleId is not None:
- oprot.writeFieldBegin('appModuleId', TType.STRING, 1)
- oprot.writeString(self.appModuleId)
- oprot.writeFieldEnd()
- if self.appModuleName is not None:
- oprot.writeFieldBegin('appModuleName', TType.STRING, 2)
- oprot.writeString(self.appModuleName)
- oprot.writeFieldEnd()
- if self.appModuleVersion is not None:
- oprot.writeFieldBegin('appModuleVersion', TType.STRING, 3)
- oprot.writeString(self.appModuleVersion)
- oprot.writeFieldEnd()
- if self.appModuleDescription is not None:
- oprot.writeFieldBegin('appModuleDescription', TType.STRING, 4)
- oprot.writeString(self.appModuleDescription)
- oprot.writeFieldEnd()
- oprot.writeFieldStop()
- oprot.writeStructEnd()
-
- def validate(self):
- if self.appModuleId is None:
- raise TProtocol.TProtocolException(message='Required field appModuleId is unset!')
- if self.appModuleName is None:
- raise TProtocol.TProtocolException(message='Required field appModuleName is unset!')
- return
-
-
- def __hash__(self):
- value = 17
- value = (value * 31) ^ hash(self.appModuleId)
- value = (value * 31) ^ hash(self.appModuleName)
- value = (value * 31) ^ hash(self.appModuleVersion)
- value = (value * 31) ^ hash(self.appModuleDescription)
- return value
-
- 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 ApplicationDeploymentDescription:
- """
- Application Deployment Description
-
- appDeploymentId: Airavata Internal Unique Job ID. This is set by the registry.
-
- appModuleName:
- Application Module Name. This has to be precise describing the binary.
-
- computeHostId:
- This ID maps application deployment to a particular resource previously described within Airavata.
- Example: Stampede is first registered and refered when registering WRF.
-
- moduleLoadCmd:
- Command string to load modules. This will be placed in the job submisison
- Ex: module load amber
-
- libPrependPaths:
- prepend to a path variable the value
-
- libAppendPaths:
- append to a path variable the value
-
- setEnvironment:
- assigns to the environment variable "NAME" the value
-
-
- Attributes:
- - appDeploymentId
- - appModuleId
- - computeHostId
- - executablePath
- - parallelism
- - appDeploymentDescription
- - moduleLoadCmds
- - libPrependPaths
- - libAppendPaths
- - setEnvironment
- - preJobCommands
- - postJobCommands
- - defaultQueueName
- - defaultNodeCount
- - defaultCPUCount
- - defaultWalltime
- - editableByUser
- """
-
- thrift_spec = (
- None, # 0
- (1, TType.STRING, 'appDeploymentId', None, "DO_NOT_SET_AT_CLIENTS", ), # 1
- (2, TType.STRING, 'appModuleId', None, None, ), # 2
- (3, TType.STRING, 'computeHostId', None, None, ), # 3
- (4, TType.STRING, 'executablePath', None, None, ), # 4
- (5, TType.I32, 'parallelism', None, 0, ), # 5
- (6, TType.STRING, 'appDeploymentDescription', None, None, ), # 6
- (7, TType.LIST, 'moduleLoadCmds', (TType.STRUCT,(CommandObject, CommandObject.thrift_spec)), None, ), # 7
- (8, TType.LIST, 'libPrependPaths', (TType.STRUCT,(SetEnvPaths, SetEnvPaths.thrift_spec)), None, ), # 8
- (9, TType.LIST, 'libAppendPaths', (TType.STRUCT,(SetEnvPaths, SetEnvPaths.thrift_spec)), None, ), # 9
- (10, TType.LIST, 'setEnvironment', (TType.STRUCT,(SetEnvPaths, SetEnvPaths.thrift_spec)), None, ), # 10
- (11, TType.LIST, 'preJobCommands', (TType.STRUCT,(CommandObject, CommandObject.thrift_spec)), None, ), # 11
- (12, TType.LIST, 'postJobCommands', (TType.STRUCT,(CommandObject, CommandObject.thrift_spec)), None, ), # 12
- (13, TType.STRING, 'defaultQueueName', None, None, ), # 13
- (14, TType.I32, 'defaultNodeCount', None, None, ), # 14
- (15, TType.I32, 'defaultCPUCount', None, None, ), # 15
- (16, TType.I32, 'defaultWalltime', None, None, ), # 16
- (17, TType.BOOL, 'editableByUser', None, None, ), # 17
- )
-
- def __init__(self, appDeploymentId=thrift_spec[1][4], appModuleId=None, computeHostId=None, executablePath=None, parallelism=thrift_spec[5][4], appDeploymentDescription=None, moduleLoadCmds=None, libPrependPaths=None, libAppendPaths=None, setEnvironment=None, preJobCommands=None, postJobCommands=None, defaultQueueName=None, defaultNodeCount=None, defaultCPUCount=None, defaultWalltime=None, editableByUser=None,):
- self.appDeploymentId = appDeploymentId
- self.appModuleId = appModuleId
- self.computeHostId = computeHostId
- self.executablePath = executablePath
- self.parallelism = parallelism
- self.appDeploymentDescription = appDeploymentDescription
- self.moduleLoadCmds = moduleLoadCmds
- self.libPrependPaths = libPrependPaths
- self.libAppendPaths = libAppendPaths
- self.setEnvironment = setEnvironment
- self.preJobCommands = preJobCommands
- self.postJobCommands = postJobCommands
- self.defaultQueueName = defaultQueueName
- self.defaultNodeCount = defaultNodeCount
- self.defaultCPUCount = defaultCPUCount
- self.defaultWalltime = defaultWalltime
- self.editableByUser = editableByUser
-
- 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.appDeploymentId = iprot.readString()
- else:
- iprot.skip(ftype)
- elif fid == 2:
- if ftype == TType.STRING:
- self.appModuleId = iprot.readString()
- else:
- iprot.skip(ftype)
- elif fid == 3:
- if ftype == TType.STRING:
- self.computeHostId = iprot.readString()
- else:
- iprot.skip(ftype)
- elif fid == 4:
- if ftype == TType.STRING:
- self.executablePath = iprot.readString()
- else:
- iprot.skip(ftype)
- elif fid == 5:
- if ftype == TType.I32:
- self.parallelism = iprot.readI32()
- else:
- iprot.skip(ftype)
- elif fid == 6:
- if ftype == TType.STRING:
- self.appDeploymentDescription = iprot.readString()
- else:
- iprot.skip(ftype)
- elif fid == 7:
- if ftype == TType.LIST:
- self.moduleLoadCmds = []
- (_etype3, _size0) = iprot.readListBegin()
- for _i4 in xrange(_size0):
- _elem5 = CommandObject()
- _elem5.read(iprot)
- self.moduleLoadCmds.append(_elem5)
- iprot.readListEnd()
- else:
- iprot.skip(ftype)
- elif fid == 8:
- if ftype == TType.LIST:
- self.libPrependPaths = []
- (_etype9, _size6) = iprot.readListBegin()
- for _i10 in xrange(_size6):
- _elem11 = SetEnvPaths()
- _elem11.read(iprot)
- self.libPrependPaths.append(_elem11)
- iprot.readListEnd()
- else:
- iprot.skip(ftype)
- elif fid == 9:
- if ftype == TType.LIST:
- self.libAppendPaths = []
- (_etype15, _size12) = iprot.readListBegin()
- for _i16 in xrange(_size12):
- _elem17 = SetEnvPaths()
- _elem17.read(iprot)
- self.libAppendPaths.append(_elem17)
- iprot.readListEnd()
- else:
- iprot.skip(ftype)
- elif fid == 10:
- if ftype == TType.LIST:
- self.setEnvironment = []
- (_etype21, _size18) = iprot.readListBegin()
- for _i22 in xrange(_size18):
- _elem23 = SetEnvPaths()
- _elem23.read(iprot)
- self.setEnvironment.append(_elem23)
- iprot.readListEnd()
- else:
- iprot.skip(ftype)
- elif fid == 11:
- if ftype == TType.LIST:
- self.preJobCommands = []
- (_etype27, _size24) = iprot.readListBegin()
- for _i28 in xrange(_size24):
- _elem29 = CommandObject()
- _elem29.read(iprot)
- self.preJobCommands.append(_elem29)
- iprot.readListEnd()
- else:
- iprot.skip(ftype)
- elif fid == 12:
- if ftype == TType.LIST:
- self.postJobCommands = []
- (_etype33, _size30) = iprot.readListBegin()
- for _i34 in xrange(_size30):
- _elem35 = CommandObject()
- _elem35.read(iprot)
- self.postJobCommands.append(_elem35)
- iprot.readListEnd()
- else:
- iprot.skip(ftype)
- elif fid == 13:
- if ftype == TType.STRING:
- self.defaultQueueName = iprot.readString()
- else:
- iprot.skip(ftype)
- elif fid == 14:
- if ftype == TType.I32:
- self.defaultNodeCount = iprot.readI32()
- else:
- iprot.skip(ftype)
- elif fid == 15:
- if ftype == TType.I32:
- self.defaultCPUCount = iprot.readI32()
- else:
- iprot.skip(ftype)
- elif fid == 16:
- if ftype == TType.I32:
- self.defaultWalltime = iprot.readI32()
- else:
- iprot.skip(ftype)
- elif fid == 17:
- if ftype == TType.BOOL:
- self.editableByUser = iprot.readBool()
- 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('ApplicationDeploymentDescription')
- if self.appDeploymentId is not None:
- oprot.writeFieldBegin('appDeploymentId', TType.STRING, 1)
- oprot.writeString(self.appDeploymentId)
- oprot.writeFieldEnd()
- if self.appModuleId is not None:
- oprot.writeFieldBegin('appModuleId', TType.STRING, 2)
- oprot.writeString(self.appModuleId)
- oprot.writeFieldEnd()
- if self.computeHostId is not None:
- oprot.writeFieldBegin('computeHostId', TType.STRING, 3)
- oprot.writeString(self.computeHostId)
- oprot.writeFieldEnd()
- if self.executablePath is not None:
- oprot.writeFieldBegin('executablePath', TType.STRING, 4)
- oprot.writeString(self.executablePath)
- oprot.writeFieldEnd()
- if self.parallelism is not None:
- oprot.writeFieldBegin('parallelism', TType.I32, 5)
- oprot.writeI32(self.parallelism)
- oprot.writeFieldEnd()
- if self.appDeploymentDescription is not None:
- oprot.writeFieldBegin('appDeploymentDescription', TType.STRING, 6)
- oprot.writeString(self.appDeploymentDescription)
- oprot.writeFieldEnd()
- if self.moduleLoadCmds is not None:
- oprot.writeFieldBegin('moduleLoadCmds', TType.LIST, 7)
- oprot.writeListBegin(TType.STRUCT, len(self.moduleLoadCmds))
- for iter36 in self.moduleLoadCmds:
- iter36.write(oprot)
- oprot.writeListEnd()
- oprot.writeFieldEnd()
- if self.libPrependPaths is not None:
- oprot.writeFieldBegin('libPrependPaths', TType.LIST, 8)
- oprot.writeListBegin(TType.STRUCT, len(self.libPrependPaths))
- for iter37 in self.libPrependPaths:
- iter37.write(oprot)
- oprot.writeListEnd()
- oprot.writeFieldEnd()
- if self.libAppendPaths is not None:
- oprot.writeFieldBegin('libAppendPaths', TType.LIST, 9)
- oprot.writeListBegin(TType.STRUCT, len(self.libAppendPaths))
- for iter38 in self.libAppendPaths:
- iter38.write(oprot)
- oprot.writeListEnd()
- oprot.writeFieldEnd()
- if self.setEnvironment is not None:
- oprot.writeFieldBegin('setEnvironment', TType.LIST, 10)
- oprot.writeListBegin(TType.STRUCT, len(self.setEnvironment))
- for iter39 in self.setEnvironment:
- iter39.write(oprot)
- oprot.writeListEnd()
- oprot.writeFieldEnd()
- if self.preJobCommands is not None:
- oprot.writeFieldBegin('preJobCommands', TType.LIST, 11)
- oprot.writeListBegin(TType.STRUCT, len(self.preJobCommands))
- for iter40 in self.preJobCommands:
- iter40.write(oprot)
- oprot.writeListEnd()
- oprot.writeFieldEnd()
- if self.postJobCommands is not None:
- oprot.writeFieldBegin('postJobCommands', TType.LIST, 12)
- oprot.writeListBegin(TType.STRUCT, len(self.postJobCommands))
- for iter41 in self.postJobCommands:
- iter41.write(oprot)
- oprot.writeListEnd()
- oprot.writeFieldEnd()
- if self.defaultQueueName is not None:
- oprot.writeFieldBegin('defaultQueueName', TType.STRING, 13)
- oprot.writeString(self.defaultQueueName)
- oprot.writeFieldEnd()
- if self.defaultNodeCount is not None:
- oprot.writeFieldBegin('defaultNodeCount', TType.I32, 14)
- oprot.writeI32(self.defaultNodeCount)
- oprot.writeFieldEnd()
- if self.defaultCPUCount is not None:
- oprot.writeFieldBegin('defaultCPUCount', TType.I32, 15)
- oprot.writeI32(self.defaultCPUCount)
- oprot.writeFieldEnd()
- if self.defaultWalltime is not None:
- oprot.writeFieldBegin('defaultWalltime', TType.I32, 16)
- oprot.writeI32(self.defaultWalltime)
- oprot.writeFieldEnd()
- if self.editableByUser is not None:
- oprot.writeFieldBegin('editableByUser', TType.BOOL, 17)
- oprot.writeBool(self.editableByUser)
- oprot.writeFieldEnd()
- oprot.writeFieldStop()
- oprot.writeStructEnd()
-
- def validate(self):
- if self.appDeploymentId is None:
- raise TProtocol.TProtocolException(message='Required field appDeploymentId is unset!')
- if self.appModuleId is None:
- raise TProtocol.TProtocolException(message='Required field appModuleId is unset!')
- if self.computeHostId is None:
- raise TProtocol.TProtocolException(message='Required field computeHostId is unset!')
- if self.executablePath is None:
- raise TProtocol.TProtocolException(message='Required field executablePath is unset!')
- if self.parallelism is None:
- raise TProtocol.TProtocolException(message='Required field parallelism is unset!')
- return
-
-
- def __hash__(self):
- value = 17
- value = (value * 31) ^ hash(self.appDeploymentId)
- value = (value * 31) ^ hash(self.appModuleId)
- value = (value * 31) ^ hash(self.computeHostId)
- value = (value * 31) ^ hash(self.executablePath)
- value = (value * 31) ^ hash(self.parallelism)
- value = (value * 31) ^ hash(self.appDeploymentDescription)
- value = (value * 31) ^ hash(self.moduleLoadCmds)
- value = (value * 31) ^ hash(self.libPrependPaths)
- value = (value * 31) ^ hash(self.libAppendPaths)
- value = (value * 31) ^ hash(self.setEnvironment)
- value = (value * 31) ^ hash(self.preJobCommands)
- value = (value * 31) ^ hash(self.postJobCommands)
- value = (value * 31) ^ hash(self.defaultQueueName)
- value = (value * 31) ^ hash(self.defaultNodeCount)
- value = (value * 31) ^ hash(self.defaultCPUCount)
- value = (value * 31) ^ hash(self.defaultWalltime)
- value = (value * 31) ^ hash(self.editableByUser)
- return value
-
- 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 SetEnvPaths(object):
+ """
+ Key Value pairs to be used to set environments
+
+ name:
+ Name of the environment variable such as PATH, LD_LIBRARY_PATH, NETCDF_HOME.
+
+ value:
+ Value of the environment variable to set
+
+ envPathOrder:
+ The order of the setting of the env variables when there are multiple env variables
+
+ Attributes:
+ - name
+ - value
+ - envPathOrder
+ """
+
+ thrift_spec = (
+ None, # 0
+ (1, TType.STRING, 'name', 'UTF8', None, ), # 1
+ (2, TType.STRING, 'value', 'UTF8', None, ), # 2
+ (3, TType.I32, 'envPathOrder', None, None, ), # 3
+ )
+
+ def __init__(self, name=None, value=None, envPathOrder=None,):
+ self.name = name
+ self.value = value
+ self.envPathOrder = envPathOrder
+
+ def read(self, iprot):
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
+ iprot._fast_decode(self, iprot, (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.name = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 2:
+ if ftype == TType.STRING:
+ self.value = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 3:
+ if ftype == TType.I32:
+ self.envPathOrder = iprot.readI32()
+ else:
+ iprot.skip(ftype)
+ else:
+ iprot.skip(ftype)
+ iprot.readFieldEnd()
+ iprot.readStructEnd()
+
+ def write(self, oprot):
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
+ oprot.trans.write(oprot._fast_encode(self, (self.__class__, self.thrift_spec)))
+ return
+ oprot.writeStructBegin('SetEnvPaths')
+ if self.name is not None:
+ oprot.writeFieldBegin('name', TType.STRING, 1)
+ oprot.writeString(self.name.encode('utf-8') if sys.version_info[0] == 2 else self.name)
+ oprot.writeFieldEnd()
+ if self.value is not None:
+ oprot.writeFieldBegin('value', TType.STRING, 2)
+ oprot.writeString(self.value.encode('utf-8') if sys.version_info[0] == 2 else self.value)
+ oprot.writeFieldEnd()
+ if self.envPathOrder is not None:
+ oprot.writeFieldBegin('envPathOrder', TType.I32, 3)
+ oprot.writeI32(self.envPathOrder)
+ oprot.writeFieldEnd()
+ oprot.writeFieldStop()
+ oprot.writeStructEnd()
+
+ def validate(self):
+ if self.name is None:
+ raise TProtocolException(message='Required field name is unset!')
+ if self.value is None:
+ raise TProtocolException(message='Required field value is unset!')
+ return
+
+ def __repr__(self):
+ L = ['%s=%r' % (key, value)
+ for key, value in self.__dict__.items()]
+ 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 CommandObject(object):
+ """
+ Job commands to be used in Pre Job, Post Job and Module Load Commands
+
+ command:
+ The actual command in string format
+
+ commandOrder:
+ Order of the command in the multiple command situation
+
+ Attributes:
+ - command
+ - commandOrder
+ """
+
+ thrift_spec = (
+ None, # 0
+ (1, TType.STRING, 'command', 'UTF8', None, ), # 1
+ (2, TType.I32, 'commandOrder', None, None, ), # 2
+ )
+
+ def __init__(self, command=None, commandOrder=None,):
+ self.command = command
+ self.commandOrder = commandOrder
+
+ def read(self, iprot):
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
+ iprot._fast_decode(self, iprot, (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.command = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 2:
+ if ftype == TType.I32:
+ self.commandOrder = iprot.readI32()
+ else:
+ iprot.skip(ftype)
+ else:
+ iprot.skip(ftype)
+ iprot.readFieldEnd()
+ iprot.readStructEnd()
+
+ def write(self, oprot):
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
+ oprot.trans.write(oprot._fast_encode(self, (self.__class__, self.thrift_spec)))
+ return
+ oprot.writeStructBegin('CommandObject')
+ if self.command is not None:
+ oprot.writeFieldBegin('command', TType.STRING, 1)
+ oprot.writeString(self.command.encode('utf-8') if sys.version_info[0] == 2 else self.command)
+ oprot.writeFieldEnd()
+ if self.commandOrder is not None:
+ oprot.writeFieldBegin('commandOrder', TType.I32, 2)
+ oprot.writeI32(self.commandOrder)
+ oprot.writeFieldEnd()
+ oprot.writeFieldStop()
+ oprot.writeStructEnd()
+
+ def validate(self):
+ if self.command is None:
+ raise TProtocolException(message='Required field command is unset!')
+ return
+
+ def __repr__(self):
+ L = ['%s=%r' % (key, value)
+ for key, value in self.__dict__.items()]
+ 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 ApplicationModule(object):
+ """
+ Application Module Information. A module has to be registered before registering a deployment.
+
+ appModuleId: Airavata Internal Unique Job ID. This is set by the registry.
+
+ appModuleName:
+ Name of the application module.
+
+ appModuleVersion:
+ Version of the application.
+
+ appModuleDescription:
+ Descriprion of the Module
+
+
+ Attributes:
+ - appModuleId
+ - appModuleName
+ - appModuleVersion
+ - appModuleDescription
+ """
+
+ thrift_spec = (
+ None, # 0
+ (1, TType.STRING, 'appModuleId', 'UTF8', "DO_NOT_SET_AT_CLIENTS", ), # 1
+ (2, TType.STRING, 'appModuleName', 'UTF8', None, ), # 2
+ (3, TType.STRING, 'appModuleVersion', 'UTF8', None, ), # 3
+ (4, TType.STRING, 'appModuleDescription', 'UTF8', None, ), # 4
+ )
+
+ def __init__(self, appModuleId=thrift_spec[1][4], appModuleName=None, appModuleVersion=None, appModuleDescription=None,):
+ self.appModuleId = appModuleId
+ self.appModuleName = appModuleName
+ self.appModuleVersion = appModuleVersion
+ self.appModuleDescription = appModuleDescription
+
+ def read(self, iprot):
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
+ iprot._fast_decode(self, iprot, (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.appModuleId = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 2:
+ if ftype == TType.STRING:
+ self.appModuleName = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 3:
+ if ftype == TType.STRING:
+ self.appModuleVersion = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 4:
+ if ftype == TType.STRING:
+ self.appModuleDescription = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+ else:
+ iprot.skip(ftype)
+ else:
+ iprot.skip(ftype)
+ iprot.readFieldEnd()
+ iprot.readStructEnd()
+
+ def write(self, oprot):
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
+ oprot.trans.write(oprot._fast_encode(self, (self.__class__, self.thrift_spec)))
+ return
+ oprot.writeStructBegin('ApplicationModule')
+ if self.appModuleId is not None:
+ oprot.writeFieldBegin('appModuleId', TType.STRING, 1)
+ oprot.writeString(self.appModuleId.encode('utf-8') if sys.version_info[0] == 2 else self.appModuleId)
+ oprot.writeFieldEnd()
+ if self.appModuleName is not None:
+ oprot.writeFieldBegin('appModuleName', TType.STRING, 2)
+ oprot.writeString(self.appModuleName.encode('utf-8') if sys.version_info[0] == 2 else self.appModuleName)
+ oprot.writeFieldEnd()
+ if self.appModuleVersion is not None:
+ oprot.writeFieldBegin('appModuleVersion', TType.STRING, 3)
+ oprot.writeString(self.appModuleVersion.encode('utf-8') if sys.version_info[0] == 2 else self.appModuleVersion)
+ oprot.writeFieldEnd()
+ if self.appModuleDescription is not None:
+ oprot.writeFieldBegin('appModuleDescription', TType.STRING, 4)
+ oprot.writeString(self.appModuleDescription.encode('utf-8') if sys.version_info[0] == 2 else self.appModuleDescription)
+ oprot.writeFieldEnd()
+ oprot.writeFieldStop()
+ oprot.writeStructEnd()
+
+ def validate(self):
+ if self.appModuleId is None:
+ raise TProtocolException(message='Required field appModuleId is unset!')
+ if self.appModuleName is None:
+ raise TProtocolException(message='Required field appModuleName is unset!')
+ return
+
+ def __repr__(self):
+ L = ['%s=%r' % (key, value)
+ for key, value in self.__dict__.items()]
+ 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 ApplicationDeploymentDescription(object):
+ """
+ Application Deployment Description
+
+ appDeploymentId: Airavata Internal Unique Job ID. This is set by the registry.
+
+ appModuleName:
+ Application Module Name. This has to be precise describing the binary.
+
+ computeHostId:
+ This ID maps application deployment to a particular resource previously described within Airavata.
+ Example: Stampede is first registered and refered when registering WRF.
+
+ moduleLoadCmd:
+ Command string to load modules. This will be placed in the job submisison
+ Ex: module load amber
+
+ libPrependPaths:
+ prepend to a path variable the value
+
+ libAppendPaths:
+ append to a path variable the value
+
+ setEnvironment:
+ assigns to the environment variable "NAME" the value
+
+
+ Attributes:
+ - appDeploymentId
+ - appModuleId
+ - computeHostId
+ - executablePath
+ - parallelism
+ - appDeploymentDescription
+ - moduleLoadCmds
+ - libPrependPaths
+ - libAppendPaths
+ - setEnvironment
+ - preJobCommands
+ - postJobCommands
+ - defaultQueueName
+ - defaultNodeCount
+ - defaultCPUCount
+ - defaultWalltime
+ - editableByUser
+ """
+
+ thrift_spec = (
+ None, # 0
+ (1, TType.STRING, 'appDeploymentId', 'UTF8', "DO_NOT_SET_AT_CLIENTS", ), # 1
+ (2, TType.STRING, 'appModuleId', 'UTF8', None, ), # 2
+ (3, TType.STRING, 'computeHostId', 'UTF8', None, ), # 3
+ (4, TType.STRING, 'executablePath', 'UTF8', None, ), # 4
+ (5, TType.I32, 'parallelism', None, 0, ), # 5
+ (6, TType.STRING, 'appDeploymentDescription', 'UTF8', None, ), # 6
+ (7, TType.LIST, 'moduleLoadCmds', (TType.STRUCT, (CommandObject, CommandObject.thrift_spec), False), None, ), # 7
+ (8, TType.LIST, 'libPrependPaths', (TType.STRUCT, (SetEnvPaths, SetEnvPaths.thrift_spec), False), None, ), # 8
+ (9, TType.LIST, 'libAppendPaths', (TType.STRUCT, (SetEnvPaths, SetEnvPaths.thrift_spec), False), None, ), # 9
+ (10, TType.LIST, 'setEnvironment', (TType.STRUCT, (SetEnvPaths, SetEnvPaths.thrift_spec), False), None, ), # 10
+ (11, TType.LIST, 'preJobCommands', (TType.STRUCT, (CommandObject, CommandObject.thrift_spec), False), None, ), # 11
+ (12, TType.LIST, 'postJobCommands', (TType.STRUCT, (CommandObject, CommandObject.thrift_spec), False), None, ), # 12
+ (13, TType.STRING, 'defaultQueueName', 'UTF8', None, ), # 13
+ (14, TType.I32, 'defaultNodeCount', None, None, ), # 14
+ (15, TType.I32, 'defaultCPUCount', None, None, ), # 15
+ (16, TType.I32, 'defaultWalltime', None, None, ), # 16
+ (17, TType.BOOL, 'editableByUser', None, None, ), # 17
+ )
+
+ def __init__(self, appDeploymentId=thrift_spec[1][4], appModuleId=None, computeHostId=None, executablePath=None, parallelism=thrift_spec[5][4], appDeploymentDescription=None, moduleLoadCmds=None, libPrependPaths=None, libAppendPaths=None, setEnvironment=None, preJobCommands=None, postJobCommands=None, defaultQueueName=None, defaultNodeCount=None, defaultCPUCount=None, defaultWalltime=None, editableByUser=None,):
+ self.appDeploymentId = appDeploymentId
+ self.appModuleId = appModuleId
+ self.computeHostId = computeHostId
+ self.executablePath = executablePath
+ self.parallelism = parallelism
+ self.appDeploymentDescription = appDeploymentDescription
+ self.moduleLoadCmds = moduleLoadCmds
+ self.libPrependPaths = libPrependPaths
+ self.libAppendPaths = libAppendPaths
+ self.setEnvironment = setEnvironment
+ self.preJobCommands = preJobCommands
+ self.postJobCommands = postJobCommands
+ self.defaultQueueName = defaultQueueName
+ self.defaultNodeCount = defaultNodeCount
+ self.defaultCPUCount = defaultCPUCount
+ self.defaultWalltime = defaultWalltime
+ self.editableByUser = editableByUser
+
+ def read(self, iprot):
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
+ iprot._fast_decode(self, iprot, (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.appDeploymentId = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 2:
+ if ftype == TType.STRING:
+ self.appModuleId = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 3:
+ if ftype == TType.STRING:
+ self.computeHostId = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 4:
+ if ftype == TType.STRING:
+ self.executablePath = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 5:
+ if ftype == TType.I32:
+ self.parallelism = iprot.readI32()
+ else:
+ iprot.skip(ftype)
+ elif fid == 6:
+ if ftype == TType.STRING:
+ self.appDeploymentDescription = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 7:
+ if ftype == TType.LIST:
+ self.moduleLoadCmds = []
+ (_etype3, _size0) = iprot.readListBegin()
+ for _i4 in range(_size0):
+ _elem5 = CommandObject()
+ _elem5.read(iprot)
+ self.moduleLoadCmds.append(_elem5)
+ iprot.readListEnd()
+ else:
+ iprot.skip(ftype)
+ elif fid == 8:
+ if ftype == TType.LIST:
+ self.libPrependPaths = []
+ (_etype9, _size6) = iprot.readListBegin()
+ for _i10 in range(_size6):
+ _elem11 = SetEnvPaths()
+ _elem11.read(iprot)
+ self.libPrependPaths.append(_elem11)
+ iprot.readListEnd()
+ else:
+ iprot.skip(ftype)
+ elif fid == 9:
+ if ftype == TType.LIST:
+ self.libAppendPaths = []
+ (_etype15, _size12) = iprot.readListBegin()
+ for _i16 in range(_size12):
+ _elem17 = SetEnvPaths()
+ _elem17.read(iprot)
+ self.libAppendPaths.append(_elem17)
+ iprot.readListEnd()
+ else:
+ iprot.skip(ftype)
+ elif fid == 10:
+ if ftype == TType.LIST:
+ self.setEnvironment = []
+ (_etype21, _size18) = iprot.readListBegin()
+ for _i22 in range(_size18):
+ _elem23 = SetEnvPaths()
+ _elem23.read(iprot)
+ self.setEnvironment.append(_elem23)
+ iprot.readListEnd()
+ else:
+ iprot.skip(ftype)
+ elif fid == 11:
+ if ftype == TType.LIST:
+ self.preJobCommands = []
+ (_etype27, _size24) = iprot.readListBegin()
+ for _i28 in range(_size24):
+ _elem29 = CommandObject()
+ _elem29.read(iprot)
+ self.preJobCommands.append(_elem29)
+ iprot.readListEnd()
+ else:
+ iprot.skip(ftype)
+ elif fid == 12:
+ if ftype == TType.LIST:
+ self.postJobCommands = []
+ (_etype33, _size30) = iprot.readListBegin()
+ for _i34 in range(_size30):
+ _elem35 = CommandObject()
+ _elem35.read(iprot)
+ self.postJobCommands.append(_elem35)
+ iprot.readListEnd()
+ else:
+ iprot.skip(ftype)
+ elif fid == 13:
+ if ftype == TType.STRING:
+ self.defaultQueueName = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 14:
+ if ftype == TType.I32:
+ self.defaultNodeCount = iprot.readI32()
+ else:
+ iprot.skip(ftype)
+ elif fid == 15:
+ if ftype == TType.I32:
+ self.defaultCPUCount = iprot.readI32()
+ else:
+ iprot.skip(ftype)
+ elif fid == 16:
+ if ftype == TType.I32:
+ self.defaultWalltime = iprot.readI32()
+ else:
+ iprot.skip(ftype)
+ elif fid == 17:
+ if ftype == TType.BOOL:
+ self.editableByUser = iprot.readBool()
+ else:
+ iprot.skip(ftype)
+ else:
+ iprot.skip(ftype)
+ iprot.readFieldEnd()
+ iprot.readStructEnd()
+
+ def write(self, oprot):
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
+ oprot.trans.write(oprot._fast_encode(self, (self.__class__, self.thrift_spec)))
+ return
+ oprot.writeStructBegin('ApplicationDeploymentDescription')
+ if self.appDeploymentId is not None:
+ oprot.writeFieldBegin('appDeploymentId', TType.STRING, 1)
+ oprot.writeString(self.appDeploymentId.encode('utf-8') if sys.version_info[0] == 2 else self.appDeploymentId)
+ oprot.writeFieldEnd()
+ if self.appModuleId is not None:
+ oprot.writeFieldBegin('appModuleId', TType.STRING, 2)
+ oprot.writeString(self.appModuleId.encode('utf-8') if sys.version_info[0] == 2 else self.appModuleId)
+ oprot.writeFieldEnd()
+ if self.computeHostId is not None:
+ oprot.writeFieldBegin('computeHostId', TType.STRING, 3)
+ oprot.writeString(self.computeHostId.encode('utf-8') if sys.version_info[0] == 2 else self.computeHostId)
+ oprot.writeFieldEnd()
+ if self.executablePath is not None:
+ oprot.writeFieldBegin('executablePath', TType.STRING, 4)
+ oprot.writeString(self.executablePath.encode('utf-8') if sys.version_info[0] == 2 else self.executablePath)
+ oprot.writeFieldEnd()
+ if self.parallelism is not None:
+ oprot.writeFieldBegin('parallelism', TType.I32, 5)
+ oprot.writeI32(self.parallelism)
+ oprot.writeFieldEnd()
+ if self.appDeploymentDescription is not None:
+ oprot.writeFieldBegin('appDeploymentDescription', TType.STRING, 6)
+ oprot.writeString(self.appDeploymentDescription.encode('utf-8') if sys.version_info[0] == 2 else self.appDeploymentDescription)
+ oprot.writeFieldEnd()
+ if self.moduleLoadCmds is not None:
+ oprot.writeFieldBegin('moduleLoadCmds', TType.LIST, 7)
+ oprot.writeListBegin(TType.STRUCT, len(self.moduleLoadCmds))
+ for iter36 in self.moduleLoadCmds:
+ iter36.write(oprot)
+ oprot.writeListEnd()
+ oprot.writeFieldEnd()
+ if self.libPrependPaths is not None:
+ oprot.writeFieldBegin('libPrependPaths', TType.LIST, 8)
+ oprot.writeListBegin(TType.STRUCT, len(self.libPrependPaths))
+ for iter37 in self.libPrependPaths:
+ iter37.write(oprot)
+ oprot.writeListEnd()
+ oprot.writeFieldEnd()
+ if self.libAppendPaths is not None:
+ oprot.writeFieldBegin('libAppendPaths', TType.LIST, 9)
+ oprot.writeListBegin(TType.STRUCT, len(self.libAppendPaths))
+ for iter38 in self.libAppendPaths:
+ iter38.write(oprot)
+ oprot.writeListEnd()
+ oprot.writeFieldEnd()
+ if self.setEnvironment is not None:
+ oprot.writeFieldBegin('setEnvironment', TType.LIST, 10)
+ oprot.writeListBegin(TType.STRUCT, len(self.setEnvironment))
+ for iter39 in self.setEnvironment:
+ iter39.write(oprot)
+ oprot.writeListEnd()
+ oprot.writeFieldEnd()
+ if self.preJobCommands is not None:
+ oprot.writeFieldBegin('preJobCommands', TType.LIST, 11)
+ oprot.writeListBegin(TType.STRUCT, len(self.preJobCommands))
+ for iter40 in self.preJobCommands:
+ iter40.write(oprot)
+ oprot.writeListEnd()
+ oprot.writeFieldEnd()
+ if self.postJobCommands is not None:
+ oprot.writeFieldBegin('postJobCommands', TType.LIST, 12)
+ oprot.writeListBegin(TType.STRUCT, len(self.postJobCommands))
+ for iter41 in self.postJobCommands:
+ iter41.write(oprot)
+ oprot.writeListEnd()
+ oprot.writeFieldEnd()
+ if self.defaultQueueName is not None:
+ oprot.writeFieldBegin('defaultQueueName', TType.STRING, 13)
+ oprot.writeString(self.defaultQueueName.encode('utf-8') if sys.version_info[0] == 2 else self.defaultQueueName)
+ oprot.writeFieldEnd()
+ if self.defaultNodeCount is not None:
+ oprot.writeFieldBegin('defaultNodeCount', TType.I32, 14)
+ oprot.writeI32(self.defaultNodeCount)
+ oprot.writeFieldEnd()
+ if self.defaultCPUCount is not None:
+ oprot.writeFieldBegin('defaultCPUCount', TType.I32, 15)
+ oprot.writeI32(self.defaultCPUCount)
+ oprot.writeFieldEnd()
+ if self.defaultWalltime is not None:
+ oprot.writeFieldBegin('defaultWalltime', TType.I32, 16)
+ oprot.writeI32(self.defaultWalltime)
+ oprot.writeFieldEnd()
+ if self.editableByUser is not None:
+ oprot.writeFieldBegin('editableByUser', TType.BOOL, 17)
+ oprot.writeBool(self.editableByUser)
+ oprot.writeFieldEnd()
+ oprot.writeFieldStop()
+ oprot.writeStructEnd()
+
+ def validate(self):
+ if self.appDeploymentId is None:
+ raise TProtocolException(message='Required field appDeploymentId is unset!')
+ if self.appModuleId is None:
+ raise TProtocolException(message='Required field appModuleId is unset!')
+ if self.computeHostId is None:
+ raise TProtocolException(message='Required field computeHostId is unset!')
+ if self.executablePath is None:
+ raise TProtocolException(message='Required field executablePath is unset!')
+ if self.parallelism is None:
+ raise TProtocolException(message='Required field parallelism is unset!')
+ return
+
+ def __repr__(self):
+ L = ['%s=%r' % (key, value)
+ for key, value in self.__dict__.items()]
+ 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)
http://git-wip-us.apache.org/repos/asf/airavata/blob/8e775660/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appinterface/constants.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appinterface/constants.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appinterface/constants.py
index 4a6492b..eb0d35a 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appinterface/constants.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appinterface/constants.py
@@ -1,11 +1,12 @@
#
-# Autogenerated by Thrift Compiler (0.9.3)
+# Autogenerated by Thrift Compiler (0.10.0)
#
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
#
# options string: py
#
-from thrift.Thrift import TType, TMessageType, TException, TApplicationException
-from ttypes import *
-
+from thrift.Thrift import TType, TMessageType, TFrozenDict, TException, TApplicationException
+from thrift.protocol.TProtocol import TProtocolException
+import sys
+from .ttypes import *
http://git-wip-us.apache.org/repos/asf/airavata/blob/8e775660/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appinterface/ttypes.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appinterface/ttypes.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appinterface/ttypes.py
index 757058a..b7cfd58 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appinterface/ttypes.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/appinterface/ttypes.py
@@ -1,219 +1,201 @@
#
-# Autogenerated by Thrift Compiler (0.9.3)
+# Autogenerated by Thrift Compiler (0.10.0)
#
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
#
# options string: py
#
-from thrift.Thrift import TType, TMessageType, TException, TApplicationException
+from thrift.Thrift import TType, TMessageType, TFrozenDict, TException, TApplicationException
+from thrift.protocol.TProtocol import TProtocolException
+import sys
import apache.airavata.model.application.io.ttypes
import apache.airavata.model.commons.ttypes
-
from thrift.transport import TTransport
-from thrift.protocol import TBinaryProtocol, TProtocol
-try:
- from thrift.protocol import fastbinary
-except:
- fastbinary = None
-
-
-
-class ApplicationInterfaceDescription:
- """
- Application Interface Description
-
- applicationModules:
- Associate all application modules with versions which interface is applicable to.
-
- applicationInputs:
- Inputs to be passed to the application
-
- applicationOutputs:
- Outputs generated from the application
-
-
- Attributes:
- - applicationInterfaceId
- - applicationName
- - applicationDescription
- - applicationModules
- - applicationInputs
- - applicationOutputs
- - archiveWorkingDirectory
- - hasOptionalFileInputs
- """
-
- thrift_spec = (
- None, # 0
- (1, TType.STRING, 'applicationInterfaceId', None, "DO_NOT_SET_AT_CLIENTS", ), # 1
- (2, TType.STRING, 'applicationName', None, None, ), # 2
- (3, TType.STRING, 'applicationDescription', None, None, ), # 3
- (4, TType.LIST, 'applicationModules', (TType.STRING,None), None, ), # 4
- (5, TType.LIST, 'applicationInputs', (TType.STRUCT,(apache.airavata.model.application.io.ttypes.InputDataObjectType, apache.airavata.model.application.io.ttypes.InputDataObjectType.thrift_spec)), None, ), # 5
- (6, TType.LIST, 'applicationOutputs', (TType.STRUCT,(apache.airavata.model.application.io.ttypes.OutputDataObjectType, apache.airavata.model.application.io.ttypes.OutputDataObjectType.thrift_spec)), None, ), # 6
- (7, TType.BOOL, 'archiveWorkingDirectory', None, False, ), # 7
- (8, TType.BOOL, 'hasOptionalFileInputs', None, None, ), # 8
- )
-
- def __init__(self, applicationInterfaceId=thrift_spec[1][4], applicationName=None, applicationDescription=None, applicationModules=None, applicationInputs=None, applicationOutputs=None, archiveWorkingDirectory=thrift_spec[7][4], hasOptionalFileInputs=None,):
- self.applicationInterfaceId = applicationInterfaceId
- self.applicationName = applicationName
- self.applicationDescription = applicationDescription
- self.applicationModules = applicationModules
- self.applicationInputs = applicationInputs
- self.applicationOutputs = applicationOutputs
- self.archiveWorkingDirectory = archiveWorkingDirectory
- self.hasOptionalFileInputs = hasOptionalFileInputs
-
- 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.applicationInterfaceId = iprot.readString()
- else:
- iprot.skip(ftype)
- elif fid == 2:
- if ftype == TType.STRING:
- self.applicationName = iprot.readString()
- else:
- iprot.skip(ftype)
- elif fid == 3:
- if ftype == TType.STRING:
- self.applicationDescription = iprot.readString()
- else:
- iprot.skip(ftype)
- elif fid == 4:
- if ftype == TType.LIST:
- self.applicationModules = []
- (_etype3, _size0) = iprot.readListBegin()
- for _i4 in xrange(_size0):
- _elem5 = iprot.readString()
- self.applicationModules.append(_elem5)
- iprot.readListEnd()
- else:
- iprot.skip(ftype)
- elif fid == 5:
- if ftype == TType.LIST:
- self.applicationInputs = []
- (_etype9, _size6) = iprot.readListBegin()
- for _i10 in xrange(_size6):
- _elem11 = apache.airavata.model.application.io.ttypes.InputDataObjectType()
- _elem11.read(iprot)
- self.applicationInputs.append(_elem11)
- iprot.readListEnd()
- else:
- iprot.skip(ftype)
- elif fid == 6:
- if ftype == TType.LIST:
- self.applicationOutputs = []
- (_etype15, _size12) = iprot.readListBegin()
- for _i16 in xrange(_size12):
- _elem17 = apache.airavata.model.application.io.ttypes.OutputDataObjectType()
- _elem17.read(iprot)
- self.applicationOutputs.append(_elem17)
- iprot.readListEnd()
- else:
- iprot.skip(ftype)
- elif fid == 7:
- if ftype == TType.BOOL:
- self.archiveWorkingDirectory = iprot.readBool()
- else:
- iprot.skip(ftype)
- elif fid == 8:
- if ftype == TType.BOOL:
- self.hasOptionalFileInputs = iprot.readBool()
- 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('ApplicationInterfaceDescription')
- if self.applicationInterfaceId is not None:
- oprot.writeFieldBegin('applicationInterfaceId', TType.STRING, 1)
- oprot.writeString(self.applicationInterfaceId)
- oprot.writeFieldEnd()
- if self.applicationName is not None:
- oprot.writeFieldBegin('applicationName', TType.STRING, 2)
- oprot.writeString(self.applicationName)
- oprot.writeFieldEnd()
- if self.applicationDescription is not None:
- oprot.writeFieldBegin('applicationDescription', TType.STRING, 3)
- oprot.writeString(self.applicationDescription)
- oprot.writeFieldEnd()
- if self.applicationModules is not None:
- oprot.writeFieldBegin('applicationModules', TType.LIST, 4)
- oprot.writeListBegin(TType.STRING, len(self.applicationModules))
- for iter18 in self.applicationModules:
- oprot.writeString(iter18)
- oprot.writeListEnd()
- oprot.writeFieldEnd()
- if self.applicationInputs is not None:
- oprot.writeFieldBegin('applicationInputs', TType.LIST, 5)
- oprot.writeListBegin(TType.STRUCT, len(self.applicationInputs))
- for iter19 in self.applicationInputs:
- iter19.write(oprot)
- oprot.writeListEnd()
- oprot.writeFieldEnd()
- if self.applicationOutputs is not None:
- oprot.writeFieldBegin('applicationOutputs', TType.LIST, 6)
- oprot.writeListBegin(TType.STRUCT, len(self.applicationOutputs))
- for iter20 in self.applicationOutputs:
- iter20.write(oprot)
- oprot.writeListEnd()
- oprot.writeFieldEnd()
- if self.archiveWorkingDirectory is not None:
- oprot.writeFieldBegin('archiveWorkingDirectory', TType.BOOL, 7)
- oprot.writeBool(self.archiveWorkingDirectory)
- oprot.writeFieldEnd()
- if self.hasOptionalFileInputs is not None:
- oprot.writeFieldBegin('hasOptionalFileInputs', TType.BOOL, 8)
- oprot.writeBool(self.hasOptionalFileInputs)
- oprot.writeFieldEnd()
- oprot.writeFieldStop()
- oprot.writeStructEnd()
-
- def validate(self):
- if self.applicationInterfaceId is None:
- raise TProtocol.TProtocolException(message='Required field applicationInterfaceId is unset!')
- if self.applicationName is None:
- raise TProtocol.TProtocolException(message='Required field applicationName is unset!')
- return
-
-
- def __hash__(self):
- value = 17
- value = (value * 31) ^ hash(self.applicationInterfaceId)
- value = (value * 31) ^ hash(self.applicationName)
- value = (value * 31) ^ hash(self.applicationDescription)
- value = (value * 31) ^ hash(self.applicationModules)
- value = (value * 31) ^ hash(self.applicationInputs)
- value = (value * 31) ^ hash(self.applicationOutputs)
- value = (value * 31) ^ hash(self.archiveWorkingDirectory)
- value = (value * 31) ^ hash(self.hasOptionalFileInputs)
- return value
-
- 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 ApplicationInterfaceDescription(object):
+ """
+ Application Interface Description
+
+ applicationModules:
+ Associate all application modules with versions which interface is applicable to.
+
+ applicationInputs:
+ Inputs to be passed to the application
+
+ applicationOutputs:
+ Outputs generated from the application
+
+
+ Attributes:
+ - applicationInterfaceId
+ - applicationName
+ - applicationDescription
+ - applicationModules
+ - applicationInputs
+ - applicationOutputs
+ - archiveWorkingDirectory
+ - hasOptionalFileInputs
+ """
+
+ thrift_spec = (
+ None, # 0
+ (1, TType.STRING, 'applicationInterfaceId', 'UTF8', "DO_NOT_SET_AT_CLIENTS", ), # 1
+ (2, TType.STRING, 'applicationName', 'UTF8', None, ), # 2
+ (3, TType.STRING, 'applicationDescription', 'UTF8', None, ), # 3
+ (4, TType.LIST, 'applicationModules', (TType.STRING, 'UTF8', False), None, ), # 4
+ (5, TType.LIST, 'applicationInputs', (TType.STRUCT, (apache.airavata.model.application.io.ttypes.InputDataObjectType, apache.airavata.model.application.io.ttypes.InputDataObjectType.thrift_spec), False), None, ), # 5
+ (6, TType.LIST, 'applicationOutputs', (TType.STRUCT, (apache.airavata.model.application.io.ttypes.OutputDataObjectType, apache.airavata.model.application.io.ttypes.OutputDataObjectType.thrift_spec), False), None, ), # 6
+ (7, TType.BOOL, 'archiveWorkingDirectory', None, False, ), # 7
+ (8, TType.BOOL, 'hasOptionalFileInputs', None, None, ), # 8
+ )
+
+ def __init__(self, applicationInterfaceId=thrift_spec[1][4], applicationName=None, applicationDescription=None, applicationModules=None, applicationInputs=None, applicationOutputs=None, archiveWorkingDirectory=thrift_spec[7][4], hasOptionalFileInputs=None,):
+ self.applicationInterfaceId = applicationInterfaceId
+ self.applicationName = applicationName
+ self.applicationDescription = applicationDescription
+ self.applicationModules = applicationModules
+ self.applicationInputs = applicationInputs
+ self.applicationOutputs = applicationOutputs
+ self.archiveWorkingDirectory = archiveWorkingDirectory
+ self.hasOptionalFileInputs = hasOptionalFileInputs
+
+ def read(self, iprot):
+ if iprot._fast_decode is not None and isinstance(iprot.trans, TTransport.CReadableTransport) and self.thrift_spec is not None:
+ iprot._fast_decode(self, iprot, (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.applicationInterfaceId = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 2:
+ if ftype == TType.STRING:
+ self.applicationName = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 3:
+ if ftype == TType.STRING:
+ self.applicationDescription = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+ else:
+ iprot.skip(ftype)
+ elif fid == 4:
+ if ftype == TType.LIST:
+ self.applicationModules = []
+ (_etype3, _size0) = iprot.readListBegin()
+ for _i4 in range(_size0):
+ _elem5 = iprot.readString().decode('utf-8') if sys.version_info[0] == 2 else iprot.readString()
+ self.applicationModules.append(_elem5)
+ iprot.readListEnd()
+ else:
+ iprot.skip(ftype)
+ elif fid == 5:
+ if ftype == TType.LIST:
+ self.applicationInputs = []
+ (_etype9, _size6) = iprot.readListBegin()
+ for _i10 in range(_size6):
+ _elem11 = apache.airavata.model.application.io.ttypes.InputDataObjectType()
+ _elem11.read(iprot)
+ self.applicationInputs.append(_elem11)
+ iprot.readListEnd()
+ else:
+ iprot.skip(ftype)
+ elif fid == 6:
+ if ftype == TType.LIST:
+ self.applicationOutputs = []
+ (_etype15, _size12) = iprot.readListBegin()
+ for _i16 in range(_size12):
+ _elem17 = apache.airavata.model.application.io.ttypes.OutputDataObjectType()
+ _elem17.read(iprot)
+ self.applicationOutputs.append(_elem17)
+ iprot.readListEnd()
+ else:
+ iprot.skip(ftype)
+ elif fid == 7:
+ if ftype == TType.BOOL:
+ self.archiveWorkingDirectory = iprot.readBool()
+ else:
+ iprot.skip(ftype)
+ elif fid == 8:
+ if ftype == TType.BOOL:
+ self.hasOptionalFileInputs = iprot.readBool()
+ else:
+ iprot.skip(ftype)
+ else:
+ iprot.skip(ftype)
+ iprot.readFieldEnd()
+ iprot.readStructEnd()
+
+ def write(self, oprot):
+ if oprot._fast_encode is not None and self.thrift_spec is not None:
+ oprot.trans.write(oprot._fast_encode(self, (self.__class__, self.thrift_spec)))
+ return
+ oprot.writeStructBegin('ApplicationInterfaceDescription')
+ if self.applicationInterfaceId is not None:
+ oprot.writeFieldBegin('applicationInterfaceId', TType.STRING, 1)
+ oprot.writeString(self.applicationInterfaceId.encode('utf-8') if sys.version_info[0] == 2 else self.applicationInterfaceId)
+ oprot.writeFieldEnd()
+ if self.applicationName is not None:
+ oprot.writeFieldBegin('applicationName', TType.STRING, 2)
+ oprot.writeString(self.applicationName.encode('utf-8') if sys.version_info[0] == 2 else self.applicationName)
+ oprot.writeFieldEnd()
+ if self.applicationDescription is not None:
+ oprot.writeFieldBegin('applicationDescription', TType.STRING, 3)
+ oprot.writeString(self.applicationDescription.encode('utf-8') if sys.version_info[0] == 2 else self.applicationDescription)
+ oprot.writeFieldEnd()
+ if self.applicationModules is not None:
+ oprot.writeFieldBegin('applicationModules', TType.LIST, 4)
+ oprot.writeListBegin(TType.STRING, len(self.applicationModules))
+ for iter18 in self.applicationModules:
+ oprot.writeString(iter18.encode('utf-8') if sys.version_info[0] == 2 else iter18)
+ oprot.writeListEnd()
+ oprot.writeFieldEnd()
+ if self.applicationInputs is not None:
+ oprot.writeFieldBegin('applicationInputs', TType.LIST, 5)
+ oprot.writeListBegin(TType.STRUCT, len(self.applicationInputs))
+ for iter19 in self.applicationInputs:
+ iter19.write(oprot)
+ oprot.writeListEnd()
+ oprot.writeFieldEnd()
+ if self.applicationOutputs is not None:
+ oprot.writeFieldBegin('applicationOutputs', TType.LIST, 6)
+ oprot.writeListBegin(TType.STRUCT, len(self.applicationOutputs))
+ for iter20 in self.applicationOutputs:
+ iter20.write(oprot)
+ oprot.writeListEnd()
+ oprot.writeFieldEnd()
+ if self.archiveWorkingDirectory is not None:
+ oprot.writeFieldBegin('archiveWorkingDirectory', TType.BOOL, 7)
+ oprot.writeBool(self.archiveWorkingDirectory)
+ oprot.writeFieldEnd()
+ if self.hasOptionalFileInputs is not None:
+ oprot.writeFieldBegin('hasOptionalFileInputs', TType.BOOL, 8)
+ oprot.writeBool(self.hasOptionalFileInputs)
+ oprot.writeFieldEnd()
+ oprot.writeFieldStop()
+ oprot.writeStructEnd()
+
+ def validate(self):
+ if self.applicationInterfaceId is None:
+ raise TProtocolException(message='Required field applicationInterfaceId is unset!')
+ if self.applicationName is None:
+ raise TProtocolException(message='Required field applicationName is unset!')
+ return
+
+ def __repr__(self):
+ L = ['%s=%r' % (key, value)
+ for key, value in self.__dict__.items()]
+ 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)
http://git-wip-us.apache.org/repos/asf/airavata/blob/8e775660/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/computeresource/constants.py
----------------------------------------------------------------------
diff --git a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/computeresource/constants.py b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/computeresource/constants.py
index 4a6492b..eb0d35a 100644
--- a/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/computeresource/constants.py
+++ b/airavata-api/airavata-client-sdks/airavata-python-sdk/src/main/resources/lib/apache/airavata/model/appcatalog/computeresource/constants.py
@@ -1,11 +1,12 @@
#
-# Autogenerated by Thrift Compiler (0.9.3)
+# Autogenerated by Thrift Compiler (0.10.0)
#
# DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
#
# options string: py
#
-from thrift.Thrift import TType, TMessageType, TException, TApplicationException
-from ttypes import *
-
+from thrift.Thrift import TType, TMessageType, TFrozenDict, TException, TApplicationException
+from thrift.protocol.TProtocol import TProtocolException
+import sys
+from .ttypes import *