Class: Casper::Entity::DeployExecutable

Inherits:
Object
  • Object
show all
Defined in:
lib/entity/deploy_executable.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeDeployExecutable

Returns a new instance of DeployExecutable.



10
11
12
13
14
15
16
17
# File 'lib/entity/deploy_executable.rb', line 10

def initialize
  @module_bytes = nil
  @stored_contract_by_hash = nil
  @stored_contract_by_name = nil
  @stored_versioned_contract_by_hash = nil
  @stored_versioned_contract_by_name = nil
  @transfer = nil
end

Instance Attribute Details

#module_bytesObject

Returns the value of attribute module_bytes.



8
9
10
# File 'lib/entity/deploy_executable.rb', line 8

def module_bytes
  @module_bytes
end

#stored_contract_by_hashObject

Returns the value of attribute stored_contract_by_hash.



8
9
10
# File 'lib/entity/deploy_executable.rb', line 8

def stored_contract_by_hash
  @stored_contract_by_hash
end

#stored_contract_by_nameObject

Returns the value of attribute stored_contract_by_name.



8
9
10
# File 'lib/entity/deploy_executable.rb', line 8

def stored_contract_by_name
  @stored_contract_by_name
end

#stored_versioned_contract_by_hashObject

Returns the value of attribute stored_versioned_contract_by_hash.



8
9
10
# File 'lib/entity/deploy_executable.rb', line 8

def stored_versioned_contract_by_hash
  @stored_versioned_contract_by_hash
end

#stored_versioned_contract_by_nameObject

Returns the value of attribute stored_versioned_contract_by_name.



8
9
10
# File 'lib/entity/deploy_executable.rb', line 8

def stored_versioned_contract_by_name
  @stored_versioned_contract_by_name
end

#transferObject

Returns the value of attribute transfer.



8
9
10
# File 'lib/entity/deploy_executable.rb', line 8

def transfer
  @transfer
end

Instance Method Details

#get_module_bytesModuleBytes

Returns module_bytes.

Returns:



61
62
63
# File 'lib/entity/deploy_executable.rb', line 61

def get_module_bytes
  @module_bytes
end

#get_stored_contract_by_hashObject



89
90
91
# File 'lib/entity/deploy_executable.rb', line 89

def get_stored_contract_by_hash
  @stored_contract_by_hash
end

#get_stored_contract_by_nameObject



103
104
105
# File 'lib/entity/deploy_executable.rb', line 103

def get_stored_contract_by_name
  @stored_contract_by_name
end

#get_stored_versioned_contract_by_hashObject



117
118
119
# File 'lib/entity/deploy_executable.rb', line 117

def get_stored_versioned_contract_by_hash
  @stored_versioned_contract_by_hash
end

#get_stored_versioned_contract_by_nameObject



131
132
133
# File 'lib/entity/deploy_executable.rb', line 131

def get_stored_versioned_contract_by_name
  @stored_versioned_contract_by_name
end

#get_transferObject



75
76
77
# File 'lib/entity/deploy_executable.rb', line 75

def get_transfer
  @transfer
end

#module_bytes?Boolean

Returns:



66
67
68
# File 'lib/entity/deploy_executable.rb', line 66

def module_bytes?
  @module_bytes != nil
end

#new_transfer(id, amount, target, source_purse = nil) ⇒ DeployExecutable

Parameters:

Returns:



31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# File 'lib/entity/deploy_executable.rb', line 31

def new_transfer(id, amount, target, source_purse = nil)
  if target.instance_of? CLURef
    @target = target
  elsif target.instance_of? CLPublicKey
    @target = target.
  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



56
57
58
# File 'lib/entity/deploy_executable.rb', line 56

def set_module_bytes(module_bytes)
  @module_bytes = module_bytes
end

#set_stored_contract_by_hash(stored_contract_by_hash) ⇒ Object

Parameters:



85
86
87
# File 'lib/entity/deploy_executable.rb', line 85

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

Parameters:



99
100
101
# File 'lib/entity/deploy_executable.rb', line 99

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

Parameters:



113
114
115
# File 'lib/entity/deploy_executable.rb', line 113

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

Parameters:



127
128
129
# File 'lib/entity/deploy_executable.rb', line 127

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

Parameters:



71
72
73
# File 'lib/entity/deploy_executable.rb', line 71

def set_transfer(transfer)
  @transfer = transfer
end

#standard_payment(payment_amount) ⇒ Object



19
20
21
22
23
24
# File 'lib/entity/deploy_executable.rb', line 19

def standard_payment(payment_amount)
  @module_bytes = ModuleBytes.new("", [])
  arg = DeployNamedArgument.new("amount", CLu512.new(payment_amount))
  @module_bytes.set_arg(arg) # => Add arg and return args
  @module_bytes
end

#stored_contract_by_hash?Boolean

Returns:



94
95
96
# File 'lib/entity/deploy_executable.rb', line 94

def stored_contract_by_hash?
  @stored_contract_by_hash != nil
end

#stored_contract_by_name?Boolean

Returns:



108
109
110
# File 'lib/entity/deploy_executable.rb', line 108

def stored_contract_by_name?
  @stored_contract_by_name != nil
end

#stored_versioned_contract_by_hash?Boolean

Returns:



122
123
124
# File 'lib/entity/deploy_executable.rb', line 122

def stored_versioned_contract_by_hash?
  @stored_versioned_contract_by_hash != nil
end

#stored_versioned_contract_by_name?Boolean

Returns:



136
137
138
# File 'lib/entity/deploy_executable.rb', line 136

def stored_versioned_contract_by_name?
  @stored_versioned_contract_by_name != nil
end

#to_bytesObject



140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
# File 'lib/entity/deploy_executable.rb', line 140

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
  end
  raise "failed to serialize ExecutableDeployItemJsonWrapper"
end

#transfer?Boolean

Returns:



80
81
82
# File 'lib/entity/deploy_executable.rb', line 80

def transfer?
  @transfer != nil
end