Class: ProcessModel

Inherits:
Object
  • Object
show all
Includes:
Thrift::Struct, Thrift::Struct_Union
Defined in:
lib/process_model_types.rb

Overview

ProcessModel: A structure holding the process details. The infromation is derived based on user provided

configuration data or system inferred information from scheduling and QoS parameters.

processDetail:

A friendly description of the process, usally used to communicate information to users.

Constant Summary collapse

PROCESSID =
1
EXPERIMENTID =
2
CREATIONTIME =
3
LASTUPDATETIME =
4
PROCESSSTATUSES =
5
PROCESSDETAIL =
6
APPLICATIONINTERFACEID =
7
APPLICATIONDEPLOYMENTID =
8
COMPUTERESOURCEID =
9
PROCESSINPUTS =
10
PROCESSOUTPUTS =
11
PROCESSRESOURCESCHEDULE =
12
TASKS =
13
TASKDAG =
14
PROCESSERRORS =
15
GATEWAYEXECUTIONID =
16
ENABLEEMAILNOTIFICATION =
17
EMAILADDRESSES =
18
STORAGERESOURCEID =
19
USERDN =
20
GENERATECERT =
21
EXPERIMENTDATADIR =
22
USERNAME =
23
USEUSERCRPREF =
24
GROUPRESOURCEPROFILEID =
25
PROCESSWORKFLOWS =
26
FIELDS =
{
  PROCESSID => {:type => ::Thrift::Types::STRING, :name => 'processId', :default => %q"DO_NOT_SET_AT_CLIENTS"},
  EXPERIMENTID => {:type => ::Thrift::Types::STRING, :name => 'experimentId'},
  CREATIONTIME => {:type => ::Thrift::Types::I64, :name => 'creationTime', :optional => true},
  LASTUPDATETIME => {:type => ::Thrift::Types::I64, :name => 'lastUpdateTime', :optional => true},
  PROCESSSTATUSES => {:type => ::Thrift::Types::LIST, :name => 'processStatuses', :element => {:type => ::Thrift::Types::STRUCT, :class => ::ProcessStatus}, :optional => true},
  PROCESSDETAIL => {:type => ::Thrift::Types::STRING, :name => 'processDetail', :optional => true},
  APPLICATIONINTERFACEID => {:type => ::Thrift::Types::STRING, :name => 'applicationInterfaceId', :optional => true},
  APPLICATIONDEPLOYMENTID => {:type => ::Thrift::Types::STRING, :name => 'applicationDeploymentId', :optional => true},
  COMPUTERESOURCEID => {:type => ::Thrift::Types::STRING, :name => 'computeResourceId', :optional => true},
  PROCESSINPUTS => {:type => ::Thrift::Types::LIST, :name => 'processInputs', :element => {:type => ::Thrift::Types::STRUCT, :class => ::InputDataObjectType}, :optional => true},
  PROCESSOUTPUTS => {:type => ::Thrift::Types::LIST, :name => 'processOutputs', :element => {:type => ::Thrift::Types::STRUCT, :class => ::OutputDataObjectType}, :optional => true},
  PROCESSRESOURCESCHEDULE => {:type => ::Thrift::Types::STRUCT, :name => 'processResourceSchedule', :class => ::ComputationalResourceSchedulingModel, :optional => true},
  TASKS => {:type => ::Thrift::Types::LIST, :name => 'tasks', :element => {:type => ::Thrift::Types::STRUCT, :class => ::TaskModel}, :optional => true},
  TASKDAG => {:type => ::Thrift::Types::STRING, :name => 'taskDag', :optional => true},
  PROCESSERRORS => {:type => ::Thrift::Types::LIST, :name => 'processErrors', :element => {:type => ::Thrift::Types::STRUCT, :class => ::ErrorModel}, :optional => true},
  GATEWAYEXECUTIONID => {:type => ::Thrift::Types::STRING, :name => 'gatewayExecutionId', :optional => true},
  ENABLEEMAILNOTIFICATION => {:type => ::Thrift::Types::BOOL, :name => 'enableEmailNotification', :optional => true},
  EMAILADDRESSES => {:type => ::Thrift::Types::LIST, :name => 'emailAddresses', :element => {:type => ::Thrift::Types::STRING}, :optional => true},
  STORAGERESOURCEID => {:type => ::Thrift::Types::STRING, :name => 'storageResourceId', :optional => true},
  USERDN => {:type => ::Thrift::Types::STRING, :name => 'userDn', :optional => true},
  GENERATECERT => {:type => ::Thrift::Types::BOOL, :name => 'generateCert', :default => false, :optional => true},
  EXPERIMENTDATADIR => {:type => ::Thrift::Types::STRING, :name => 'experimentDataDir', :optional => true},
  USERNAME => {:type => ::Thrift::Types::STRING, :name => 'userName', :optional => true},
  USEUSERCRPREF => {:type => ::Thrift::Types::BOOL, :name => 'useUserCRPref', :optional => true},
  GROUPRESOURCEPROFILEID => {:type => ::Thrift::Types::STRING, :name => 'groupResourceProfileId', :optional => true},
  PROCESSWORKFLOWS => {:type => ::Thrift::Types::LIST, :name => 'processWorkflows', :element => {:type => ::Thrift::Types::STRUCT, :class => ::ProcessWorkflow}, :optional => true}
}

Instance Method Summary collapse

Instance Method Details

#struct_fieldsObject



104
# File 'lib/process_model_types.rb', line 104

def struct_fields; FIELDS; end

#validateObject

Raises:

  • (::Thrift::ProtocolException)


106
107
108
109
# File 'lib/process_model_types.rb', line 106

def validate
  raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field processId is unset!') unless @processId
  raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field experimentId is unset!') unless @experimentId
end