class Nem::Transaction::MosaicDefinitionCreation

@attr [Nem::Model::MosaicDefinition] mosaic_definition @attr [Integer] creation_fee @attr [Integer] creation_fee_sink @see nemproject.github.io/#mosaicDefinitionCreationTransaction

Constants

TYPE

Attributes

creation_fee[R]
creation_fee_sink[R]
mosaic_definition[R]

Public Class Methods

new(mosaic_definition, timestamp: nil, deadline: nil, network: nil) click to toggle source
# File lib/nem/transaction/mosaic_definition_creation.rb, line 12
def initialize(mosaic_definition, timestamp: nil, deadline: nil, network: nil)
  @mosaic_definition = mosaic_definition
  @creation_fee = creation[:fee]
  @creation_fee_sink = creation[:sink]

  @network = network || Nem.default_network
  @type = TYPE
  @fee = Nem::Fee::MosaicDefinitionCreation.new(self)
  @timestamp = timestamp || Time.now
  @deadline = deadline || Time.now + Nem.default_deadline
end

Public Instance Methods

to_hash() click to toggle source

attributes must be CAMEL CASE for NIS params @return [Hash]

# File lib/nem/transaction/mosaic_definition_creation.rb, line 26
def to_hash
  {
    mosaicDefinition: mosaic_definition.to_hash,
    creationFee: creation_fee,
    creationFeeSink: creation_fee_sink,
  }
end

Private Instance Methods

creation() click to toggle source

@see www.nem.ninja/docs/#mosaics

# File lib/nem/transaction/mosaic_definition_creation.rb, line 37
def creation
  if @network == :mainnet
    { sink: 'NBMOSAICOD4F54EE5CDMR23CCBGOAM2XSIUX6TRS',
      fee: 20 * 1_000_000 }
  else
    { sink: 'TBMOSAICOD4F54EE5CDMR23CCBGOAM2XSJBR5OLC',
      fee: 20 * 1_000_000 }
  end
end