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.
Files changed (82) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +15 -0
  3. data/.rspec +3 -0
  4. data/.travis.yml +6 -0
  5. data/CODE_OF_CONDUCT.md +74 -0
  6. data/Gemfile +11 -0
  7. data/README.md +61 -0
  8. data/Rakefile +6 -0
  9. data/airavata.gemspec +26 -0
  10. data/bin/console +14 -0
  11. data/bin/setup +8 -0
  12. data/lib/account_provisioning_model_constants.rb +9 -0
  13. data/lib/account_provisioning_model_types.rb +69 -0
  14. data/lib/airavata.rb +15774 -0
  15. data/lib/airavata_api_constants.rb +11 -0
  16. data/lib/airavata_api_types.rb +34 -0
  17. data/lib/airavata_commons_constants.rb +11 -0
  18. data/lib/airavata_commons_types.rb +79 -0
  19. data/lib/airavata_data_models_constants.rb +9 -0
  20. data/lib/airavata_data_models_types.rb +28 -0
  21. data/lib/airavata_errors_constants.rb +9 -0
  22. data/lib/airavata_errors_types.rb +317 -0
  23. data/lib/airavata_workflow_model_constants.rb +9 -0
  24. data/lib/airavata_workflow_model_types.rb +335 -0
  25. data/lib/application_deployment_model_constants.rb +9 -0
  26. data/lib/application_deployment_model_types.rb +186 -0
  27. data/lib/application_interface_model_constants.rb +9 -0
  28. data/lib/application_interface_model_types.rb +54 -0
  29. data/lib/application_io_models_constants.rb +9 -0
  30. data/lib/application_io_models_types.rb +160 -0
  31. data/lib/base_a_p_i.rb +77 -0
  32. data/lib/base_api_constants.rb +9 -0
  33. data/lib/base_api_types.rb +8 -0
  34. data/lib/compute_resource_model_constants.rb +9 -0
  35. data/lib/compute_resource_model_types.rb +470 -0
  36. data/lib/credential_store_data_models_constants.rb +11 -0
  37. data/lib/credential_store_data_models_types.rb +172 -0
  38. data/lib/data_movement_models_constants.rb +9 -0
  39. data/lib/data_movement_models_types.rb +199 -0
  40. data/lib/db_event_model_constants.rb +9 -0
  41. data/lib/db_event_model_types.rb +155 -0
  42. data/lib/experiment_model_constants.rb +9 -0
  43. data/lib/experiment_model_types.rb +246 -0
  44. data/lib/gateway_groups_model_constants.rb +9 -0
  45. data/lib/gateway_groups_model_types.rb +34 -0
  46. data/lib/gateway_resource_profile_model_constants.rb +9 -0
  47. data/lib/gateway_resource_profile_model_types.rb +165 -0
  48. data/lib/group_manager_model_constants.rb +9 -0
  49. data/lib/group_manager_model_types.rb +58 -0
  50. data/lib/group_resource_profile_model_constants.rb +9 -0
  51. data/lib/group_resource_profile_model_types.rb +230 -0
  52. data/lib/job_model_constants.rb +9 -0
  53. data/lib/job_model_types.rb +52 -0
  54. data/lib/messaging_events_constants.rb +9 -0
  55. data/lib/messaging_events_types.rb +399 -0
  56. data/lib/parallelism_model_constants.rb +9 -0
  57. data/lib/parallelism_model_types.rb +19 -0
  58. data/lib/parser_model_constants.rb +9 -0
  59. data/lib/parser_model_types.rb +229 -0
  60. data/lib/process_model_constants.rb +9 -0
  61. data/lib/process_model_types.rb +113 -0
  62. data/lib/replica_catalog_models_constants.rb +9 -0
  63. data/lib/replica_catalog_models_types.rb +116 -0
  64. data/lib/scheduling_model_constants.rb +9 -0
  65. data/lib/scheduling_model_types.rb +49 -0
  66. data/lib/security_model_constants.rb +9 -0
  67. data/lib/security_model_types.rb +27 -0
  68. data/lib/status_models_constants.rb +9 -0
  69. data/lib/status_models_types.rb +212 -0
  70. data/lib/storage_resource_model_constants.rb +9 -0
  71. data/lib/storage_resource_model_types.rb +56 -0
  72. data/lib/task_model_constants.rb +9 -0
  73. data/lib/task_model_types.rb +197 -0
  74. data/lib/tenant_profile_model_constants.rb +9 -0
  75. data/lib/tenant_profile_model_types.rb +108 -0
  76. data/lib/user_profile_model_constants.rb +11 -0
  77. data/lib/user_profile_model_types.rb +300 -0
  78. data/lib/user_resource_profile_model_constants.rb +9 -0
  79. data/lib/user_resource_profile_model_types.rb +150 -0
  80. data/lib/workspace_model_constants.rb +9 -0
  81. data/lib/workspace_model_types.rb +230 -0
  82. metadata +128 -0
@@ -0,0 +1,11 @@
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 'credential_store_data_models_types'
9
+
10
+ DEFAULT_ID = %q"DO_NOT_SET_AT_CLIENTS"
11
+
@@ -0,0 +1,172 @@
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
+ module SummaryType
10
+ SSH = 0
11
+ PASSWD = 1
12
+ CERT = 2
13
+ VALUE_MAP = {0 => "SSH", 1 => "PASSWD", 2 => "CERT"}
14
+ VALID_VALUES = Set.new([SSH, PASSWD, CERT]).freeze
15
+ end
16
+
17
+ class SSHCredential
18
+ include ::Thrift::Struct, ::Thrift::Struct_Union
19
+ GATEWAYID = 1
20
+ USERNAME = 2
21
+ PASSPHRASE = 3
22
+ PUBLICKEY = 4
23
+ PRIVATEKEY = 5
24
+ PERSISTEDTIME = 6
25
+ TOKEN = 7
26
+ DESCRIPTION = 8
27
+
28
+ FIELDS = {
29
+ GATEWAYID => {:type => ::Thrift::Types::STRING, :name => 'gatewayId'},
30
+ USERNAME => {:type => ::Thrift::Types::STRING, :name => 'username'},
31
+ PASSPHRASE => {:type => ::Thrift::Types::STRING, :name => 'passphrase', :optional => true},
32
+ PUBLICKEY => {:type => ::Thrift::Types::STRING, :name => 'publicKey', :optional => true},
33
+ PRIVATEKEY => {:type => ::Thrift::Types::STRING, :name => 'privateKey', :optional => true},
34
+ PERSISTEDTIME => {:type => ::Thrift::Types::I64, :name => 'persistedTime', :optional => true},
35
+ TOKEN => {:type => ::Thrift::Types::STRING, :name => 'token', :optional => true},
36
+ DESCRIPTION => {:type => ::Thrift::Types::STRING, :name => 'description', :optional => true}
37
+ }
38
+
39
+ def struct_fields; FIELDS; end
40
+
41
+ def validate
42
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field gatewayId is unset!') unless @gatewayId
43
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field username is unset!') unless @username
44
+ end
45
+
46
+ ::Thrift::Struct.generate_accessors self
47
+ end
48
+
49
+ class CredentialSummary
50
+ include ::Thrift::Struct, ::Thrift::Struct_Union
51
+ TYPE = 1
52
+ GATEWAYID = 2
53
+ USERNAME = 3
54
+ PUBLICKEY = 4
55
+ PERSISTEDTIME = 5
56
+ TOKEN = 6
57
+ DESCRIPTION = 7
58
+
59
+ FIELDS = {
60
+ TYPE => {:type => ::Thrift::Types::I32, :name => 'type', :enum_class => ::SummaryType},
61
+ GATEWAYID => {:type => ::Thrift::Types::STRING, :name => 'gatewayId'},
62
+ # The username corresponds to the Credential's `portalUserName` which is the username of the user that
63
+ # created the credential.
64
+ USERNAME => {:type => ::Thrift::Types::STRING, :name => 'username'},
65
+ PUBLICKEY => {:type => ::Thrift::Types::STRING, :name => 'publicKey', :optional => true},
66
+ PERSISTEDTIME => {:type => ::Thrift::Types::I64, :name => 'persistedTime', :optional => true},
67
+ TOKEN => {:type => ::Thrift::Types::STRING, :name => 'token'},
68
+ DESCRIPTION => {:type => ::Thrift::Types::STRING, :name => 'description', :optional => true}
69
+ }
70
+
71
+ def struct_fields; FIELDS; end
72
+
73
+ def validate
74
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field type is unset!') unless @type
75
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field gatewayId is unset!') unless @gatewayId
76
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field username is unset!') unless @username
77
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field token is unset!') unless @token
78
+ unless @type.nil? || ::SummaryType::VALID_VALUES.include?(@type)
79
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field type!')
80
+ end
81
+ end
82
+
83
+ ::Thrift::Struct.generate_accessors self
84
+ end
85
+
86
+ class CommunityUser
87
+ include ::Thrift::Struct, ::Thrift::Struct_Union
88
+ GATEWAYNAME = 1
89
+ USERNAME = 2
90
+ USEREMAIL = 3
91
+
92
+ FIELDS = {
93
+ GATEWAYNAME => {:type => ::Thrift::Types::STRING, :name => 'gatewayName'},
94
+ USERNAME => {:type => ::Thrift::Types::STRING, :name => 'username'},
95
+ USEREMAIL => {:type => ::Thrift::Types::STRING, :name => 'userEmail'}
96
+ }
97
+
98
+ def struct_fields; FIELDS; end
99
+
100
+ def validate
101
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field gatewayName is unset!') unless @gatewayName
102
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field username is unset!') unless @username
103
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field userEmail is unset!') unless @userEmail
104
+ end
105
+
106
+ ::Thrift::Struct.generate_accessors self
107
+ end
108
+
109
+ class CertificateCredential
110
+ include ::Thrift::Struct, ::Thrift::Struct_Union
111
+ COMMUNITYUSER = 1
112
+ X509CERT = 2
113
+ NOTAFTER = 3
114
+ PRIVATEKEY = 4
115
+ LIFETIME = 5
116
+ NOTBEFORE = 6
117
+ PERSISTEDTIME = 7
118
+ TOKEN = 8
119
+
120
+ FIELDS = {
121
+ COMMUNITYUSER => {:type => ::Thrift::Types::STRUCT, :name => 'communityUser', :class => ::CommunityUser},
122
+ X509CERT => {:type => ::Thrift::Types::STRING, :name => 'x509Cert'},
123
+ NOTAFTER => {:type => ::Thrift::Types::STRING, :name => 'notAfter', :optional => true},
124
+ PRIVATEKEY => {:type => ::Thrift::Types::STRING, :name => 'privateKey', :optional => true},
125
+ LIFETIME => {:type => ::Thrift::Types::I64, :name => 'lifeTime', :optional => true},
126
+ NOTBEFORE => {:type => ::Thrift::Types::STRING, :name => 'notBefore', :optional => true},
127
+ PERSISTEDTIME => {:type => ::Thrift::Types::I64, :name => 'persistedTime', :optional => true},
128
+ TOKEN => {:type => ::Thrift::Types::STRING, :name => 'token', :optional => true}
129
+ }
130
+
131
+ def struct_fields; FIELDS; end
132
+
133
+ def validate
134
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field communityUser is unset!') unless @communityUser
135
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field x509Cert is unset!') unless @x509Cert
136
+ end
137
+
138
+ ::Thrift::Struct.generate_accessors self
139
+ end
140
+
141
+ class PasswordCredential
142
+ include ::Thrift::Struct, ::Thrift::Struct_Union
143
+ GATEWAYID = 1
144
+ PORTALUSERNAME = 2
145
+ LOGINUSERNAME = 3
146
+ PASSWORD = 4
147
+ DESCRIPTION = 5
148
+ PERSISTEDTIME = 6
149
+ TOKEN = 7
150
+
151
+ FIELDS = {
152
+ GATEWAYID => {:type => ::Thrift::Types::STRING, :name => 'gatewayId'},
153
+ PORTALUSERNAME => {:type => ::Thrift::Types::STRING, :name => 'portalUserName'},
154
+ LOGINUSERNAME => {:type => ::Thrift::Types::STRING, :name => 'loginUserName'},
155
+ PASSWORD => {:type => ::Thrift::Types::STRING, :name => 'password'},
156
+ DESCRIPTION => {:type => ::Thrift::Types::STRING, :name => 'description', :optional => true},
157
+ PERSISTEDTIME => {:type => ::Thrift::Types::I64, :name => 'persistedTime', :optional => true},
158
+ TOKEN => {:type => ::Thrift::Types::STRING, :name => 'token', :optional => true}
159
+ }
160
+
161
+ def struct_fields; FIELDS; end
162
+
163
+ def validate
164
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field gatewayId is unset!') unless @gatewayId
165
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field portalUserName is unset!') unless @portalUserName
166
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field loginUserName is unset!') unless @loginUserName
167
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field password is unset!') unless @password
168
+ end
169
+
170
+ ::Thrift::Struct.generate_accessors self
171
+ end
172
+
@@ -0,0 +1,9 @@
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 'data_movement_models_types'
9
+
@@ -0,0 +1,199 @@
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
+
10
+
11
+ module DMType
12
+ COMPUTE_RESOURCE = 0
13
+ STORAGE_RESOURCE = 1
14
+ VALUE_MAP = {0 => "COMPUTE_RESOURCE", 1 => "STORAGE_RESOURCE"}
15
+ VALID_VALUES = Set.new([COMPUTE_RESOURCE, STORAGE_RESOURCE]).freeze
16
+ end
17
+
18
+ module SecurityProtocol
19
+ USERNAME_PASSWORD = 0
20
+ SSH_KEYS = 1
21
+ GSI = 2
22
+ KERBEROS = 3
23
+ OAUTH = 4
24
+ LOCAL = 5
25
+ VALUE_MAP = {0 => "USERNAME_PASSWORD", 1 => "SSH_KEYS", 2 => "GSI", 3 => "KERBEROS", 4 => "OAUTH", 5 => "LOCAL"}
26
+ VALID_VALUES = Set.new([USERNAME_PASSWORD, SSH_KEYS, GSI, KERBEROS, OAUTH, LOCAL]).freeze
27
+ end
28
+
29
+ module DataMovementProtocol
30
+ LOCAL = 0
31
+ SCP = 1
32
+ SFTP = 2
33
+ GridFTP = 3
34
+ UNICORE_STORAGE_SERVICE = 4
35
+ VALUE_MAP = {0 => "LOCAL", 1 => "SCP", 2 => "SFTP", 3 => "GridFTP", 4 => "UNICORE_STORAGE_SERVICE"}
36
+ VALID_VALUES = Set.new([LOCAL, SCP, SFTP, GridFTP, UNICORE_STORAGE_SERVICE]).freeze
37
+ end
38
+
39
+ # Data Movement through Secured Copy
40
+ #
41
+ # alternativeSCPHostName:
42
+ # If the login to scp is different than the hostname itself, specify it here
43
+ #
44
+ # sshPort:
45
+ # If a non-default port needs to used, specify it.
46
+ class SCPDataMovement
47
+ include ::Thrift::Struct, ::Thrift::Struct_Union
48
+ DATAMOVEMENTINTERFACEID = 1
49
+ SECURITYPROTOCOL = 2
50
+ ALTERNATIVESCPHOSTNAME = 3
51
+ SSHPORT = 4
52
+
53
+ FIELDS = {
54
+ DATAMOVEMENTINTERFACEID => {:type => ::Thrift::Types::STRING, :name => 'dataMovementInterfaceId', :default => %q"DO_NOT_SET_AT_CLIENTS"},
55
+ SECURITYPROTOCOL => {:type => ::Thrift::Types::I32, :name => 'securityProtocol', :enum_class => ::SecurityProtocol},
56
+ ALTERNATIVESCPHOSTNAME => {:type => ::Thrift::Types::STRING, :name => 'alternativeSCPHostName', :optional => true},
57
+ SSHPORT => {:type => ::Thrift::Types::I32, :name => 'sshPort', :default => 22, :optional => true}
58
+ }
59
+
60
+ def struct_fields; FIELDS; end
61
+
62
+ def validate
63
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field dataMovementInterfaceId is unset!') unless @dataMovementInterfaceId
64
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field securityProtocol is unset!') unless @securityProtocol
65
+ unless @securityProtocol.nil? || ::SecurityProtocol::VALID_VALUES.include?(@securityProtocol)
66
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field securityProtocol!')
67
+ end
68
+ end
69
+
70
+ ::Thrift::Struct.generate_accessors self
71
+ end
72
+
73
+ # Data Movement through GridFTP
74
+ #
75
+ # alternativeSCPHostName:
76
+ # If the login to scp is different than the hostname itself, specify it here
77
+ #
78
+ # sshPort:
79
+ # If a non-default port needs to used, specify it.
80
+ class GridFTPDataMovement
81
+ include ::Thrift::Struct, ::Thrift::Struct_Union
82
+ DATAMOVEMENTINTERFACEID = 1
83
+ SECURITYPROTOCOL = 2
84
+ GRIDFTPENDPOINTS = 3
85
+
86
+ FIELDS = {
87
+ DATAMOVEMENTINTERFACEID => {:type => ::Thrift::Types::STRING, :name => 'dataMovementInterfaceId', :default => %q"DO_NOT_SET_AT_CLIENTS"},
88
+ SECURITYPROTOCOL => {:type => ::Thrift::Types::I32, :name => 'securityProtocol', :enum_class => ::SecurityProtocol},
89
+ GRIDFTPENDPOINTS => {:type => ::Thrift::Types::LIST, :name => 'gridFTPEndPoints', :element => {:type => ::Thrift::Types::STRING}}
90
+ }
91
+
92
+ def struct_fields; FIELDS; end
93
+
94
+ def validate
95
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field dataMovementInterfaceId is unset!') unless @dataMovementInterfaceId
96
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field securityProtocol is unset!') unless @securityProtocol
97
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field gridFTPEndPoints is unset!') unless @gridFTPEndPoints
98
+ unless @securityProtocol.nil? || ::SecurityProtocol::VALID_VALUES.include?(@securityProtocol)
99
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field securityProtocol!')
100
+ end
101
+ end
102
+
103
+ ::Thrift::Struct.generate_accessors self
104
+ end
105
+
106
+ # Data Movement through UnicoreStorage
107
+ #
108
+ # unicoreEndPointURL:
109
+ # unicoreGateway End Point. The provider will query this service to fetch required service end points.
110
+ class UnicoreDataMovement
111
+ include ::Thrift::Struct, ::Thrift::Struct_Union
112
+ DATAMOVEMENTINTERFACEID = 1
113
+ SECURITYPROTOCOL = 2
114
+ UNICOREENDPOINTURL = 3
115
+
116
+ FIELDS = {
117
+ DATAMOVEMENTINTERFACEID => {:type => ::Thrift::Types::STRING, :name => 'dataMovementInterfaceId', :default => %q"DO_NOT_SET_AT_CLIENTS"},
118
+ SECURITYPROTOCOL => {:type => ::Thrift::Types::I32, :name => 'securityProtocol', :enum_class => ::SecurityProtocol},
119
+ UNICOREENDPOINTURL => {:type => ::Thrift::Types::STRING, :name => 'unicoreEndPointURL'}
120
+ }
121
+
122
+ def struct_fields; FIELDS; end
123
+
124
+ def validate
125
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field dataMovementInterfaceId is unset!') unless @dataMovementInterfaceId
126
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field securityProtocol is unset!') unless @securityProtocol
127
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field unicoreEndPointURL is unset!') unless @unicoreEndPointURL
128
+ unless @securityProtocol.nil? || ::SecurityProtocol::VALID_VALUES.include?(@securityProtocol)
129
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field securityProtocol!')
130
+ end
131
+ end
132
+
133
+ ::Thrift::Struct.generate_accessors self
134
+ end
135
+
136
+ # LOCAL
137
+ #
138
+ # alternativeSCPHostName:
139
+ # If the login to scp is different than the hostname itself, specify it here
140
+ #
141
+ # sshPort:
142
+ # If a non-defualt port needs to used, specify it.
143
+ class LOCALDataMovement
144
+ include ::Thrift::Struct, ::Thrift::Struct_Union
145
+ DATAMOVEMENTINTERFACEID = 1
146
+
147
+ FIELDS = {
148
+ DATAMOVEMENTINTERFACEID => {:type => ::Thrift::Types::STRING, :name => 'dataMovementInterfaceId', :default => %q"DO_NOT_SET_AT_CLIENTS"}
149
+ }
150
+
151
+ def struct_fields; FIELDS; end
152
+
153
+ def validate
154
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field dataMovementInterfaceId is unset!') unless @dataMovementInterfaceId
155
+ end
156
+
157
+ ::Thrift::Struct.generate_accessors self
158
+ end
159
+
160
+ # Data Movement Interfaces
161
+ #
162
+ # dataMovementInterfaceId: The Data Movement Interface has to be previously registered and referenced here.
163
+ #
164
+ # priorityOrder:
165
+ # For resources with multiple interfaces, the priority order should be selected.
166
+ # Lower the numerical number, higher the priority
167
+ #
168
+ class DataMovementInterface
169
+ include ::Thrift::Struct, ::Thrift::Struct_Union
170
+ DATAMOVEMENTINTERFACEID = 1
171
+ DATAMOVEMENTPROTOCOL = 2
172
+ PRIORITYORDER = 3
173
+ CREATIONTIME = 4
174
+ UPDATETIME = 5
175
+ STORAGERESOURCEID = 6
176
+
177
+ FIELDS = {
178
+ DATAMOVEMENTINTERFACEID => {:type => ::Thrift::Types::STRING, :name => 'dataMovementInterfaceId'},
179
+ DATAMOVEMENTPROTOCOL => {:type => ::Thrift::Types::I32, :name => 'dataMovementProtocol', :enum_class => ::DataMovementProtocol},
180
+ PRIORITYORDER => {:type => ::Thrift::Types::I32, :name => 'priorityOrder', :default => 0},
181
+ CREATIONTIME => {:type => ::Thrift::Types::I64, :name => 'creationTime', :optional => true},
182
+ UPDATETIME => {:type => ::Thrift::Types::I64, :name => 'updateTime', :optional => true},
183
+ STORAGERESOURCEID => {:type => ::Thrift::Types::STRING, :name => 'storageResourceId', :optional => true}
184
+ }
185
+
186
+ def struct_fields; FIELDS; end
187
+
188
+ def validate
189
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field dataMovementInterfaceId is unset!') unless @dataMovementInterfaceId
190
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field dataMovementProtocol is unset!') unless @dataMovementProtocol
191
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field priorityOrder is unset!') unless @priorityOrder
192
+ unless @dataMovementProtocol.nil? || ::DataMovementProtocol::VALID_VALUES.include?(@dataMovementProtocol)
193
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field dataMovementProtocol!')
194
+ end
195
+ end
196
+
197
+ ::Thrift::Struct.generate_accessors self
198
+ end
199
+
@@ -0,0 +1,9 @@
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 'db_event_model_types'
9
+
@@ -0,0 +1,155 @@
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
+ module CrudType
10
+ CREATE = 0
11
+ READ = 1
12
+ UPDATE = 2
13
+ DELETE = 3
14
+ VALUE_MAP = {0 => "CREATE", 1 => "READ", 2 => "UPDATE", 3 => "DELETE"}
15
+ VALID_VALUES = Set.new([CREATE, READ, UPDATE, DELETE]).freeze
16
+ end
17
+
18
+ module EntityType
19
+ USER_PROFILE = 0
20
+ TENANT = 1
21
+ GROUP = 2
22
+ PROJECT = 3
23
+ EXPERIMENT = 4
24
+ APPLICATION = 5
25
+ SHARING = 6
26
+ REGISTRY = 7
27
+ VALUE_MAP = {0 => "USER_PROFILE", 1 => "TENANT", 2 => "GROUP", 3 => "PROJECT", 4 => "EXPERIMENT", 5 => "APPLICATION", 6 => "SHARING", 7 => "REGISTRY"}
28
+ VALID_VALUES = Set.new([USER_PROFILE, TENANT, GROUP, PROJECT, EXPERIMENT, APPLICATION, SHARING, REGISTRY]).freeze
29
+ end
30
+
31
+ module DBEventType
32
+ PUBLISHER = 0
33
+ SUBSCRIBER = 1
34
+ VALUE_MAP = {0 => "PUBLISHER", 1 => "SUBSCRIBER"}
35
+ VALID_VALUES = Set.new([PUBLISHER, SUBSCRIBER]).freeze
36
+ end
37
+
38
+ class DBEventPublisherContext
39
+ include ::Thrift::Struct, ::Thrift::Struct_Union
40
+ CRUDTYPE = 1
41
+ ENTITYTYPE = 2
42
+ ENTITYDATAMODEL = 3
43
+
44
+ FIELDS = {
45
+ CRUDTYPE => {:type => ::Thrift::Types::I32, :name => 'crudType', :enum_class => ::CrudType},
46
+ ENTITYTYPE => {:type => ::Thrift::Types::I32, :name => 'entityType', :enum_class => ::EntityType},
47
+ ENTITYDATAMODEL => {:type => ::Thrift::Types::STRING, :name => 'entityDataModel', :binary => true}
48
+ }
49
+
50
+ def struct_fields; FIELDS; end
51
+
52
+ def validate
53
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field crudType is unset!') unless @crudType
54
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field entityType is unset!') unless @entityType
55
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field entityDataModel is unset!') unless @entityDataModel
56
+ unless @crudType.nil? || ::CrudType::VALID_VALUES.include?(@crudType)
57
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field crudType!')
58
+ end
59
+ unless @entityType.nil? || ::EntityType::VALID_VALUES.include?(@entityType)
60
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field entityType!')
61
+ end
62
+ end
63
+
64
+ ::Thrift::Struct.generate_accessors self
65
+ end
66
+
67
+ class DBEventPublisher
68
+ include ::Thrift::Struct, ::Thrift::Struct_Union
69
+ PUBLISHERCONTEXT = 1
70
+
71
+ FIELDS = {
72
+ PUBLISHERCONTEXT => {:type => ::Thrift::Types::STRUCT, :name => 'publisherContext', :class => ::DBEventPublisherContext}
73
+ }
74
+
75
+ def struct_fields; FIELDS; end
76
+
77
+ def validate
78
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field publisherContext is unset!') unless @publisherContext
79
+ end
80
+
81
+ ::Thrift::Struct.generate_accessors self
82
+ end
83
+
84
+ class DBEventSubscriber
85
+ include ::Thrift::Struct, ::Thrift::Struct_Union
86
+ SUBSCRIBERSERVICE = 1
87
+
88
+ FIELDS = {
89
+ SUBSCRIBERSERVICE => {:type => ::Thrift::Types::STRING, :name => 'subscriberService'}
90
+ }
91
+
92
+ def struct_fields; FIELDS; end
93
+
94
+ def validate
95
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field subscriberService is unset!') unless @subscriberService
96
+ end
97
+
98
+ ::Thrift::Struct.generate_accessors self
99
+ end
100
+
101
+ class DBEventMessageContext < ::Thrift::Union
102
+ include ::Thrift::Struct_Union
103
+ class << self
104
+ def publisher(val)
105
+ DBEventMessageContext.new(:publisher, val)
106
+ end
107
+
108
+ def subscriber(val)
109
+ DBEventMessageContext.new(:subscriber, val)
110
+ end
111
+ end
112
+
113
+ PUBLISHER = 1
114
+ SUBSCRIBER = 2
115
+
116
+ FIELDS = {
117
+ PUBLISHER => {:type => ::Thrift::Types::STRUCT, :name => 'publisher', :class => ::DBEventPublisher, :optional => true},
118
+ SUBSCRIBER => {:type => ::Thrift::Types::STRUCT, :name => 'subscriber', :class => ::DBEventSubscriber, :optional => true}
119
+ }
120
+
121
+ def struct_fields; FIELDS; end
122
+
123
+ def validate
124
+ raise(StandardError, 'Union fields are not set.') if get_set_field.nil? || get_value.nil?
125
+ end
126
+
127
+ ::Thrift::Union.generate_accessors self
128
+ end
129
+
130
+ class DBEventMessage
131
+ include ::Thrift::Struct, ::Thrift::Struct_Union
132
+ DBEVENTTYPE = 1
133
+ MESSAGECONTEXT = 2
134
+ PUBLISHERSERVICE = 3
135
+
136
+ FIELDS = {
137
+ DBEVENTTYPE => {:type => ::Thrift::Types::I32, :name => 'dbEventType', :enum_class => ::DBEventType},
138
+ MESSAGECONTEXT => {:type => ::Thrift::Types::STRUCT, :name => 'messageContext', :class => ::DBEventMessageContext},
139
+ PUBLISHERSERVICE => {:type => ::Thrift::Types::STRING, :name => 'publisherService'}
140
+ }
141
+
142
+ def struct_fields; FIELDS; end
143
+
144
+ def validate
145
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field dbEventType is unset!') unless @dbEventType
146
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field messageContext is unset!') unless @messageContext
147
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Required field publisherService is unset!') unless @publisherService
148
+ unless @dbEventType.nil? || ::DBEventType::VALID_VALUES.include?(@dbEventType)
149
+ raise ::Thrift::ProtocolException.new(::Thrift::ProtocolException::UNKNOWN, 'Invalid value of field dbEventType!')
150
+ end
151
+ end
152
+
153
+ ::Thrift::Struct.generate_accessors self
154
+ end
155
+