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(params) ⇒ Object
- .update(params) ⇒ 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
- #requirements(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 32 |
# File 'lib/megam/core/assembly.rb', line 19 def initialize(email=nil, api_key=nil) @id = nil @name = nil @tosca_type = nil @components = [] @requirements = [] @policies=[] @inputs = [] @operations = [] @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
188 189 190 191 192 |
# File 'lib/megam/core/assembly.rb', line 188 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
172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 |
# File 'lib/megam/core/assembly.rb', line 172 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.requirements(o["requirements"]) if o.has_key?("requirements") 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(params) ⇒ Object
210 211 212 213 |
# File 'lib/megam/core/assembly.rb', line 210 def self.show(params) asm = self.new(params["email"], params["api_key"]) asm.megam_rest.get_one_assembly(params["id"]) end |
.update(params) ⇒ Object
215 216 217 218 |
# File 'lib/megam/core/assembly.rb', line 215 def self.update(params) asm = from_hash(params, params["email"], params["api_key"]) asm.update end |
Instance Method Details
#assembly ⇒ Object
34 35 36 |
# File 'lib/megam/core/assembly.rb', line 34 def assembly self end |
#components(arg = []) ⇒ Object
62 63 64 65 66 67 68 |
# File 'lib/megam/core/assembly.rb', line 62 def components(arg=[]) if arg != [] @components = arg else @components end end |
#created_at(arg = nil) ⇒ Object
118 119 120 121 122 123 124 |
# File 'lib/megam/core/assembly.rb', line 118 def created_at(arg=nil) if arg != nil @created_at = arg else @created_at end end |
#error? ⇒ Boolean
126 127 128 |
# File 'lib/megam/core/assembly.rb', line 126 def error? crocked = true if (some_msg.has_key?(:msg_type) && some_msg[:msg_type] == "error") end |
#for_json ⇒ Object
154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 |
# File 'lib/megam/core/assembly.rb', line 154 def for_json result = { "id" => id, "name" => name, "tosca_type" => tosca_type, "components" => components, "requirements" => requirements, "policies" => policies, "inputs" => inputs, "operations" => operations, "outputs" => outputs, "status" => status, "created_at" => created_at } result end |
#from_hash(o) ⇒ Object
194 195 196 197 198 199 200 201 202 203 204 205 206 207 |
# File 'lib/megam/core/assembly.rb', line 194 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") @requirements = o["requirements"] if o.has_key?("requirements") @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
38 39 40 41 42 43 44 |
# File 'lib/megam/core/assembly.rb', line 38 def id(arg=nil) if arg != nil @id = arg else @id end end |
#inputs(arg = []) ⇒ Object
86 87 88 89 90 91 92 |
# File 'lib/megam/core/assembly.rb', line 86 def inputs(arg=[]) if arg != [] @inputs = arg else @inputs end end |
#name(arg = nil) ⇒ Object
46 47 48 49 50 51 52 |
# File 'lib/megam/core/assembly.rb', line 46 def name(arg=nil) if arg != nil @name = arg else @name end end |
#operations(arg = nil) ⇒ Object
94 95 96 97 98 99 100 |
# File 'lib/megam/core/assembly.rb', line 94 def operations(arg=nil) if arg != nil @operations = arg else @operations end end |
#outputs(arg = []) ⇒ Object
102 103 104 105 106 107 108 |
# File 'lib/megam/core/assembly.rb', line 102 def outputs(arg=[]) if arg != [] @outputs = arg else @outputs end end |
#policies(arg = []) ⇒ Object
78 79 80 81 82 83 84 |
# File 'lib/megam/core/assembly.rb', line 78 def policies(arg=[]) if arg != [] @policies = arg else @policies end end |
#requirements(arg = []) ⇒ Object
70 71 72 73 74 75 76 |
# File 'lib/megam/core/assembly.rb', line 70 def requirements(arg=[]) if arg != [] @requirements = arg else @requirements end end |
#status(arg = nil) ⇒ Object
110 111 112 113 114 115 116 |
# File 'lib/megam/core/assembly.rb', line 110 def status(arg=nil) if arg != nil @status = arg else @status end end |
#to_hash ⇒ Object
Transform the ruby obj -> to a Hash
131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 |
# File 'lib/megam/core/assembly.rb', line 131 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["requirements"] = requirements 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.
150 151 152 |
# File 'lib/megam/core/assembly.rb', line 150 def to_json(*a) for_json.to_json(*a) end |
#to_s ⇒ Object
225 226 227 |
# File 'lib/megam/core/assembly.rb', line 225 def to_s Megam::Stuff.styled_hash(to_hash) end |
#tosca_type(arg = nil) ⇒ Object
54 55 56 57 58 59 60 |
# File 'lib/megam/core/assembly.rb', line 54 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
221 222 223 |
# File 'lib/megam/core/assembly.rb', line 221 def update megam_rest.update_assembly(to_hash) end |