class Nem::Transaction::MultisigAggregateModification
@attr [Array <Nem::Model::MultisigCosignatoryModification>] modifications @attr [Interger] relative_change
@attr [Interger] min_cosignatories
Constants
- TYPE
Attributes
min_cosignatories[R]
modifications[R]
relative_change[R]
Public Class Methods
new(modifications, relative_change = 0, timestamp: nil, deadline: nil, network: nil)
click to toggle source
# File lib/nem/transaction/multisig_aggregate_modification.rb, line 11 def initialize(modifications, relative_change = 0, timestamp: nil, deadline: nil, network: nil) @modifications = modifications @relative_change = relative_change @network = network || Nem.default_network @type = TYPE @fee = Nem::Fee::MultisigAggregateModification.new(self) @timestamp = timestamp || Time.now @deadline = deadline || Time.now + Nem.default_deadline end
Public Instance Methods
has_relative_change?()
click to toggle source
# File lib/nem/transaction/multisig_aggregate_modification.rb, line 22 def has_relative_change? relative_change != 0 end
to_hash()
click to toggle source
attributes must be CAMEL CASE for NIS params @return [Hash] Modifications need to be sorted by address. if not it will occur FAILURE_SIGNATURE_NOT_VERIFIABLE
# File lib/nem/transaction/multisig_aggregate_modification.rb, line 34 def to_hash tmp = { minCosignatories: { relativeChange: relative_change } } tmp[:modifications] = modifications .sort_by { |mo| Nem::Unit::Address.from_public_key(mo.cosignatory_account) } .map(&:to_hash) tmp end
version()
click to toggle source
# File lib/nem/transaction/multisig_aggregate_modification.rb, line 26 def version network(hex: true) + (has_relative_change? ? 2 : 1) end