airavata 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
 - data/.gitignore +15 -0
 - data/.rspec +3 -0
 - data/.travis.yml +6 -0
 - data/CODE_OF_CONDUCT.md +74 -0
 - data/Gemfile +11 -0
 - data/README.md +61 -0
 - data/Rakefile +6 -0
 - data/airavata.gemspec +26 -0
 - data/bin/console +14 -0
 - data/bin/setup +8 -0
 - data/lib/account_provisioning_model_constants.rb +9 -0
 - data/lib/account_provisioning_model_types.rb +69 -0
 - data/lib/airavata.rb +15774 -0
 - data/lib/airavata_api_constants.rb +11 -0
 - data/lib/airavata_api_types.rb +34 -0
 - data/lib/airavata_commons_constants.rb +11 -0
 - data/lib/airavata_commons_types.rb +79 -0
 - data/lib/airavata_data_models_constants.rb +9 -0
 - data/lib/airavata_data_models_types.rb +28 -0
 - data/lib/airavata_errors_constants.rb +9 -0
 - data/lib/airavata_errors_types.rb +317 -0
 - data/lib/airavata_workflow_model_constants.rb +9 -0
 - data/lib/airavata_workflow_model_types.rb +335 -0
 - data/lib/application_deployment_model_constants.rb +9 -0
 - data/lib/application_deployment_model_types.rb +186 -0
 - data/lib/application_interface_model_constants.rb +9 -0
 - data/lib/application_interface_model_types.rb +54 -0
 - data/lib/application_io_models_constants.rb +9 -0
 - data/lib/application_io_models_types.rb +160 -0
 - data/lib/base_a_p_i.rb +77 -0
 - data/lib/base_api_constants.rb +9 -0
 - data/lib/base_api_types.rb +8 -0
 - data/lib/compute_resource_model_constants.rb +9 -0
 - data/lib/compute_resource_model_types.rb +470 -0
 - data/lib/credential_store_data_models_constants.rb +11 -0
 - data/lib/credential_store_data_models_types.rb +172 -0
 - data/lib/data_movement_models_constants.rb +9 -0
 - data/lib/data_movement_models_types.rb +199 -0
 - data/lib/db_event_model_constants.rb +9 -0
 - data/lib/db_event_model_types.rb +155 -0
 - data/lib/experiment_model_constants.rb +9 -0
 - data/lib/experiment_model_types.rb +246 -0
 - data/lib/gateway_groups_model_constants.rb +9 -0
 - data/lib/gateway_groups_model_types.rb +34 -0
 - data/lib/gateway_resource_profile_model_constants.rb +9 -0
 - data/lib/gateway_resource_profile_model_types.rb +165 -0
 - data/lib/group_manager_model_constants.rb +9 -0
 - data/lib/group_manager_model_types.rb +58 -0
 - data/lib/group_resource_profile_model_constants.rb +9 -0
 - data/lib/group_resource_profile_model_types.rb +230 -0
 - data/lib/job_model_constants.rb +9 -0
 - data/lib/job_model_types.rb +52 -0
 - data/lib/messaging_events_constants.rb +9 -0
 - data/lib/messaging_events_types.rb +399 -0
 - data/lib/parallelism_model_constants.rb +9 -0
 - data/lib/parallelism_model_types.rb +19 -0
 - data/lib/parser_model_constants.rb +9 -0
 - data/lib/parser_model_types.rb +229 -0
 - data/lib/process_model_constants.rb +9 -0
 - data/lib/process_model_types.rb +113 -0
 - data/lib/replica_catalog_models_constants.rb +9 -0
 - data/lib/replica_catalog_models_types.rb +116 -0
 - data/lib/scheduling_model_constants.rb +9 -0
 - data/lib/scheduling_model_types.rb +49 -0
 - data/lib/security_model_constants.rb +9 -0
 - data/lib/security_model_types.rb +27 -0
 - data/lib/status_models_constants.rb +9 -0
 - data/lib/status_models_types.rb +212 -0
 - data/lib/storage_resource_model_constants.rb +9 -0
 - data/lib/storage_resource_model_types.rb +56 -0
 - data/lib/task_model_constants.rb +9 -0
 - data/lib/task_model_types.rb +197 -0
 - data/lib/tenant_profile_model_constants.rb +9 -0
 - data/lib/tenant_profile_model_types.rb +108 -0
 - data/lib/user_profile_model_constants.rb +11 -0
 - data/lib/user_profile_model_types.rb +300 -0
 - data/lib/user_resource_profile_model_constants.rb +9 -0
 - data/lib/user_resource_profile_model_types.rb +150 -0
 - data/lib/workspace_model_constants.rb +9 -0
 - data/lib/workspace_model_types.rb +230 -0
 - metadata +128 -0
 
| 
         @@ -0,0 +1,246 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #
         
     | 
| 
      
 2 
     | 
    
         
            +
            # Autogenerated by Thrift Compiler (0.10.0)
         
     | 
| 
      
 3 
     | 
    
         
            +
            #
         
     | 
| 
      
 4 
     | 
    
         
            +
            # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
         
     | 
| 
      
 5 
     | 
    
         
            +
            #
         
     | 
| 
      
 6 
     | 
    
         
            +
             
     | 
| 
      
 7 
     | 
    
         
            +
            require 'thrift'
         
     | 
| 
      
 8 
     | 
    
         
            +
            require 'airavata_commons_types'
         
     | 
| 
      
 9 
     | 
    
         
            +
            require 'application_io_models_types'
         
     | 
| 
      
 10 
     | 
    
         
            +
            require 'scheduling_model_types'
         
     | 
| 
      
 11 
     | 
    
         
            +
            require 'status_models_types'
         
     | 
| 
      
 12 
     | 
    
         
            +
            require 'process_model_types'
         
     | 
| 
      
 13 
     | 
    
         
            +
            require 'airavata_workflow_model_types'
         
     | 
| 
      
 14 
     | 
    
         
            +
             
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
            module ExperimentType
         
     | 
| 
      
 17 
     | 
    
         
            +
              SINGLE_APPLICATION = 0
         
     | 
| 
      
 18 
     | 
    
         
            +
              WORKFLOW = 1
         
     | 
| 
      
 19 
     | 
    
         
            +
              VALUE_MAP = {0 => "SINGLE_APPLICATION", 1 => "WORKFLOW"}
         
     | 
| 
      
 20 
     | 
    
         
            +
              VALID_VALUES = Set.new([SINGLE_APPLICATION, WORKFLOW]).freeze
         
     | 
| 
      
 21 
     | 
    
         
            +
            end
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
            module ExperimentSearchFields
         
     | 
| 
      
 24 
     | 
    
         
            +
              EXPERIMENT_NAME = 0
         
     | 
| 
      
 25 
     | 
    
         
            +
              EXPERIMENT_DESC = 1
         
     | 
| 
      
 26 
     | 
    
         
            +
              APPLICATION_ID = 2
         
     | 
| 
      
 27 
     | 
    
         
            +
              FROM_DATE = 3
         
     | 
| 
      
 28 
     | 
    
         
            +
              TO_DATE = 4
         
     | 
| 
      
 29 
     | 
    
         
            +
              STATUS = 5
         
     | 
| 
      
 30 
     | 
    
         
            +
              PROJECT_ID = 6
         
     | 
| 
      
 31 
     | 
    
         
            +
              USER_NAME = 7
         
     | 
| 
      
 32 
     | 
    
         
            +
              JOB_ID = 8
         
     | 
| 
      
 33 
     | 
    
         
            +
              VALUE_MAP = {0 => "EXPERIMENT_NAME", 1 => "EXPERIMENT_DESC", 2 => "APPLICATION_ID", 3 => "FROM_DATE", 4 => "TO_DATE", 5 => "STATUS", 6 => "PROJECT_ID", 7 => "USER_NAME", 8 => "JOB_ID"}
         
     | 
| 
      
 34 
     | 
    
         
            +
              VALID_VALUES = Set.new([EXPERIMENT_NAME, EXPERIMENT_DESC, APPLICATION_ID, FROM_DATE, TO_DATE, STATUS, PROJECT_ID, USER_NAME, JOB_ID]).freeze
         
     | 
| 
      
 35 
     | 
    
         
            +
            end
         
     | 
| 
      
 36 
     | 
    
         
            +
             
     | 
| 
      
 37 
     | 
    
         
            +
            module ProjectSearchFields
         
     | 
| 
      
 38 
     | 
    
         
            +
              PROJECT_NAME = 0
         
     | 
| 
      
 39 
     | 
    
         
            +
              PROJECT_DESCRIPTION = 1
         
     | 
| 
      
 40 
     | 
    
         
            +
              VALUE_MAP = {0 => "PROJECT_NAME", 1 => "PROJECT_DESCRIPTION"}
         
     | 
| 
      
 41 
     | 
    
         
            +
              VALID_VALUES = Set.new([PROJECT_NAME, PROJECT_DESCRIPTION]).freeze
         
     | 
| 
      
 42 
     | 
    
         
            +
            end
         
     | 
| 
      
 43 
     | 
    
         
            +
             
     | 
| 
      
 44 
     | 
    
         
            +
            # A structure holding the experiment configuration.
         
     | 
| 
      
 45 
     | 
    
         
            +
            # 
         
     | 
| 
      
 46 
     | 
    
         
            +
            # 
         
     | 
| 
      
 47 
     | 
    
         
            +
            class UserConfigurationDataModel
         
     | 
| 
      
 48 
     | 
    
         
            +
              include ::Thrift::Struct, ::Thrift::Struct_Union
         
     | 
| 
      
 49 
     | 
    
         
            +
              AIRAVATAAUTOSCHEDULE = 1
         
     | 
| 
      
 50 
     | 
    
         
            +
              OVERRIDEMANUALSCHEDULEDPARAMS = 2
         
     | 
| 
      
 51 
     | 
    
         
            +
              SHAREEXPERIMENTPUBLICLY = 3
         
     | 
| 
      
 52 
     | 
    
         
            +
              COMPUTATIONALRESOURCESCHEDULING = 4
         
     | 
| 
      
 53 
     | 
    
         
            +
              THROTTLERESOURCES = 5
         
     | 
| 
      
 54 
     | 
    
         
            +
              USERDN = 6
         
     | 
| 
      
 55 
     | 
    
         
            +
              GENERATECERT = 7
         
     | 
| 
      
 56 
     | 
    
         
            +
              STORAGEID = 8
         
     | 
| 
      
 57 
     | 
    
         
            +
              EXPERIMENTDATADIR = 9
         
     | 
| 
      
 58 
     | 
    
         
            +
              USEUSERCRPREF = 10
         
     | 
| 
      
 59 
     | 
    
         
            +
              GROUPRESOURCEPROFILEID = 11
         
     | 
| 
      
 60 
     | 
    
         
            +
             
     | 
| 
      
 61 
     | 
    
         
            +
              FIELDS = {
         
     | 
| 
      
 62 
     | 
    
         
            +
                AIRAVATAAUTOSCHEDULE => {:type => ::Thrift::Types::BOOL, :name => 'airavataAutoSchedule', :default => false},
         
     | 
| 
      
 63 
     | 
    
         
            +
                OVERRIDEMANUALSCHEDULEDPARAMS => {:type => ::Thrift::Types::BOOL, :name => 'overrideManualScheduledParams', :default => false},
         
     | 
| 
      
 64 
     | 
    
         
            +
                SHAREEXPERIMENTPUBLICLY => {:type => ::Thrift::Types::BOOL, :name => 'shareExperimentPublicly', :default => false, :optional => true},
         
     | 
| 
      
 65 
     | 
    
         
            +
                COMPUTATIONALRESOURCESCHEDULING => {:type => ::Thrift::Types::STRUCT, :name => 'computationalResourceScheduling', :class => ::ComputationalResourceSchedulingModel, :optional => true},
         
     | 
| 
      
 66 
     | 
    
         
            +
                THROTTLERESOURCES => {:type => ::Thrift::Types::BOOL, :name => 'throttleResources', :default => false, :optional => true},
         
     | 
| 
      
 67 
     | 
    
         
            +
                USERDN => {:type => ::Thrift::Types::STRING, :name => 'userDN', :optional => true},
         
     | 
| 
      
 68 
     | 
    
         
            +
                GENERATECERT => {:type => ::Thrift::Types::BOOL, :name => 'generateCert', :default => false, :optional => true},
         
     | 
| 
      
 69 
     | 
    
         
            +
                STORAGEID => {:type => ::Thrift::Types::STRING, :name => 'storageId', :optional => true},
         
     | 
| 
      
 70 
     | 
    
         
            +
                EXPERIMENTDATADIR => {:type => ::Thrift::Types::STRING, :name => 'experimentDataDir', :optional => true},
         
     | 
| 
      
 71 
     | 
    
         
            +
                USEUSERCRPREF => {:type => ::Thrift::Types::BOOL, :name => 'useUserCRPref', :optional => true},
         
     | 
| 
      
 72 
     | 
    
         
            +
                GROUPRESOURCEPROFILEID => {:type => ::Thrift::Types::STRING, :name => 'groupResourceProfileId', :optional => true}
         
     | 
| 
      
 73 
     | 
    
         
            +
              }
         
     | 
| 
      
 74 
     | 
    
         
            +
             
     | 
| 
      
 75 
     | 
    
         
            +
              def struct_fields; FIELDS; end
         
     | 
| 
      
 76 
     | 
    
         
            +
             
     | 
| 
      
 77 
     | 
    
         
            +
              def validate
         
     | 
| 
      
 78 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field airavataAutoSchedule is unset!') if @airavataAutoSchedule.nil?
         
     | 
| 
      
 79 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field overrideManualScheduledParams is unset!') if @overrideManualScheduledParams.nil?
         
     | 
| 
      
 80 
     | 
    
         
            +
              end
         
     | 
| 
      
 81 
     | 
    
         
            +
             
     | 
| 
      
 82 
     | 
    
         
            +
              ::Thrift::Struct.generate_accessors self
         
     | 
| 
      
 83 
     | 
    
         
            +
            end
         
     | 
| 
      
 84 
     | 
    
         
            +
             
     | 
| 
      
 85 
     | 
    
         
            +
            # A structure holding the experiment metadata and its child models.
         
     | 
| 
      
 86 
     | 
    
         
            +
            # 
         
     | 
| 
      
 87 
     | 
    
         
            +
            # userName:
         
     | 
| 
      
 88 
     | 
    
         
            +
            #   The user name of the targeted gateway end user on whose behalf the experiment is being created.
         
     | 
| 
      
 89 
     | 
    
         
            +
            #     the associated gateway identity can only be inferred from the security hand-shake so as to avoid
         
     | 
| 
      
 90 
     | 
    
         
            +
            #     authorized Airavata Clients mimicking an unauthorized request. If a gateway is not registered with
         
     | 
| 
      
 91 
     | 
    
         
            +
            #     Airavata, an authorization exception is thrown.
         
     | 
| 
      
 92 
     | 
    
         
            +
            # 
         
     | 
| 
      
 93 
     | 
    
         
            +
            # experimentName:
         
     | 
| 
      
 94 
     | 
    
         
            +
            #   The name of the experiment as defined by the user. The name need not be unique as uniqueness is enforced
         
     | 
| 
      
 95 
     | 
    
         
            +
            #      by the generated experiment id.
         
     | 
| 
      
 96 
     | 
    
         
            +
            # 
         
     | 
| 
      
 97 
     | 
    
         
            +
            # experimentDescription:
         
     | 
| 
      
 98 
     | 
    
         
            +
            #    The verbose description of the experiment. This is an optional parameter.
         
     | 
| 
      
 99 
     | 
    
         
            +
            class ExperimentModel
         
     | 
| 
      
 100 
     | 
    
         
            +
              include ::Thrift::Struct, ::Thrift::Struct_Union
         
     | 
| 
      
 101 
     | 
    
         
            +
              EXPERIMENTID = 1
         
     | 
| 
      
 102 
     | 
    
         
            +
              PROJECTID = 2
         
     | 
| 
      
 103 
     | 
    
         
            +
              GATEWAYID = 3
         
     | 
| 
      
 104 
     | 
    
         
            +
              EXPERIMENTTYPE = 4
         
     | 
| 
      
 105 
     | 
    
         
            +
              USERNAME = 5
         
     | 
| 
      
 106 
     | 
    
         
            +
              EXPERIMENTNAME = 6
         
     | 
| 
      
 107 
     | 
    
         
            +
              CREATIONTIME = 7
         
     | 
| 
      
 108 
     | 
    
         
            +
              DESCRIPTION = 8
         
     | 
| 
      
 109 
     | 
    
         
            +
              EXECUTIONID = 9
         
     | 
| 
      
 110 
     | 
    
         
            +
              GATEWAYEXECUTIONID = 10
         
     | 
| 
      
 111 
     | 
    
         
            +
              GATEWAYINSTANCEID = 11
         
     | 
| 
      
 112 
     | 
    
         
            +
              ENABLEEMAILNOTIFICATION = 12
         
     | 
| 
      
 113 
     | 
    
         
            +
              EMAILADDRESSES = 13
         
     | 
| 
      
 114 
     | 
    
         
            +
              USERCONFIGURATIONDATA = 14
         
     | 
| 
      
 115 
     | 
    
         
            +
              EXPERIMENTINPUTS = 15
         
     | 
| 
      
 116 
     | 
    
         
            +
              EXPERIMENTOUTPUTS = 16
         
     | 
| 
      
 117 
     | 
    
         
            +
              EXPERIMENTSTATUS = 17
         
     | 
| 
      
 118 
     | 
    
         
            +
              ERRORS = 18
         
     | 
| 
      
 119 
     | 
    
         
            +
              PROCESSES = 19
         
     | 
| 
      
 120 
     | 
    
         
            +
              WORKFLOW = 20
         
     | 
| 
      
 121 
     | 
    
         
            +
             
     | 
| 
      
 122 
     | 
    
         
            +
              FIELDS = {
         
     | 
| 
      
 123 
     | 
    
         
            +
                EXPERIMENTID => {:type => ::Thrift::Types::STRING, :name => 'experimentId', :default => %q"DO_NOT_SET_AT_CLIENTS"},
         
     | 
| 
      
 124 
     | 
    
         
            +
                PROJECTID => {:type => ::Thrift::Types::STRING, :name => 'projectId'},
         
     | 
| 
      
 125 
     | 
    
         
            +
                GATEWAYID => {:type => ::Thrift::Types::STRING, :name => 'gatewayId'},
         
     | 
| 
      
 126 
     | 
    
         
            +
                EXPERIMENTTYPE => {:type => ::Thrift::Types::I32, :name => 'experimentType', :default =>     0, :enum_class => ::ExperimentType},
         
     | 
| 
      
 127 
     | 
    
         
            +
                USERNAME => {:type => ::Thrift::Types::STRING, :name => 'userName'},
         
     | 
| 
      
 128 
     | 
    
         
            +
                EXPERIMENTNAME => {:type => ::Thrift::Types::STRING, :name => 'experimentName'},
         
     | 
| 
      
 129 
     | 
    
         
            +
                CREATIONTIME => {:type => ::Thrift::Types::I64, :name => 'creationTime', :optional => true},
         
     | 
| 
      
 130 
     | 
    
         
            +
                DESCRIPTION => {:type => ::Thrift::Types::STRING, :name => 'description', :optional => true},
         
     | 
| 
      
 131 
     | 
    
         
            +
                EXECUTIONID => {:type => ::Thrift::Types::STRING, :name => 'executionId', :optional => true},
         
     | 
| 
      
 132 
     | 
    
         
            +
                GATEWAYEXECUTIONID => {:type => ::Thrift::Types::STRING, :name => 'gatewayExecutionId', :optional => true},
         
     | 
| 
      
 133 
     | 
    
         
            +
                GATEWAYINSTANCEID => {:type => ::Thrift::Types::STRING, :name => 'gatewayInstanceId', :optional => true},
         
     | 
| 
      
 134 
     | 
    
         
            +
                ENABLEEMAILNOTIFICATION => {:type => ::Thrift::Types::BOOL, :name => 'enableEmailNotification', :optional => true},
         
     | 
| 
      
 135 
     | 
    
         
            +
                EMAILADDRESSES => {:type => ::Thrift::Types::LIST, :name => 'emailAddresses', :element => {:type => ::Thrift::Types::STRING}, :optional => true},
         
     | 
| 
      
 136 
     | 
    
         
            +
                USERCONFIGURATIONDATA => {:type => ::Thrift::Types::STRUCT, :name => 'userConfigurationData', :class => ::UserConfigurationDataModel, :optional => true},
         
     | 
| 
      
 137 
     | 
    
         
            +
                EXPERIMENTINPUTS => {:type => ::Thrift::Types::LIST, :name => 'experimentInputs', :element => {:type => ::Thrift::Types::STRUCT, :class => ::InputDataObjectType}, :optional => true},
         
     | 
| 
      
 138 
     | 
    
         
            +
                EXPERIMENTOUTPUTS => {:type => ::Thrift::Types::LIST, :name => 'experimentOutputs', :element => {:type => ::Thrift::Types::STRUCT, :class => ::OutputDataObjectType}, :optional => true},
         
     | 
| 
      
 139 
     | 
    
         
            +
                EXPERIMENTSTATUS => {:type => ::Thrift::Types::LIST, :name => 'experimentStatus', :element => {:type => ::Thrift::Types::STRUCT, :class => ::ExperimentStatus}, :optional => true},
         
     | 
| 
      
 140 
     | 
    
         
            +
                ERRORS => {:type => ::Thrift::Types::LIST, :name => 'errors', :element => {:type => ::Thrift::Types::STRUCT, :class => ::ErrorModel}, :optional => true},
         
     | 
| 
      
 141 
     | 
    
         
            +
                PROCESSES => {:type => ::Thrift::Types::LIST, :name => 'processes', :element => {:type => ::Thrift::Types::STRUCT, :class => ::ProcessModel}, :optional => true},
         
     | 
| 
      
 142 
     | 
    
         
            +
                WORKFLOW => {:type => ::Thrift::Types::STRUCT, :name => 'workflow', :class => ::AiravataWorkflow, :optional => true}
         
     | 
| 
      
 143 
     | 
    
         
            +
              }
         
     | 
| 
      
 144 
     | 
    
         
            +
             
     | 
| 
      
 145 
     | 
    
         
            +
              def struct_fields; FIELDS; end
         
     | 
| 
      
 146 
     | 
    
         
            +
             
     | 
| 
      
 147 
     | 
    
         
            +
              def validate
         
     | 
| 
      
 148 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field experimentId is unset!') unless @experimentId
         
     | 
| 
      
 149 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field projectId is unset!') unless @projectId
         
     | 
| 
      
 150 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field gatewayId is unset!') unless @gatewayId
         
     | 
| 
      
 151 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field experimentType is unset!') unless @experimentType
         
     | 
| 
      
 152 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field userName is unset!') unless @userName
         
     | 
| 
      
 153 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field experimentName is unset!') unless @experimentName
         
     | 
| 
      
 154 
     | 
    
         
            +
                unless @experimentType.nil? || ::ExperimentType::VALID_VALUES.include?(@experimentType)
         
     | 
| 
      
 155 
     | 
    
         
            +
                  raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field experimentType!')
         
     | 
| 
      
 156 
     | 
    
         
            +
                end
         
     | 
| 
      
 157 
     | 
    
         
            +
              end
         
     | 
| 
      
 158 
     | 
    
         
            +
             
     | 
| 
      
 159 
     | 
    
         
            +
              ::Thrift::Struct.generate_accessors self
         
     | 
| 
      
 160 
     | 
    
         
            +
            end
         
     | 
| 
      
 161 
     | 
    
         
            +
             
     | 
| 
      
 162 
     | 
    
         
            +
            class ExperimentSummaryModel
         
     | 
| 
      
 163 
     | 
    
         
            +
              include ::Thrift::Struct, ::Thrift::Struct_Union
         
     | 
| 
      
 164 
     | 
    
         
            +
              EXPERIMENTID = 1
         
     | 
| 
      
 165 
     | 
    
         
            +
              PROJECTID = 2
         
     | 
| 
      
 166 
     | 
    
         
            +
              GATEWAYID = 3
         
     | 
| 
      
 167 
     | 
    
         
            +
              CREATIONTIME = 4
         
     | 
| 
      
 168 
     | 
    
         
            +
              USERNAME = 5
         
     | 
| 
      
 169 
     | 
    
         
            +
              NAME = 6
         
     | 
| 
      
 170 
     | 
    
         
            +
              DESCRIPTION = 7
         
     | 
| 
      
 171 
     | 
    
         
            +
              EXECUTIONID = 8
         
     | 
| 
      
 172 
     | 
    
         
            +
              RESOURCEHOSTID = 9
         
     | 
| 
      
 173 
     | 
    
         
            +
              EXPERIMENTSTATUS = 10
         
     | 
| 
      
 174 
     | 
    
         
            +
              STATUSUPDATETIME = 12
         
     | 
| 
      
 175 
     | 
    
         
            +
             
     | 
| 
      
 176 
     | 
    
         
            +
              FIELDS = {
         
     | 
| 
      
 177 
     | 
    
         
            +
                EXPERIMENTID => {:type => ::Thrift::Types::STRING, :name => 'experimentId'},
         
     | 
| 
      
 178 
     | 
    
         
            +
                PROJECTID => {:type => ::Thrift::Types::STRING, :name => 'projectId'},
         
     | 
| 
      
 179 
     | 
    
         
            +
                GATEWAYID => {:type => ::Thrift::Types::STRING, :name => 'gatewayId'},
         
     | 
| 
      
 180 
     | 
    
         
            +
                CREATIONTIME => {:type => ::Thrift::Types::I64, :name => 'creationTime', :optional => true},
         
     | 
| 
      
 181 
     | 
    
         
            +
                USERNAME => {:type => ::Thrift::Types::STRING, :name => 'userName'},
         
     | 
| 
      
 182 
     | 
    
         
            +
                NAME => {:type => ::Thrift::Types::STRING, :name => 'name'},
         
     | 
| 
      
 183 
     | 
    
         
            +
                DESCRIPTION => {:type => ::Thrift::Types::STRING, :name => 'description', :optional => true},
         
     | 
| 
      
 184 
     | 
    
         
            +
                EXECUTIONID => {:type => ::Thrift::Types::STRING, :name => 'executionId', :optional => true},
         
     | 
| 
      
 185 
     | 
    
         
            +
                RESOURCEHOSTID => {:type => ::Thrift::Types::STRING, :name => 'resourceHostId', :optional => true},
         
     | 
| 
      
 186 
     | 
    
         
            +
                EXPERIMENTSTATUS => {:type => ::Thrift::Types::STRING, :name => 'experimentStatus', :optional => true},
         
     | 
| 
      
 187 
     | 
    
         
            +
                STATUSUPDATETIME => {:type => ::Thrift::Types::I64, :name => 'statusUpdateTime', :optional => true}
         
     | 
| 
      
 188 
     | 
    
         
            +
              }
         
     | 
| 
      
 189 
     | 
    
         
            +
             
     | 
| 
      
 190 
     | 
    
         
            +
              def struct_fields; FIELDS; end
         
     | 
| 
      
 191 
     | 
    
         
            +
             
     | 
| 
      
 192 
     | 
    
         
            +
              def validate
         
     | 
| 
      
 193 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field experimentId is unset!') unless @experimentId
         
     | 
| 
      
 194 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field projectId is unset!') unless @projectId
         
     | 
| 
      
 195 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field gatewayId is unset!') unless @gatewayId
         
     | 
| 
      
 196 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field userName is unset!') unless @userName
         
     | 
| 
      
 197 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field name is unset!') unless @name
         
     | 
| 
      
 198 
     | 
    
         
            +
              end
         
     | 
| 
      
 199 
     | 
    
         
            +
             
     | 
| 
      
 200 
     | 
    
         
            +
              ::Thrift::Struct.generate_accessors self
         
     | 
| 
      
 201 
     | 
    
         
            +
            end
         
     | 
| 
      
 202 
     | 
    
         
            +
             
     | 
| 
      
 203 
     | 
    
         
            +
            class ExperimentStatistics
         
     | 
| 
      
 204 
     | 
    
         
            +
              include ::Thrift::Struct, ::Thrift::Struct_Union
         
     | 
| 
      
 205 
     | 
    
         
            +
              ALLEXPERIMENTCOUNT = 1
         
     | 
| 
      
 206 
     | 
    
         
            +
              COMPLETEDEXPERIMENTCOUNT = 2
         
     | 
| 
      
 207 
     | 
    
         
            +
              CANCELLEDEXPERIMENTCOUNT = 3
         
     | 
| 
      
 208 
     | 
    
         
            +
              FAILEDEXPERIMENTCOUNT = 4
         
     | 
| 
      
 209 
     | 
    
         
            +
              CREATEDEXPERIMENTCOUNT = 5
         
     | 
| 
      
 210 
     | 
    
         
            +
              RUNNINGEXPERIMENTCOUNT = 6
         
     | 
| 
      
 211 
     | 
    
         
            +
              ALLEXPERIMENTS = 7
         
     | 
| 
      
 212 
     | 
    
         
            +
              COMPLETEDEXPERIMENTS = 8
         
     | 
| 
      
 213 
     | 
    
         
            +
              FAILEDEXPERIMENTS = 9
         
     | 
| 
      
 214 
     | 
    
         
            +
              CANCELLEDEXPERIMENTS = 10
         
     | 
| 
      
 215 
     | 
    
         
            +
              CREATEDEXPERIMENTS = 11
         
     | 
| 
      
 216 
     | 
    
         
            +
              RUNNINGEXPERIMENTS = 12
         
     | 
| 
      
 217 
     | 
    
         
            +
             
     | 
| 
      
 218 
     | 
    
         
            +
              FIELDS = {
         
     | 
| 
      
 219 
     | 
    
         
            +
                ALLEXPERIMENTCOUNT => {:type => ::Thrift::Types::I32, :name => 'allExperimentCount'},
         
     | 
| 
      
 220 
     | 
    
         
            +
                COMPLETEDEXPERIMENTCOUNT => {:type => ::Thrift::Types::I32, :name => 'completedExperimentCount'},
         
     | 
| 
      
 221 
     | 
    
         
            +
                CANCELLEDEXPERIMENTCOUNT => {:type => ::Thrift::Types::I32, :name => 'cancelledExperimentCount', :optional => true},
         
     | 
| 
      
 222 
     | 
    
         
            +
                FAILEDEXPERIMENTCOUNT => {:type => ::Thrift::Types::I32, :name => 'failedExperimentCount'},
         
     | 
| 
      
 223 
     | 
    
         
            +
                CREATEDEXPERIMENTCOUNT => {:type => ::Thrift::Types::I32, :name => 'createdExperimentCount'},
         
     | 
| 
      
 224 
     | 
    
         
            +
                RUNNINGEXPERIMENTCOUNT => {:type => ::Thrift::Types::I32, :name => 'runningExperimentCount'},
         
     | 
| 
      
 225 
     | 
    
         
            +
                ALLEXPERIMENTS => {:type => ::Thrift::Types::LIST, :name => 'allExperiments', :element => {:type => ::Thrift::Types::STRUCT, :class => ::ExperimentSummaryModel}},
         
     | 
| 
      
 226 
     | 
    
         
            +
                COMPLETEDEXPERIMENTS => {:type => ::Thrift::Types::LIST, :name => 'completedExperiments', :element => {:type => ::Thrift::Types::STRUCT, :class => ::ExperimentSummaryModel}, :optional => true},
         
     | 
| 
      
 227 
     | 
    
         
            +
                FAILEDEXPERIMENTS => {:type => ::Thrift::Types::LIST, :name => 'failedExperiments', :element => {:type => ::Thrift::Types::STRUCT, :class => ::ExperimentSummaryModel}, :optional => true},
         
     | 
| 
      
 228 
     | 
    
         
            +
                CANCELLEDEXPERIMENTS => {:type => ::Thrift::Types::LIST, :name => 'cancelledExperiments', :element => {:type => ::Thrift::Types::STRUCT, :class => ::ExperimentSummaryModel}, :optional => true},
         
     | 
| 
      
 229 
     | 
    
         
            +
                CREATEDEXPERIMENTS => {:type => ::Thrift::Types::LIST, :name => 'createdExperiments', :element => {:type => ::Thrift::Types::STRUCT, :class => ::ExperimentSummaryModel}, :optional => true},
         
     | 
| 
      
 230 
     | 
    
         
            +
                RUNNINGEXPERIMENTS => {:type => ::Thrift::Types::LIST, :name => 'runningExperiments', :element => {:type => ::Thrift::Types::STRUCT, :class => ::ExperimentSummaryModel}, :optional => true}
         
     | 
| 
      
 231 
     | 
    
         
            +
              }
         
     | 
| 
      
 232 
     | 
    
         
            +
             
     | 
| 
      
 233 
     | 
    
         
            +
              def struct_fields; FIELDS; end
         
     | 
| 
      
 234 
     | 
    
         
            +
             
     | 
| 
      
 235 
     | 
    
         
            +
              def validate
         
     | 
| 
      
 236 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field allExperimentCount is unset!') unless @allExperimentCount
         
     | 
| 
      
 237 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field completedExperimentCount is unset!') unless @completedExperimentCount
         
     | 
| 
      
 238 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field failedExperimentCount is unset!') unless @failedExperimentCount
         
     | 
| 
      
 239 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field createdExperimentCount is unset!') unless @createdExperimentCount
         
     | 
| 
      
 240 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field runningExperimentCount is unset!') unless @runningExperimentCount
         
     | 
| 
      
 241 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field allExperiments is unset!') unless @allExperiments
         
     | 
| 
      
 242 
     | 
    
         
            +
              end
         
     | 
| 
      
 243 
     | 
    
         
            +
             
     | 
| 
      
 244 
     | 
    
         
            +
              ::Thrift::Struct.generate_accessors self
         
     | 
| 
      
 245 
     | 
    
         
            +
            end
         
     | 
| 
      
 246 
     | 
    
         
            +
             
     | 
| 
         @@ -0,0 +1,34 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #
         
     | 
| 
      
 2 
     | 
    
         
            +
            # Autogenerated by Thrift Compiler (0.10.0)
         
     | 
| 
      
 3 
     | 
    
         
            +
            #
         
     | 
| 
      
 4 
     | 
    
         
            +
            # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
         
     | 
| 
      
 5 
     | 
    
         
            +
            #
         
     | 
| 
      
 6 
     | 
    
         
            +
             
     | 
| 
      
 7 
     | 
    
         
            +
            require 'thrift'
         
     | 
| 
      
 8 
     | 
    
         
            +
             
     | 
| 
      
 9 
     | 
    
         
            +
            class GatewayGroups
         
     | 
| 
      
 10 
     | 
    
         
            +
              include ::Thrift::Struct, ::Thrift::Struct_Union
         
     | 
| 
      
 11 
     | 
    
         
            +
              GATEWAYID = 1
         
     | 
| 
      
 12 
     | 
    
         
            +
              ADMINSGROUPID = 2
         
     | 
| 
      
 13 
     | 
    
         
            +
              READONLYADMINSGROUPID = 3
         
     | 
| 
      
 14 
     | 
    
         
            +
              DEFAULTGATEWAYUSERSGROUPID = 4
         
     | 
| 
      
 15 
     | 
    
         
            +
             
     | 
| 
      
 16 
     | 
    
         
            +
              FIELDS = {
         
     | 
| 
      
 17 
     | 
    
         
            +
                GATEWAYID => {:type => ::Thrift::Types::STRING, :name => 'gatewayId'},
         
     | 
| 
      
 18 
     | 
    
         
            +
                ADMINSGROUPID => {:type => ::Thrift::Types::STRING, :name => 'adminsGroupId'},
         
     | 
| 
      
 19 
     | 
    
         
            +
                READONLYADMINSGROUPID => {:type => ::Thrift::Types::STRING, :name => 'readOnlyAdminsGroupId'},
         
     | 
| 
      
 20 
     | 
    
         
            +
                DEFAULTGATEWAYUSERSGROUPID => {:type => ::Thrift::Types::STRING, :name => 'defaultGatewayUsersGroupId'}
         
     | 
| 
      
 21 
     | 
    
         
            +
              }
         
     | 
| 
      
 22 
     | 
    
         
            +
             
     | 
| 
      
 23 
     | 
    
         
            +
              def struct_fields; FIELDS; end
         
     | 
| 
      
 24 
     | 
    
         
            +
             
     | 
| 
      
 25 
     | 
    
         
            +
              def validate
         
     | 
| 
      
 26 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field gatewayId is unset!') unless @gatewayId
         
     | 
| 
      
 27 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field adminsGroupId is unset!') unless @adminsGroupId
         
     | 
| 
      
 28 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field readOnlyAdminsGroupId is unset!') unless @readOnlyAdminsGroupId
         
     | 
| 
      
 29 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field defaultGatewayUsersGroupId is unset!') unless @defaultGatewayUsersGroupId
         
     | 
| 
      
 30 
     | 
    
         
            +
              end
         
     | 
| 
      
 31 
     | 
    
         
            +
             
     | 
| 
      
 32 
     | 
    
         
            +
              ::Thrift::Struct.generate_accessors self
         
     | 
| 
      
 33 
     | 
    
         
            +
            end
         
     | 
| 
      
 34 
     | 
    
         
            +
             
     | 
| 
         @@ -0,0 +1,165 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            #
         
     | 
| 
      
 2 
     | 
    
         
            +
            # Autogenerated by Thrift Compiler (0.10.0)
         
     | 
| 
      
 3 
     | 
    
         
            +
            #
         
     | 
| 
      
 4 
     | 
    
         
            +
            # DO NOT EDIT UNLESS YOU ARE SURE THAT YOU KNOW WHAT YOU ARE DOING
         
     | 
| 
      
 5 
     | 
    
         
            +
            #
         
     | 
| 
      
 6 
     | 
    
         
            +
             
     | 
| 
      
 7 
     | 
    
         
            +
            require 'thrift'
         
     | 
| 
      
 8 
     | 
    
         
            +
            require 'compute_resource_model_types'
         
     | 
| 
      
 9 
     | 
    
         
            +
            require 'data_movement_models_types'
         
     | 
| 
      
 10 
     | 
    
         
            +
            require 'account_provisioning_model_types'
         
     | 
| 
      
 11 
     | 
    
         
            +
             
     | 
| 
      
 12 
     | 
    
         
            +
             
     | 
| 
      
 13 
     | 
    
         
            +
            # Gateway specific preferences for a Computer Resource
         
     | 
| 
      
 14 
     | 
    
         
            +
            # 
         
     | 
| 
      
 15 
     | 
    
         
            +
            # computeResourceId:
         
     | 
| 
      
 16 
     | 
    
         
            +
            #   Corelate the preference to a compute resource.
         
     | 
| 
      
 17 
     | 
    
         
            +
            # 
         
     | 
| 
      
 18 
     | 
    
         
            +
            # overridebyAiravata:
         
     | 
| 
      
 19 
     | 
    
         
            +
            #   If turned true, Airavata will override the preferences of better alternatives exist.
         
     | 
| 
      
 20 
     | 
    
         
            +
            # 
         
     | 
| 
      
 21 
     | 
    
         
            +
            # loginUserName:
         
     | 
| 
      
 22 
     | 
    
         
            +
            #   If turned true, Airavata will override the preferences of better alternatives exist.
         
     | 
| 
      
 23 
     | 
    
         
            +
            # 
         
     | 
| 
      
 24 
     | 
    
         
            +
            # preferredJobSubmissionProtocol:
         
     | 
| 
      
 25 
     | 
    
         
            +
            #   For resources with multiple job submission protocols, the gateway can pick a preferred option.
         
     | 
| 
      
 26 
     | 
    
         
            +
            # 
         
     | 
| 
      
 27 
     | 
    
         
            +
            # preferredDataMovementProtocol:
         
     | 
| 
      
 28 
     | 
    
         
            +
            #   For resources with multiple data movement protocols, the gateway can pick a preferred option.
         
     | 
| 
      
 29 
     | 
    
         
            +
            # 
         
     | 
| 
      
 30 
     | 
    
         
            +
            # preferredBatchQueue:
         
     | 
| 
      
 31 
     | 
    
         
            +
            #  Gateways can choose a defualt batch queue based on average job dimention, reservations or other metrics.
         
     | 
| 
      
 32 
     | 
    
         
            +
            # 
         
     | 
| 
      
 33 
     | 
    
         
            +
            # scratchLocation:
         
     | 
| 
      
 34 
     | 
    
         
            +
            #  Path to the local scratch space on a HPC cluster. Typically used to create working directory for job execution.
         
     | 
| 
      
 35 
     | 
    
         
            +
            # 
         
     | 
| 
      
 36 
     | 
    
         
            +
            # allocationProjectNumber:
         
     | 
| 
      
 37 
     | 
    
         
            +
            #  Typically used on HPC machines to charge computing usage to a account number. For instance, on XSEDE once an
         
     | 
| 
      
 38 
     | 
    
         
            +
            #    allocation is approved, an allocation number is assigned. Before passing this number with job submittions, the
         
     | 
| 
      
 39 
     | 
    
         
            +
            #    account to be used has to be added to the allocation.
         
     | 
| 
      
 40 
     | 
    
         
            +
            # 
         
     | 
| 
      
 41 
     | 
    
         
            +
            # resourceSpecificCredentialStoreToken:
         
     | 
| 
      
 42 
     | 
    
         
            +
            #  Resource specific credential store token. If this token is specified, then it is superceeded by the gateway's
         
     | 
| 
      
 43 
     | 
    
         
            +
            #   default credential store.
         
     | 
| 
      
 44 
     | 
    
         
            +
            # 
         
     | 
| 
      
 45 
     | 
    
         
            +
            class ComputeResourcePreference
         
     | 
| 
      
 46 
     | 
    
         
            +
              include ::Thrift::Struct, ::Thrift::Struct_Union
         
     | 
| 
      
 47 
     | 
    
         
            +
              COMPUTERESOURCEID = 1
         
     | 
| 
      
 48 
     | 
    
         
            +
              OVERRIDEBYAIRAVATA = 2
         
     | 
| 
      
 49 
     | 
    
         
            +
              LOGINUSERNAME = 3
         
     | 
| 
      
 50 
     | 
    
         
            +
              PREFERREDJOBSUBMISSIONPROTOCOL = 4
         
     | 
| 
      
 51 
     | 
    
         
            +
              PREFERREDDATAMOVEMENTPROTOCOL = 5
         
     | 
| 
      
 52 
     | 
    
         
            +
              PREFERREDBATCHQUEUE = 6
         
     | 
| 
      
 53 
     | 
    
         
            +
              SCRATCHLOCATION = 7
         
     | 
| 
      
 54 
     | 
    
         
            +
              ALLOCATIONPROJECTNUMBER = 8
         
     | 
| 
      
 55 
     | 
    
         
            +
              RESOURCESPECIFICCREDENTIALSTORETOKEN = 9
         
     | 
| 
      
 56 
     | 
    
         
            +
              USAGEREPORTINGGATEWAYID = 10
         
     | 
| 
      
 57 
     | 
    
         
            +
              QUALITYOFSERVICE = 11
         
     | 
| 
      
 58 
     | 
    
         
            +
              RESERVATION = 12
         
     | 
| 
      
 59 
     | 
    
         
            +
              RESERVATIONSTARTTIME = 13
         
     | 
| 
      
 60 
     | 
    
         
            +
              RESERVATIONENDTIME = 14
         
     | 
| 
      
 61 
     | 
    
         
            +
              SSHACCOUNTPROVISIONER = 15
         
     | 
| 
      
 62 
     | 
    
         
            +
              SSHACCOUNTPROVISIONERCONFIG = 16
         
     | 
| 
      
 63 
     | 
    
         
            +
              SSHACCOUNTPROVISIONERADDITIONALINFO = 17
         
     | 
| 
      
 64 
     | 
    
         
            +
             
     | 
| 
      
 65 
     | 
    
         
            +
              FIELDS = {
         
     | 
| 
      
 66 
     | 
    
         
            +
                COMPUTERESOURCEID => {:type => ::Thrift::Types::STRING, :name => 'computeResourceId'},
         
     | 
| 
      
 67 
     | 
    
         
            +
                OVERRIDEBYAIRAVATA => {:type => ::Thrift::Types::BOOL, :name => 'overridebyAiravata', :default => true},
         
     | 
| 
      
 68 
     | 
    
         
            +
                LOGINUSERNAME => {:type => ::Thrift::Types::STRING, :name => 'loginUserName', :optional => true},
         
     | 
| 
      
 69 
     | 
    
         
            +
                PREFERREDJOBSUBMISSIONPROTOCOL => {:type => ::Thrift::Types::I32, :name => 'preferredJobSubmissionProtocol', :optional => true, :enum_class => ::JobSubmissionProtocol},
         
     | 
| 
      
 70 
     | 
    
         
            +
                PREFERREDDATAMOVEMENTPROTOCOL => {:type => ::Thrift::Types::I32, :name => 'preferredDataMovementProtocol', :optional => true, :enum_class => ::DataMovementProtocol},
         
     | 
| 
      
 71 
     | 
    
         
            +
                PREFERREDBATCHQUEUE => {:type => ::Thrift::Types::STRING, :name => 'preferredBatchQueue', :optional => true},
         
     | 
| 
      
 72 
     | 
    
         
            +
                SCRATCHLOCATION => {:type => ::Thrift::Types::STRING, :name => 'scratchLocation', :optional => true},
         
     | 
| 
      
 73 
     | 
    
         
            +
                ALLOCATIONPROJECTNUMBER => {:type => ::Thrift::Types::STRING, :name => 'allocationProjectNumber', :optional => true},
         
     | 
| 
      
 74 
     | 
    
         
            +
                RESOURCESPECIFICCREDENTIALSTORETOKEN => {:type => ::Thrift::Types::STRING, :name => 'resourceSpecificCredentialStoreToken', :optional => true},
         
     | 
| 
      
 75 
     | 
    
         
            +
                USAGEREPORTINGGATEWAYID => {:type => ::Thrift::Types::STRING, :name => 'usageReportingGatewayId', :optional => true},
         
     | 
| 
      
 76 
     | 
    
         
            +
                QUALITYOFSERVICE => {:type => ::Thrift::Types::STRING, :name => 'qualityOfService', :optional => true},
         
     | 
| 
      
 77 
     | 
    
         
            +
                RESERVATION => {:type => ::Thrift::Types::STRING, :name => 'reservation', :optional => true},
         
     | 
| 
      
 78 
     | 
    
         
            +
                RESERVATIONSTARTTIME => {:type => ::Thrift::Types::I64, :name => 'reservationStartTime', :optional => true},
         
     | 
| 
      
 79 
     | 
    
         
            +
                RESERVATIONENDTIME => {:type => ::Thrift::Types::I64, :name => 'reservationEndTime', :optional => true},
         
     | 
| 
      
 80 
     | 
    
         
            +
                SSHACCOUNTPROVISIONER => {:type => ::Thrift::Types::STRING, :name => 'sshAccountProvisioner', :optional => true},
         
     | 
| 
      
 81 
     | 
    
         
            +
                SSHACCOUNTPROVISIONERCONFIG => {:type => ::Thrift::Types::MAP, :name => 'sshAccountProvisionerConfig', :key => {:type => ::Thrift::Types::STRING}, :value => {:type => ::Thrift::Types::STRING}, :optional => true},
         
     | 
| 
      
 82 
     | 
    
         
            +
                SSHACCOUNTPROVISIONERADDITIONALINFO => {:type => ::Thrift::Types::STRING, :name => 'sshAccountProvisionerAdditionalInfo', :optional => true}
         
     | 
| 
      
 83 
     | 
    
         
            +
              }
         
     | 
| 
      
 84 
     | 
    
         
            +
             
     | 
| 
      
 85 
     | 
    
         
            +
              def struct_fields; FIELDS; end
         
     | 
| 
      
 86 
     | 
    
         
            +
             
     | 
| 
      
 87 
     | 
    
         
            +
              def validate
         
     | 
| 
      
 88 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field computeResourceId is unset!') unless @computeResourceId
         
     | 
| 
      
 89 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field overridebyAiravata is unset!') if @overridebyAiravata.nil?
         
     | 
| 
      
 90 
     | 
    
         
            +
                unless @preferredJobSubmissionProtocol.nil? || ::JobSubmissionProtocol::VALID_VALUES.include?(@preferredJobSubmissionProtocol)
         
     | 
| 
      
 91 
     | 
    
         
            +
                  raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field preferredJobSubmissionProtocol!')
         
     | 
| 
      
 92 
     | 
    
         
            +
                end
         
     | 
| 
      
 93 
     | 
    
         
            +
                unless @preferredDataMovementProtocol.nil? || ::DataMovementProtocol::VALID_VALUES.include?(@preferredDataMovementProtocol)
         
     | 
| 
      
 94 
     | 
    
         
            +
                  raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field preferredDataMovementProtocol!')
         
     | 
| 
      
 95 
     | 
    
         
            +
                end
         
     | 
| 
      
 96 
     | 
    
         
            +
              end
         
     | 
| 
      
 97 
     | 
    
         
            +
             
     | 
| 
      
 98 
     | 
    
         
            +
              ::Thrift::Struct.generate_accessors self
         
     | 
| 
      
 99 
     | 
    
         
            +
            end
         
     | 
| 
      
 100 
     | 
    
         
            +
             
     | 
| 
      
 101 
     | 
    
         
            +
            class StoragePreference
         
     | 
| 
      
 102 
     | 
    
         
            +
              include ::Thrift::Struct, ::Thrift::Struct_Union
         
     | 
| 
      
 103 
     | 
    
         
            +
              STORAGERESOURCEID = 1
         
     | 
| 
      
 104 
     | 
    
         
            +
              LOGINUSERNAME = 2
         
     | 
| 
      
 105 
     | 
    
         
            +
              FILESYSTEMROOTLOCATION = 3
         
     | 
| 
      
 106 
     | 
    
         
            +
              RESOURCESPECIFICCREDENTIALSTORETOKEN = 4
         
     | 
| 
      
 107 
     | 
    
         
            +
             
     | 
| 
      
 108 
     | 
    
         
            +
              FIELDS = {
         
     | 
| 
      
 109 
     | 
    
         
            +
                STORAGERESOURCEID => {:type => ::Thrift::Types::STRING, :name => 'storageResourceId'},
         
     | 
| 
      
 110 
     | 
    
         
            +
                LOGINUSERNAME => {:type => ::Thrift::Types::STRING, :name => 'loginUserName', :optional => true},
         
     | 
| 
      
 111 
     | 
    
         
            +
                FILESYSTEMROOTLOCATION => {:type => ::Thrift::Types::STRING, :name => 'fileSystemRootLocation', :optional => true},
         
     | 
| 
      
 112 
     | 
    
         
            +
                RESOURCESPECIFICCREDENTIALSTORETOKEN => {:type => ::Thrift::Types::STRING, :name => 'resourceSpecificCredentialStoreToken', :optional => true}
         
     | 
| 
      
 113 
     | 
    
         
            +
              }
         
     | 
| 
      
 114 
     | 
    
         
            +
             
     | 
| 
      
 115 
     | 
    
         
            +
              def struct_fields; FIELDS; end
         
     | 
| 
      
 116 
     | 
    
         
            +
             
     | 
| 
      
 117 
     | 
    
         
            +
              def validate
         
     | 
| 
      
 118 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field storageResourceId is unset!') unless @storageResourceId
         
     | 
| 
      
 119 
     | 
    
         
            +
              end
         
     | 
| 
      
 120 
     | 
    
         
            +
             
     | 
| 
      
 121 
     | 
    
         
            +
              ::Thrift::Struct.generate_accessors self
         
     | 
| 
      
 122 
     | 
    
         
            +
            end
         
     | 
| 
      
 123 
     | 
    
         
            +
             
     | 
| 
      
 124 
     | 
    
         
            +
            # Gateway Resource Profile
         
     | 
| 
      
 125 
     | 
    
         
            +
            # 
         
     | 
| 
      
 126 
     | 
    
         
            +
            # gatewayID:
         
     | 
| 
      
 127 
     | 
    
         
            +
            #  Unique identifier for the gateway assigned by Airavata. Corelate this to Airavata Admin API Gateway Registration.
         
     | 
| 
      
 128 
     | 
    
         
            +
            # 
         
     | 
| 
      
 129 
     | 
    
         
            +
            # credentialStoreToken:
         
     | 
| 
      
 130 
     | 
    
         
            +
            #  Gateway's defualt credential store token.
         
     | 
| 
      
 131 
     | 
    
         
            +
            # 
         
     | 
| 
      
 132 
     | 
    
         
            +
            # computeResourcePreferences:
         
     | 
| 
      
 133 
     | 
    
         
            +
            #  List of resource preferences for each of the registered compute resources.
         
     | 
| 
      
 134 
     | 
    
         
            +
            # 
         
     | 
| 
      
 135 
     | 
    
         
            +
            #  identityServerTenant:
         
     | 
| 
      
 136 
     | 
    
         
            +
            # 
         
     | 
| 
      
 137 
     | 
    
         
            +
            #  identityServerPwdCredToken:
         
     | 
| 
      
 138 
     | 
    
         
            +
            # 
         
     | 
| 
      
 139 
     | 
    
         
            +
            class GatewayResourceProfile
         
     | 
| 
      
 140 
     | 
    
         
            +
              include ::Thrift::Struct, ::Thrift::Struct_Union
         
     | 
| 
      
 141 
     | 
    
         
            +
              GATEWAYID = 1
         
     | 
| 
      
 142 
     | 
    
         
            +
              CREDENTIALSTORETOKEN = 2
         
     | 
| 
      
 143 
     | 
    
         
            +
              COMPUTERESOURCEPREFERENCES = 3
         
     | 
| 
      
 144 
     | 
    
         
            +
              STORAGEPREFERENCES = 4
         
     | 
| 
      
 145 
     | 
    
         
            +
              IDENTITYSERVERTENANT = 5
         
     | 
| 
      
 146 
     | 
    
         
            +
              IDENTITYSERVERPWDCREDTOKEN = 6
         
     | 
| 
      
 147 
     | 
    
         
            +
             
     | 
| 
      
 148 
     | 
    
         
            +
              FIELDS = {
         
     | 
| 
      
 149 
     | 
    
         
            +
                GATEWAYID => {:type => ::Thrift::Types::STRING, :name => 'gatewayID'},
         
     | 
| 
      
 150 
     | 
    
         
            +
                CREDENTIALSTORETOKEN => {:type => ::Thrift::Types::STRING, :name => 'credentialStoreToken', :optional => true},
         
     | 
| 
      
 151 
     | 
    
         
            +
                COMPUTERESOURCEPREFERENCES => {:type => ::Thrift::Types::LIST, :name => 'computeResourcePreferences', :element => {:type => ::Thrift::Types::STRUCT, :class => ::ComputeResourcePreference}, :optional => true},
         
     | 
| 
      
 152 
     | 
    
         
            +
                STORAGEPREFERENCES => {:type => ::Thrift::Types::LIST, :name => 'storagePreferences', :element => {:type => ::Thrift::Types::STRUCT, :class => ::StoragePreference}, :optional => true},
         
     | 
| 
      
 153 
     | 
    
         
            +
                IDENTITYSERVERTENANT => {:type => ::Thrift::Types::STRING, :name => 'identityServerTenant', :optional => true},
         
     | 
| 
      
 154 
     | 
    
         
            +
                IDENTITYSERVERPWDCREDTOKEN => {:type => ::Thrift::Types::STRING, :name => 'identityServerPwdCredToken', :optional => true}
         
     | 
| 
      
 155 
     | 
    
         
            +
              }
         
     | 
| 
      
 156 
     | 
    
         
            +
             
     | 
| 
      
 157 
     | 
    
         
            +
              def struct_fields; FIELDS; end
         
     | 
| 
      
 158 
     | 
    
         
            +
             
     | 
| 
      
 159 
     | 
    
         
            +
              def validate
         
     | 
| 
      
 160 
     | 
    
         
            +
                raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field gatewayID is unset!') unless @gatewayID
         
     | 
| 
      
 161 
     | 
    
         
            +
              end
         
     | 
| 
      
 162 
     | 
    
         
            +
             
     | 
| 
      
 163 
     | 
    
         
            +
              ::Thrift::Struct.generate_accessors self
         
     | 
| 
      
 164 
     | 
    
         
            +
            end
         
     | 
| 
      
 165 
     | 
    
         
            +
             
     |