Class: Casper::Entity::DeployExecutable

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

Overview

DeployExecutable

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeDeployExecutable

Returns a new instance of DeployExecutable.



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

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.



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

def module_bytes
  @module_bytes
end

#stored_contract_by_hashObject

Returns the value of attribute stored_contract_by_hash.



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

def stored_contract_by_hash
  @stored_contract_by_hash
end

#stored_contract_by_nameObject

Returns the value of attribute stored_contract_by_name.



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

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.



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

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.



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

def stored_versioned_contract_by_name
  @stored_versioned_contract_by_name
end

#transferObject

Returns the value of attribute transfer.



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

def transfer
  @transfer
end

Instance Method Details

#get_module_bytesModuleBytes

Returns module_bytes.

Returns:



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

def get_module_bytes
  @module_bytes
end

#get_stored_contract_by_hashObject



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

def get_stored_contract_by_hash
  @stored_contract_by_hash
end

#get_stored_contract_by_nameObject



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

def get_stored_contract_by_name
  @stored_contract_by_name
end

#get_stored_versioned_contract_by_hashObject



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

def get_stored_versioned_contract_by_hash
  @stored_versioned_contract_by_hash
end

#get_stored_versioned_contract_by_nameObject



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

def get_stored_versioned_contract_by_name
  @stored_versioned_contract_by_name
end

#get_transferObject



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

def get_transfer
  @transfer
end

#module_bytes?Boolean

Returns:



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

def module_bytes?
  @module_bytes != nil
end

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

Parameters:

Returns:



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

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



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

def set_module_bytes(module_bytes)
  @module_bytes = module_bytes
end

#set_stored_contract_by_hash(stored_contract_by_hash) ⇒ Object

Parameters:



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

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:



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

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:



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

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:



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

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:



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

def set_transfer(transfer)
  @transfer = transfer
end

#standard_payment(payment_amount) ⇒ Object



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

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:



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

def stored_contract_by_hash?
  @stored_contract_by_hash != nil
end

#stored_contract_by_name?Boolean

Returns:



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

def stored_contract_by_name?
  @stored_contract_by_name != nil
end

#stored_versioned_contract_by_hash?Boolean

Returns:



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

def stored_versioned_contract_by_hash?
  @stored_versioned_contract_by_hash != nil
end

#stored_versioned_contract_by_name?Boolean

Returns:



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

def stored_versioned_contract_by_name?
  @stored_versioned_contract_by_name != nil
end

#to_bytesObject



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

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:



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

def transfer?
  @transfer != nil
end