Class: Casper::Entity::DeployExecutable
- Inherits:
-
Object
- Object
- Casper::Entity::DeployExecutable
- Includes:
- Utils::Helpers
- Defined in:
- lib/entity/deploy_executable.rb
Overview
DeployExecutable
Instance Attribute Summary collapse
-
#module_bytes ⇒ Object
Returns the value of attribute module_bytes.
-
#stored_contract_by_hash ⇒ Object
Returns the value of attribute stored_contract_by_hash.
-
#stored_contract_by_name ⇒ Object
Returns the value of attribute stored_contract_by_name.
-
#stored_versioned_contract_by_hash ⇒ Object
Returns the value of attribute stored_versioned_contract_by_hash.
-
#stored_versioned_contract_by_name ⇒ Object
Returns the value of attribute stored_versioned_contract_by_name.
-
#transfer ⇒ Object
Returns the value of attribute transfer.
Instance Method Summary collapse
-
#get_module_bytes ⇒ ModuleBytes
Module_bytes.
- #get_stored_contract_by_hash ⇒ Object
- #get_stored_contract_by_name ⇒ Object
- #get_stored_versioned_contract_by_hash ⇒ Object
- #get_stored_versioned_contract_by_name ⇒ Object
- #get_transfer ⇒ Object
-
#initialize(h = {}) ⇒ DeployExecutable
constructor
A new instance of DeployExecutable.
- #module_bytes? ⇒ Boolean
- #new_transfer(id, amount, target, source_purse = nil) ⇒ DeployExecutable
- #set_module_bytes(module_bytes) ⇒ Object
- #set_stored_contract_by_hash(stored_contract_by_hash) ⇒ Object
- #set_stored_contract_by_name(stored_contract_by_name) ⇒ Object
- #set_stored_versioned_contract_by_hash(stored_versioned_contract_by_hash) ⇒ Object
- #set_stored_versioned_contract_by_name(stored_versioned_contract_by_name) ⇒ Object
- #set_transfer(transfer) ⇒ Object
- #standard_payment(payment_amount) ⇒ Object
- #stored_contract_by_hash? ⇒ Boolean
- #stored_contract_by_name? ⇒ Boolean
- #stored_versioned_contract_by_hash? ⇒ Boolean
- #stored_versioned_contract_by_name? ⇒ Boolean
- #to_bytes ⇒ Object
- #transfer? ⇒ Boolean
Methods included from Utils::Helpers
Constructor Details
#initialize(h = {}) ⇒ DeployExecutable
Returns a new instance of DeployExecutable.
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/entity/deploy_executable.rb', line 14 def initialize(h = {}) deploy_serializer = DeploySerializer.new() temp_args = [] deploy_serializer = DeploySerializer.new if h.keys[0] == :ModuleBytes args = h[:ModuleBytes][:args] args.each do |arg| name1 = arg[0] clvalue_hash = arg[1] clvalue = deploy_serializer.build_cl_value(arg[1]) temp_args << [Casper::Entity::DeployNamedArgument.new(name1, clvalue)] end @module_bytes = Casper::Entity::ModuleBytes.new(h[:ModuleBytes][:module_bytes], temp_args) elsif h.keys[0] == :Transfer temp_args = [] args = h[:Transfer][:args] transfer = Casper::Entity::DeployExecutableTransfer.new(args) args.each do |arg| name1 = arg[0] if name1 == "amount" || name1 == "target" clvalue_hash = arg[1] clvalue = deploy_serializer.build_cl_value(arg[1]) temp_args << [Casper::Entity::DeployNamedArgument.new(name1, clvalue)] elsif name1 == "id" bytes = arg[1][:bytes] parsed = arg[1][:parsed] h = arg[1][:cl_type] key, value = h.first cl_type = h.keys[0] inner_type = value inner_clvalue = Utils::Helpers.construct_inner_clvalue(inner_type, parsed) clvalue = CLOption.new(inner_clvalue, inner_type) temp_args << [Casper::Entity::DeployNamedArgument.new(name1, clvalue)] end end @transfer = Casper::Entity::DeployExecutableTransfer.new(temp_args) end @stored_contract_by_hash = nil @stored_contract_by_name = nil @stored_versioned_contract_by_hash = nil @stored_versioned_contract_by_name = nil end |
Instance Attribute Details
#module_bytes ⇒ Object
Returns the value of attribute module_bytes.
11 12 13 |
# File 'lib/entity/deploy_executable.rb', line 11 def module_bytes @module_bytes end |
#stored_contract_by_hash ⇒ Object
Returns the value of attribute stored_contract_by_hash.
11 12 13 |
# File 'lib/entity/deploy_executable.rb', line 11 def stored_contract_by_hash @stored_contract_by_hash end |
#stored_contract_by_name ⇒ Object
Returns the value of attribute stored_contract_by_name.
11 12 13 |
# File 'lib/entity/deploy_executable.rb', line 11 def stored_contract_by_name @stored_contract_by_name end |
#stored_versioned_contract_by_hash ⇒ Object
Returns the value of attribute stored_versioned_contract_by_hash.
11 12 13 |
# File 'lib/entity/deploy_executable.rb', line 11 def stored_versioned_contract_by_hash @stored_versioned_contract_by_hash end |
#stored_versioned_contract_by_name ⇒ Object
Returns the value of attribute stored_versioned_contract_by_name.
11 12 13 |
# File 'lib/entity/deploy_executable.rb', line 11 def stored_versioned_contract_by_name @stored_versioned_contract_by_name end |
#transfer ⇒ Object
Returns the value of attribute transfer.
11 12 13 |
# File 'lib/entity/deploy_executable.rb', line 11 def transfer @transfer end |
Instance Method Details
#get_module_bytes ⇒ ModuleBytes
Returns module_bytes.
104 105 106 |
# File 'lib/entity/deploy_executable.rb', line 104 def get_module_bytes @module_bytes end |
#get_stored_contract_by_hash ⇒ Object
132 133 134 |
# File 'lib/entity/deploy_executable.rb', line 132 def get_stored_contract_by_hash @stored_contract_by_hash end |
#get_stored_contract_by_name ⇒ Object
146 147 148 |
# File 'lib/entity/deploy_executable.rb', line 146 def get_stored_contract_by_name @stored_contract_by_name end |
#get_stored_versioned_contract_by_hash ⇒ Object
160 161 162 |
# File 'lib/entity/deploy_executable.rb', line 160 def get_stored_versioned_contract_by_hash @stored_versioned_contract_by_hash end |
#get_stored_versioned_contract_by_name ⇒ Object
174 175 176 |
# File 'lib/entity/deploy_executable.rb', line 174 def get_stored_versioned_contract_by_name @stored_versioned_contract_by_name end |
#get_transfer ⇒ Object
118 119 120 |
# File 'lib/entity/deploy_executable.rb', line 118 def get_transfer @transfer end |
#module_bytes? ⇒ Boolean
109 110 111 |
# File 'lib/entity/deploy_executable.rb', line 109 def module_bytes? @module_bytes != nil end |
#new_transfer(id, amount, target, source_purse = nil) ⇒ DeployExecutable
74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 |
# File 'lib/entity/deploy_executable.rb', line 74 def new_transfer(id, amount, target, source_purse = nil) if target.instance_of? CLURef @target = target elsif target.instance_of? CLPublicKey @target = target.to_account_hash_byte_array else raise ArgumentError.new("Please specify target") end arg1 = DeployNamedArgument.new("amount", CLu512.new(amount)) # arg2 = DeployNamedArgument.new("target", @target) @transfer = DeployExecutableTransfer.new([]) # @transfer.set_arg(DeployNamedArgument.new("target", @target)) # @transfer.set_arg(arg1) # @transfer.set_arg(arg2) # @transfer if source_purse != nil @transfer.set_arg(DeployNamedArgument.new("source", source_purse)) # @transfer end @transfer.set_arg(DeployNamedArgument.new("target", @target)) @transfer.set_arg(DeployNamedArgument.new("id", CLu64.new(id))) @transfer end |
#set_module_bytes(module_bytes) ⇒ Object
99 100 101 |
# File 'lib/entity/deploy_executable.rb', line 99 def set_module_bytes(module_bytes) @module_bytes = module_bytes end |
#set_stored_contract_by_hash(stored_contract_by_hash) ⇒ Object
128 129 130 |
# File 'lib/entity/deploy_executable.rb', line 128 def set_stored_contract_by_hash(stored_contract_by_hash) @stored_contract_by_hash = stored_contract_by_hash end |
#set_stored_contract_by_name(stored_contract_by_name) ⇒ Object
142 143 144 |
# File 'lib/entity/deploy_executable.rb', line 142 def set_stored_contract_by_name(stored_contract_by_name) @stored_contract_by_name = stored_contract_by_name end |
#set_stored_versioned_contract_by_hash(stored_versioned_contract_by_hash) ⇒ Object
156 157 158 |
# File 'lib/entity/deploy_executable.rb', line 156 def set_stored_versioned_contract_by_hash(stored_versioned_contract_by_hash) @stored_versioned_contract_by_hash = stored_versioned_contract_by_hash end |
#set_stored_versioned_contract_by_name(stored_versioned_contract_by_name) ⇒ Object
170 171 172 |
# File 'lib/entity/deploy_executable.rb', line 170 def set_stored_versioned_contract_by_name(stored_versioned_contract_by_name) @stored_versioned_contract_by_name = stored_versioned_contract_by_name end |
#set_transfer(transfer) ⇒ Object
114 115 116 |
# File 'lib/entity/deploy_executable.rb', line 114 def set_transfer(transfer) @transfer = transfer end |
#standard_payment(payment_amount) ⇒ Object
62 63 64 65 66 67 |
# File 'lib/entity/deploy_executable.rb', line 62 def standard_payment(payment_amount) @module_bytes = ModuleBytes.new("", []) arg = DeployNamedArgument.new("amount", CLu512.new(payment_amount)) @module_bytes.set_arg(arg) @module_bytes end |
#stored_contract_by_hash? ⇒ Boolean
137 138 139 |
# File 'lib/entity/deploy_executable.rb', line 137 def stored_contract_by_hash? @stored_contract_by_hash != nil end |
#stored_contract_by_name? ⇒ Boolean
151 152 153 |
# File 'lib/entity/deploy_executable.rb', line 151 def stored_contract_by_name? @stored_contract_by_name != nil end |
#stored_versioned_contract_by_hash? ⇒ Boolean
165 166 167 |
# File 'lib/entity/deploy_executable.rb', line 165 def stored_versioned_contract_by_hash? @stored_versioned_contract_by_hash != nil end |
#stored_versioned_contract_by_name? ⇒ Boolean
179 180 181 |
# File 'lib/entity/deploy_executable.rb', line 179 def stored_versioned_contract_by_name? @stored_versioned_contract_by_name != nil end |
#to_bytes ⇒ Object
183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 |
# File 'lib/entity/deploy_executable.rb', line 183 def to_bytes if module_bytes? @module_bytes.to_bytes elsif stored_contract_by_name? @stored_contract_by_name.to_bytes elsif stored_contract_by_hash? @stored_contract_by_hash.to_bytes elsif stored_contract_by_name? @stored_contract_by_name.to_bytes elsif stored_versioned_contract_by_hash? @stored_versioned_contract_by_hash.to_bytes elsif stored_versioned_contract_by_name? @stored_versioned_contract_by_name.to_bytes elsif stored_versioned_contract_by_hash? @stored_versioned_contract_by_hash.to_bytes elsif transfer? @transfer.to_bytes else raise "failed to serialize ExecutableDeployItemJsonWrapper" end end |
#transfer? ⇒ Boolean
123 124 125 |
# File 'lib/entity/deploy_executable.rb', line 123 def transfer? @transfer != nil end |