apcera 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (71) hide show
  1. checksums.yaml +7 -0
  2. data/apcera.gemspec +31 -0
  3. data/lib/apcera/api/default_api.rb +128 -0
  4. data/lib/apcera/api/instances_api.rb +280 -0
  5. data/lib/apcera/api/jobs_api.rb +1428 -0
  6. data/lib/apcera/api/logs_api.rb +120 -0
  7. data/lib/apcera/api/metrics_api.rb +280 -0
  8. data/lib/apcera/api/packages_api.rb +541 -0
  9. data/lib/apcera/api/providers_api.rb +175 -0
  10. data/lib/apcera/api/rules_api.rb +228 -0
  11. data/lib/apcera/api/services_and_bindings_api.rb +278 -0
  12. data/lib/apcera/api/staging_pipelines_api.rb +281 -0
  13. data/lib/apcera/api/utilities_api.rb +327 -0
  14. data/lib/apcera/api_client.rb +294 -0
  15. data/lib/apcera/api_error.rb +24 -0
  16. data/lib/apcera/configuration.rb +173 -0
  17. data/lib/apcera/models/apc_version_object.rb +37 -0
  18. data/lib/apcera/models/api_error.rb +143 -0
  19. data/lib/apcera/models/audit_log_item.rb +117 -0
  20. data/lib/apcera/models/audit_log_item_old.rb +85 -0
  21. data/lib/apcera/models/base_object.rb +96 -0
  22. data/lib/apcera/models/binding.rb +137 -0
  23. data/lib/apcera/models/create_docker_job_request.rb +197 -0
  24. data/lib/apcera/models/create_docker_job_response.rb +37 -0
  25. data/lib/apcera/models/dependency.rb +53 -0
  26. data/lib/apcera/models/dependency_resolve.rb +45 -0
  27. data/lib/apcera/models/docker_origin.rb +63 -0
  28. data/lib/apcera/models/drain.rb +61 -0
  29. data/lib/apcera/models/drain_config.rb +53 -0
  30. data/lib/apcera/models/file_listing.rb +45 -0
  31. data/lib/apcera/models/info.rb +53 -0
  32. data/lib/apcera/models/instance_manager.rb +105 -0
  33. data/lib/apcera/models/instance_state.rb +117 -0
  34. data/lib/apcera/models/instances.rb +109 -0
  35. data/lib/apcera/models/job.rb +243 -0
  36. data/lib/apcera/models/job_health.rb +63 -0
  37. data/lib/apcera/models/job_preferences.rb +37 -0
  38. data/lib/apcera/models/log.rb +53 -0
  39. data/lib/apcera/models/metric_series.rb +49 -0
  40. data/lib/apcera/models/metric_series_hash.rb +29 -0
  41. data/lib/apcera/models/metrics.rb +49 -0
  42. data/lib/apcera/models/namespace.rb +37 -0
  43. data/lib/apcera/models/package.rb +183 -0
  44. data/lib/apcera/models/package_depends_request.rb +47 -0
  45. data/lib/apcera/models/package_info.rb +69 -0
  46. data/lib/apcera/models/package_resource.rb +61 -0
  47. data/lib/apcera/models/policy_error.rb +63 -0
  48. data/lib/apcera/models/port.rb +55 -0
  49. data/lib/apcera/models/process.rb +37 -0
  50. data/lib/apcera/models/process_object.rb +115 -0
  51. data/lib/apcera/models/provide.rb +53 -0
  52. data/lib/apcera/models/provider.rb +85 -0
  53. data/lib/apcera/models/resource.rb +69 -0
  54. data/lib/apcera/models/restart_config.rb +53 -0
  55. data/lib/apcera/models/rollout_config.rb +69 -0
  56. data/lib/apcera/models/route.rb +53 -0
  57. data/lib/apcera/models/rule.rb +101 -0
  58. data/lib/apcera/models/runtime.rb +47 -0
  59. data/lib/apcera/models/semi_pipe_rule.rb +101 -0
  60. data/lib/apcera/models/semi_pipe_rule_action.rb +37 -0
  61. data/lib/apcera/models/stager_job.rb +37 -0
  62. data/lib/apcera/models/staging_pipeline.rb +103 -0
  63. data/lib/apcera/models/sub_task.rb +61 -0
  64. data/lib/apcera/models/task.rb +87 -0
  65. data/lib/apcera/models/task_event.rb +113 -0
  66. data/lib/apcera/models/task_progress.rb +45 -0
  67. data/lib/apcera/models/unbind_parameter_object.rb +53 -0
  68. data/lib/apcera/models/unlink_parameter_object.rb +53 -0
  69. data/lib/apcera/version.rb +3 -0
  70. data/lib/apcera.rb +90 -0
  71. metadata +293 -0
@@ -0,0 +1,85 @@
1
+ module Apcera
2
+ #
3
+ class Provider < BaseObject
4
+ attr_accessor :backing_job_fqn, :backing_job_port, :description, :fqn, :name, :type, :uuid
5
+ # attribute mapping from ruby-style variable name to JSON key
6
+ def self.attribute_map
7
+ {
8
+
9
+ # Backing job&#39;s FQN.
10
+ :'backing_job_fqn' => :'backing_job_fqn',
11
+
12
+ # Backing job&#39;s port.
13
+ :'backing_job_port' => :'backing_job_port',
14
+
15
+ # Provider description.
16
+ :'description' => :'description',
17
+
18
+ # Provider FQN (Fully Qualified Name).
19
+ :'fqn' => :'fqn',
20
+
21
+ # Provider name.
22
+ :'name' => :'name',
23
+
24
+ # Provider type (e.g. mysql, posgres).
25
+ :'type' => :'type',
26
+
27
+ # Provider UUID.
28
+ :'uuid' => :'uuid'
29
+
30
+ }
31
+ end
32
+
33
+ # attribute type
34
+ def self.swagger_types
35
+ {
36
+ :'backing_job_fqn' => :'String',
37
+ :'backing_job_port' => :'String',
38
+ :'description' => :'String',
39
+ :'fqn' => :'String',
40
+ :'name' => :'String',
41
+ :'type' => :'String',
42
+ :'uuid' => :'String'
43
+
44
+ }
45
+ end
46
+
47
+ def initialize(attributes = {})
48
+ return if !attributes.is_a?(Hash) || attributes.empty?
49
+
50
+ # convert string to symbol for hash key
51
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
52
+
53
+
54
+ if attributes[:'backing_job_fqn']
55
+ self.backing_job_fqn = attributes[:'backing_job_fqn']
56
+ end
57
+
58
+ if attributes[:'backing_job_port']
59
+ self.backing_job_port = attributes[:'backing_job_port']
60
+ end
61
+
62
+ if attributes[:'description']
63
+ self.description = attributes[:'description']
64
+ end
65
+
66
+ if attributes[:'fqn']
67
+ self.fqn = attributes[:'fqn']
68
+ end
69
+
70
+ if attributes[:'name']
71
+ self.name = attributes[:'name']
72
+ end
73
+
74
+ if attributes[:'type']
75
+ self.type = attributes[:'type']
76
+ end
77
+
78
+ if attributes[:'uuid']
79
+ self.uuid = attributes[:'uuid']
80
+ end
81
+
82
+ end
83
+
84
+ end
85
+ end
@@ -0,0 +1,69 @@
1
+ module Apcera
2
+ #
3
+ class Resource < BaseObject
4
+ attr_accessor :cpu, :disk, :memory, :netmax, :network
5
+ # attribute mapping from ruby-style variable name to JSON key
6
+ def self.attribute_map
7
+ {
8
+
9
+ # Milliseconds of CPU time per second of physical time allocated to the job. May be greater than 1000ms/second in cases where time is across multiple cores.
10
+ :'cpu' => :'cpu',
11
+
12
+ # Amount of disk space allocated to the job, in MB.
13
+ :'disk' => :'disk',
14
+
15
+ # Memory allocated to job, in MB.
16
+ :'memory' => :'memory',
17
+
18
+ # Maximum amount of network throughput (ceiling) allowed, in Mbps.
19
+ :'netmax' => :'netmax',
20
+
21
+ # Amount of network throughput (floor) allocated to the job, in Mbps.
22
+ :'network' => :'network'
23
+
24
+ }
25
+ end
26
+
27
+ # attribute type
28
+ def self.swagger_types
29
+ {
30
+ :'cpu' => :'Integer',
31
+ :'disk' => :'Integer',
32
+ :'memory' => :'Integer',
33
+ :'netmax' => :'Integer',
34
+ :'network' => :'Integer'
35
+
36
+ }
37
+ end
38
+
39
+ def initialize(attributes = {})
40
+ return if !attributes.is_a?(Hash) || attributes.empty?
41
+
42
+ # convert string to symbol for hash key
43
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
44
+
45
+
46
+ if attributes[:'cpu']
47
+ self.cpu = attributes[:'cpu']
48
+ end
49
+
50
+ if attributes[:'disk']
51
+ self.disk = attributes[:'disk']
52
+ end
53
+
54
+ if attributes[:'memory']
55
+ self.memory = attributes[:'memory']
56
+ end
57
+
58
+ if attributes[:'netmax']
59
+ self.netmax = attributes[:'netmax']
60
+ end
61
+
62
+ if attributes[:'network']
63
+ self.network = attributes[:'network']
64
+ end
65
+
66
+ end
67
+
68
+ end
69
+ end
@@ -0,0 +1,53 @@
1
+ module Apcera
2
+ #
3
+ class RestartConfig < BaseObject
4
+ attr_accessor :maximum_attempts, :restart_mode
5
+ # attribute mapping from ruby-style variable name to JSON key
6
+ def self.attribute_map
7
+ {
8
+
9
+ # The maximum number of restart attempts per instance, applies to `always` and `failure` restart modes. If set to 0 restarts are not limited.
10
+ :'maximum_attempts' => :'maximum_attempts',
11
+
12
+ # The restart mode to use. Valid values are `always` (always restart), `no` (never restart), and `failure` (only restart on application failure).
13
+ :'restart_mode' => :'restart_mode'
14
+
15
+ }
16
+ end
17
+
18
+ # attribute type
19
+ def self.swagger_types
20
+ {
21
+ :'maximum_attempts' => :'Integer',
22
+ :'restart_mode' => :'String'
23
+
24
+ }
25
+ end
26
+
27
+ def initialize(attributes = {})
28
+ return if !attributes.is_a?(Hash) || attributes.empty?
29
+
30
+ # convert string to symbol for hash key
31
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
32
+
33
+
34
+ if attributes[:'maximum_attempts']
35
+ self.maximum_attempts = attributes[:'maximum_attempts']
36
+ end
37
+
38
+ if attributes[:'restart_mode']
39
+ self.restart_mode = attributes[:'restart_mode']
40
+ end
41
+
42
+ end
43
+
44
+ def restart_mode=(restart_mode)
45
+ allowed_values = ["always", "no", "failure"]
46
+ if restart_mode && !allowed_values.include?(restart_mode)
47
+ fail "invalid value for 'restart_mode', must be one of #{allowed_values}"
48
+ end
49
+ @restart_mode = restart_mode
50
+ end
51
+
52
+ end
53
+ end
@@ -0,0 +1,69 @@
1
+ module Apcera
2
+ #
3
+ class RolloutConfig < BaseObject
4
+ attr_accessor :errored_state_window, :flapping_minimum_restarts, :flapping_percent, :flapping_window, :force_stop_old_instances_after
5
+ # attribute mapping from ruby-style variable name to JSON key
6
+ def self.attribute_map
7
+ {
8
+
9
+ # The number of seconds a job should be cycling between flapping states before being considered in an errored state and stop attempting any restarts.
10
+ :'errored_state_window' => :'errored_state_window',
11
+
12
+ # The minimum number of tasks that must have failed in order to trigger a flapping state.
13
+ :'flapping_minimum_restarts' => :'flapping_minimum_restarts',
14
+
15
+ # The number of instances that must have restarted in a given window for flapping to kick in.
16
+ :'flapping_percent' => :'flapping_percent',
17
+
18
+ # The number of seconds over which the job&#39;s flapping window operates.
19
+ :'flapping_window' => :'flapping_window',
20
+
21
+ # If this field is non-zero then it will be used to represent how long an old version of a job is allowed to exist in the cluster. If this is zero then no fixed length is established and updates will be applied by starting a new version and then only when that instance is running will the old instance be killed.
22
+ :'force_stop_old_instances_after' => :'force_stop_old_instances_after'
23
+
24
+ }
25
+ end
26
+
27
+ # attribute type
28
+ def self.swagger_types
29
+ {
30
+ :'errored_state_window' => :'Integer',
31
+ :'flapping_minimum_restarts' => :'Integer',
32
+ :'flapping_percent' => :'Float',
33
+ :'flapping_window' => :'Integer',
34
+ :'force_stop_old_instances_after' => :'Integer'
35
+
36
+ }
37
+ end
38
+
39
+ def initialize(attributes = {})
40
+ return if !attributes.is_a?(Hash) || attributes.empty?
41
+
42
+ # convert string to symbol for hash key
43
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
44
+
45
+
46
+ if attributes[:'errored_state_window']
47
+ self.errored_state_window = attributes[:'errored_state_window']
48
+ end
49
+
50
+ if attributes[:'flapping_minimum_restarts']
51
+ self.flapping_minimum_restarts = attributes[:'flapping_minimum_restarts']
52
+ end
53
+
54
+ if attributes[:'flapping_percent']
55
+ self.flapping_percent = attributes[:'flapping_percent']
56
+ end
57
+
58
+ if attributes[:'flapping_window']
59
+ self.flapping_window = attributes[:'flapping_window']
60
+ end
61
+
62
+ if attributes[:'force_stop_old_instances_after']
63
+ self.force_stop_old_instances_after = attributes[:'force_stop_old_instances_after']
64
+ end
65
+
66
+ end
67
+
68
+ end
69
+ end
@@ -0,0 +1,53 @@
1
+ module Apcera
2
+ #
3
+ class Route < BaseObject
4
+ attr_accessor :endpoint, :type, :weight
5
+ # attribute mapping from ruby-style variable name to JSON key
6
+ def self.attribute_map
7
+ {
8
+
9
+ # The URI where the traffic should being routed to. For HTTP routes, the value should contain the route&#39;s host and path; for TCP routes, the value should take the form of \&quot;ip:port\&quot;.
10
+ :'endpoint' => :'endpoint',
11
+
12
+ # The type of route. Valid values are `http` or `tcp`.
13
+ :'type' => :'type',
14
+
15
+ # A value between 0 and 1 that specifies the route&#39;s weight, which is used to balance incoming traffic across apps that share the route. Weights are not on a specific scale; weights of all routes for a given job are normalized.
16
+ :'weight' => :'weight'
17
+
18
+ }
19
+ end
20
+
21
+ # attribute type
22
+ def self.swagger_types
23
+ {
24
+ :'endpoint' => :'String',
25
+ :'type' => :'String',
26
+ :'weight' => :'Float'
27
+
28
+ }
29
+ end
30
+
31
+ def initialize(attributes = {})
32
+ return if !attributes.is_a?(Hash) || attributes.empty?
33
+
34
+ # convert string to symbol for hash key
35
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
36
+
37
+
38
+ if attributes[:'endpoint']
39
+ self.endpoint = attributes[:'endpoint']
40
+ end
41
+
42
+ if attributes[:'type']
43
+ self.type = attributes[:'type']
44
+ end
45
+
46
+ if attributes[:'weight']
47
+ self.weight = attributes[:'weight']
48
+ end
49
+
50
+ end
51
+
52
+ end
53
+ end
@@ -0,0 +1,101 @@
1
+ module Apcera
2
+ #
3
+ class Rule < BaseObject
4
+ attr_accessor :action, :created_at, :created_by, :fqn, :job, :provider, :service, :type, :version_id
5
+ # attribute mapping from ruby-style variable name to JSON key
6
+ def self.attribute_map
7
+ {
8
+
9
+ # The type of action to take when the rule is triggered. Can either by &#39;hook&#39; or &#39;notification&#39;.
10
+ :'action' => :'action',
11
+
12
+ # UNIX timestamp when event rule was created.
13
+ :'created_at' => :'created_at',
14
+
15
+ # Principal name of user who created the event rule.
16
+ :'created_by' => :'created_by',
17
+
18
+ # The rule&#39;s fully-qualified name against which policy may be enforced.
19
+ :'fqn' => :'fqn',
20
+
21
+ # FQN of the job to enforce the rule against.
22
+ :'job' => :'job',
23
+
24
+ # FQN of the provider to enforce this rule against. In only `provider` is populated for this rule, then all semantic pipelines consuming a provider matching this FQN will have the rule enforced against them.
25
+ :'provider' => :'provider',
26
+
27
+ # FQN of the service to enforce this rule against. If only `service` is populated for this rule, then all semantic pipelines consuming a service matching this FQN will have the rule enforced against them.
28
+ :'service' => :'service',
29
+
30
+ # Type depends upon specified `action` of event rule, and can specify the timing of the hook firing.
31
+ :'type' => :'type',
32
+
33
+ # Rule&#39;s auto-incremented version number.
34
+ :'version_id' => :'version_id'
35
+
36
+ }
37
+ end
38
+
39
+ # attribute type
40
+ def self.swagger_types
41
+ {
42
+ :'action' => :'String',
43
+ :'created_at' => :'Float',
44
+ :'created_by' => :'String',
45
+ :'fqn' => :'String',
46
+ :'job' => :'String',
47
+ :'provider' => :'String',
48
+ :'service' => :'String',
49
+ :'type' => :'String',
50
+ :'version_id' => :'Integer'
51
+
52
+ }
53
+ end
54
+
55
+ def initialize(attributes = {})
56
+ return if !attributes.is_a?(Hash) || attributes.empty?
57
+
58
+ # convert string to symbol for hash key
59
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
60
+
61
+
62
+ if attributes[:'action']
63
+ self.action = attributes[:'action']
64
+ end
65
+
66
+ if attributes[:'created_at']
67
+ self.created_at = attributes[:'created_at']
68
+ end
69
+
70
+ if attributes[:'created_by']
71
+ self.created_by = attributes[:'created_by']
72
+ end
73
+
74
+ if attributes[:'fqn']
75
+ self.fqn = attributes[:'fqn']
76
+ end
77
+
78
+ if attributes[:'job']
79
+ self.job = attributes[:'job']
80
+ end
81
+
82
+ if attributes[:'provider']
83
+ self.provider = attributes[:'provider']
84
+ end
85
+
86
+ if attributes[:'service']
87
+ self.service = attributes[:'service']
88
+ end
89
+
90
+ if attributes[:'type']
91
+ self.type = attributes[:'type']
92
+ end
93
+
94
+ if attributes[:'version_id']
95
+ self.version_id = attributes[:'version_id']
96
+ end
97
+
98
+ end
99
+
100
+ end
101
+ end
@@ -0,0 +1,47 @@
1
+ module Apcera
2
+ #
3
+ class Runtime < BaseObject
4
+ attr_accessor :patterns, :runtime
5
+ # attribute mapping from ruby-style variable name to JSON key
6
+ def self.attribute_map
7
+ {
8
+
9
+ # An array of file names or patterns used to select the appropriate runtime.
10
+ :'patterns' => :'patterns',
11
+
12
+ # Identfies the runtime (for example, \&quot;bash\&quot;, or \&quot;perl\&quot;).
13
+ :'runtime' => :'runtime'
14
+
15
+ }
16
+ end
17
+
18
+ # attribute type
19
+ def self.swagger_types
20
+ {
21
+ :'patterns' => :'Array<String>',
22
+ :'runtime' => :'String'
23
+
24
+ }
25
+ end
26
+
27
+ def initialize(attributes = {})
28
+ return if !attributes.is_a?(Hash) || attributes.empty?
29
+
30
+ # convert string to symbol for hash key
31
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
32
+
33
+
34
+ if attributes[:'patterns']
35
+ if (value = attributes[:'patterns']).is_a?(Array)
36
+ self.patterns = value
37
+ end
38
+ end
39
+
40
+ if attributes[:'runtime']
41
+ self.runtime = attributes[:'runtime']
42
+ end
43
+
44
+ end
45
+
46
+ end
47
+ end
@@ -0,0 +1,101 @@
1
+ module Apcera
2
+ #
3
+ class SemiPipeRule < BaseObject
4
+ attr_accessor :action, :created_at, :created_by, :job, :name, :provider, :service, :type, :uuid
5
+ # attribute mapping from ruby-style variable name to JSON key
6
+ def self.attribute_map
7
+ {
8
+
9
+ #
10
+ :'action' => :'action',
11
+
12
+ # Date-time when rule was created.
13
+ :'created_at' => :'created_at',
14
+
15
+ # User that created the rule.
16
+ :'created_by' => :'created_by',
17
+
18
+ # Specific job that rule applies to.
19
+ :'job' => :'job',
20
+
21
+ # Rule name.
22
+ :'name' => :'name',
23
+
24
+ # Provider used to provision the service, if any.
25
+ :'provider' => :'provider',
26
+
27
+ # FQN of service to which the rule applies.
28
+ :'service' => :'service',
29
+
30
+ # Rule type.
31
+ :'type' => :'type',
32
+
33
+ # Rule&#39;s unique identifier.
34
+ :'uuid' => :'uuid'
35
+
36
+ }
37
+ end
38
+
39
+ # attribute type
40
+ def self.swagger_types
41
+ {
42
+ :'action' => :'SemiPipeRuleAction',
43
+ :'created_at' => :'DateTime',
44
+ :'created_by' => :'String',
45
+ :'job' => :'String',
46
+ :'name' => :'String',
47
+ :'provider' => :'String',
48
+ :'service' => :'String',
49
+ :'type' => :'Integer',
50
+ :'uuid' => :'String'
51
+
52
+ }
53
+ end
54
+
55
+ def initialize(attributes = {})
56
+ return if !attributes.is_a?(Hash) || attributes.empty?
57
+
58
+ # convert string to symbol for hash key
59
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
60
+
61
+
62
+ if attributes[:'action']
63
+ self.action = attributes[:'action']
64
+ end
65
+
66
+ if attributes[:'created_at']
67
+ self.created_at = attributes[:'created_at']
68
+ end
69
+
70
+ if attributes[:'created_by']
71
+ self.created_by = attributes[:'created_by']
72
+ end
73
+
74
+ if attributes[:'job']
75
+ self.job = attributes[:'job']
76
+ end
77
+
78
+ if attributes[:'name']
79
+ self.name = attributes[:'name']
80
+ end
81
+
82
+ if attributes[:'provider']
83
+ self.provider = attributes[:'provider']
84
+ end
85
+
86
+ if attributes[:'service']
87
+ self.service = attributes[:'service']
88
+ end
89
+
90
+ if attributes[:'type']
91
+ self.type = attributes[:'type']
92
+ end
93
+
94
+ if attributes[:'uuid']
95
+ self.uuid = attributes[:'uuid']
96
+ end
97
+
98
+ end
99
+
100
+ end
101
+ end
@@ -0,0 +1,37 @@
1
+ module Apcera
2
+ #
3
+ class SemiPipeRuleAction < BaseObject
4
+ attr_accessor :dummy
5
+ # attribute mapping from ruby-style variable name to JSON key
6
+ def self.attribute_map
7
+ {
8
+
9
+ #
10
+ :'dummy' => :'dummy'
11
+
12
+ }
13
+ end
14
+
15
+ # attribute type
16
+ def self.swagger_types
17
+ {
18
+ :'dummy' => :'String'
19
+
20
+ }
21
+ end
22
+
23
+ def initialize(attributes = {})
24
+ return if !attributes.is_a?(Hash) || attributes.empty?
25
+
26
+ # convert string to symbol for hash key
27
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
28
+
29
+
30
+ if attributes[:'dummy']
31
+ self.dummy = attributes[:'dummy']
32
+ end
33
+
34
+ end
35
+
36
+ end
37
+ end
@@ -0,0 +1,37 @@
1
+ module Apcera
2
+ #
3
+ class StagerJob < BaseObject
4
+ attr_accessor :uuid
5
+ # attribute mapping from ruby-style variable name to JSON key
6
+ def self.attribute_map
7
+ {
8
+
9
+ #
10
+ :'uuid' => :'uuid'
11
+
12
+ }
13
+ end
14
+
15
+ # attribute type
16
+ def self.swagger_types
17
+ {
18
+ :'uuid' => :'String'
19
+
20
+ }
21
+ end
22
+
23
+ def initialize(attributes = {})
24
+ return if !attributes.is_a?(Hash) || attributes.empty?
25
+
26
+ # convert string to symbol for hash key
27
+ attributes = attributes.inject({}){|memo,(k,v)| memo[k.to_sym] = v; memo}
28
+
29
+
30
+ if attributes[:'uuid']
31
+ self.uuid = attributes[:'uuid']
32
+ end
33
+
34
+ end
35
+
36
+ end
37
+ end