Class: Megam::Assembly
- Defined in:
- lib/megam/core/assembly.rb
Instance Attribute Summary
Attributes inherited from ServerAPI
Class Method Summary collapse
- .from_hash(o, tmp_email = nil, tmp_api_key = nil) ⇒ Object
- .json_create(o) ⇒ Object
- .show(assembly_id, tmp_email = nil, tmp_api_key = nil) ⇒ Object
- .update(o, tmp_email = nil, tmp_api_key = nil) ⇒ Object
Instance Method Summary collapse
- #assembly ⇒ Object
- #components(arg = []) ⇒ Object
- #created_at(arg = nil) ⇒ Object
- #error? ⇒ Boolean
- #for_json ⇒ Object
- #from_hash(o) ⇒ Object
- #id(arg = nil) ⇒ Object
-
#initialize(email = nil, api_key = nil) ⇒ Assembly
constructor
A new instance of Assembly.
- #inputs(arg = []) ⇒ Object
- #name(arg = nil) ⇒ Object
- #operations(arg = nil) ⇒ Object
- #outputs(arg = []) ⇒ Object
- #policies(arg = []) ⇒ Object
- #status(arg = nil) ⇒ Object
-
#to_hash ⇒ Object
Transform the ruby obj -> to a Hash.
-
#to_json(*a) ⇒ Object
Serialize this object as a hash: called from JsonCompat.
- #to_s ⇒ Object
- #tosca_type(arg = nil) ⇒ Object
-
#update ⇒ Object
Create the node via the REST API.
Methods inherited from ServerAPI
Constructor Details
#initialize(email = nil, api_key = nil) ⇒ Assembly
Returns a new instance of Assembly.
19 20 21 22 23 24 25 26 27 28 29 30 31 |
# File 'lib/megam/core/assembly.rb', line 19 def initialize(email=nil, api_key=nil) @id = nil @name = nil @tosca_type = nil @components = [] @policies=[] @inputs = [] @operations = nil @outputs = [] @status = nil @created_at = nil super(email, api_key) end |
Class Method Details
.from_hash(o, tmp_email = nil, tmp_api_key = nil) ⇒ Object
176 177 178 179 180 |
# File 'lib/megam/core/assembly.rb', line 176 def self.from_hash(o,tmp_email=nil, tmp_api_key=nil) asm = self.new(tmp_email, tmp_api_key) asm.from_hash(o) asm end |
.json_create(o) ⇒ Object
161 162 163 164 165 166 167 168 169 170 171 172 173 174 |
# File 'lib/megam/core/assembly.rb', line 161 def self.json_create(o) asm = new asm.id(o["id"]) if o.has_key?("id") asm.name(o["name"]) if o.has_key?("name") asm.tosca_type(o["tosca_type"]) if o.has_key?("tosca_type") asm.components(o["components"]) if o.has_key?("components") asm.policies(o["policies"]) if o.has_key?("policies") #this will be an array? can hash store array? asm.inputs(o["inputs"]) if o.has_key?("inputs") asm.operations(o["operations"]) if o.has_key?("operations") asm.outputs(o["outputs"]) if o.has_key?("outputs") asm.status(o["status"]) if o.has_key?("status") asm.created_at(o["created_at"]) if o.has_key?("created_at") asm end |
.show(assembly_id, tmp_email = nil, tmp_api_key = nil) ⇒ Object
197 198 199 200 |
# File 'lib/megam/core/assembly.rb', line 197 def self.show(assembly_id, tmp_email=nil, tmp_api_key=nil) asm = self.new(tmp_email, tmp_api_key) asm.megam_rest.get_one_assembly(assembly_id) end |
.update(o, tmp_email = nil, tmp_api_key = nil) ⇒ Object
202 203 204 205 |
# File 'lib/megam/core/assembly.rb', line 202 def self.update(o,tmp_email=nil, tmp_api_key=nil) asm = from_hash(o, tmp_email, tmp_api_key) asm.update end |
Instance Method Details
#assembly ⇒ Object
33 34 35 |
# File 'lib/megam/core/assembly.rb', line 33 def assembly self end |
#components(arg = []) ⇒ Object
61 62 63 64 65 66 67 |
# File 'lib/megam/core/assembly.rb', line 61 def components(arg=[]) if arg != [] @components = arg else @components end end |
#created_at(arg = nil) ⇒ Object
109 110 111 112 113 114 115 |
# File 'lib/megam/core/assembly.rb', line 109 def created_at(arg=nil) if arg != nil @created_at = arg else @created_at end end |
#error? ⇒ Boolean
117 118 119 |
# File 'lib/megam/core/assembly.rb', line 117 def error? crocked = true if (some_msg.has_key?(:msg_type) && some_msg[:msg_type] == "error") end |
#for_json ⇒ Object
144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 |
# File 'lib/megam/core/assembly.rb', line 144 def for_json result = { "id" => id, "name" => name, "tosca_type" => tosca_type, "components" => components, "policies" => policies, "inputs" => inputs, "operations" => operations, "outputs" => outputs, "status" => status, "created_at" => created_at } result end |
#from_hash(o) ⇒ Object
182 183 184 185 186 187 188 189 190 191 192 193 194 |
# File 'lib/megam/core/assembly.rb', line 182 def from_hash(o) @id = o["id"] if o.has_key?("id") @name = o["name"] if o.has_key?("name") @tosca_type = o["tosca_type"] if o.has_key?("tosca_type") @components = o["components"] if o.has_key?("components") @policies = o["policies"] if o.has_key?("policies") @inputs = o["inputs"] if o.has_key?("inputs") @operations = o["operations"] if o.has_key?("operations") @outputs = o["outputs"] if o.has_key?("outputs") @status = o["status"] if o.has_key?("status") @created_at = o["created_at"] if o.has_key?("created_at") self end |
#id(arg = nil) ⇒ Object
37 38 39 40 41 42 43 |
# File 'lib/megam/core/assembly.rb', line 37 def id(arg=nil) if arg != nil @id = arg else @id end end |
#inputs(arg = []) ⇒ Object
77 78 79 80 81 82 83 |
# File 'lib/megam/core/assembly.rb', line 77 def inputs(arg=[]) if arg != [] @inputs = arg else @inputs end end |
#name(arg = nil) ⇒ Object
45 46 47 48 49 50 51 |
# File 'lib/megam/core/assembly.rb', line 45 def name(arg=nil) if arg != nil @name = arg else @name end end |
#operations(arg = nil) ⇒ Object
85 86 87 88 89 90 91 |
# File 'lib/megam/core/assembly.rb', line 85 def operations(arg=nil) if arg != nil @operations = arg else @operations end end |
#outputs(arg = []) ⇒ Object
93 94 95 96 97 98 99 |
# File 'lib/megam/core/assembly.rb', line 93 def outputs(arg=[]) if arg != [] @outputs = arg else @outputs end end |
#policies(arg = []) ⇒ Object
69 70 71 72 73 74 75 |
# File 'lib/megam/core/assembly.rb', line 69 def policies(arg=[]) if arg != [] @policies = arg else @policies end end |
#status(arg = nil) ⇒ Object
101 102 103 104 105 106 107 |
# File 'lib/megam/core/assembly.rb', line 101 def status(arg=nil) if arg != nil @status = arg else @status end end |
#to_hash ⇒ Object
Transform the ruby obj -> to a Hash
122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 |
# File 'lib/megam/core/assembly.rb', line 122 def to_hash index_hash = Hash.new index_hash["json_claz"] = self.class.name index_hash["id"] = id index_hash["name"] = name index_hash["tosca_type"] = tosca_type index_hash["components"] = components index_hash["policies"] = policies index_hash["inputs"] = inputs index_hash["operations"] = operations index_hash["outputs"] = outputs index_hash["status"] = status index_hash["created_at"] = created_at index_hash end |
#to_json(*a) ⇒ Object
Serialize this object as a hash: called from JsonCompat. Verify if this called from JsonCompat during testing.
140 141 142 |
# File 'lib/megam/core/assembly.rb', line 140 def to_json(*a) for_json.to_json(*a) end |
#to_s ⇒ Object
212 213 214 |
# File 'lib/megam/core/assembly.rb', line 212 def to_s Megam::Stuff.styled_hash(to_hash) end |
#tosca_type(arg = nil) ⇒ Object
53 54 55 56 57 58 59 |
# File 'lib/megam/core/assembly.rb', line 53 def tosca_type(arg=nil) if arg != nil @tosca_type = arg else @tosca_type end end |
#update ⇒ Object
Create the node via the REST API
208 209 210 |
# File 'lib/megam/core/assembly.rb', line 208 def update megam_rest.update_assembly(to_hash) end |