nis-ruby 0.0.6.1 → 0.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +119 -0
  3. data/demo/request_account.rb +8 -8
  4. data/demo/request_block.rb +11 -0
  5. data/demo/request_debug.rb +7 -14
  6. data/demo/request_local.rb +20 -0
  7. data/demo/request_namespace.rb +11 -0
  8. data/demo/request_nis.rb +0 -1
  9. data/demo/request_node.rb +31 -0
  10. data/demo/request_transaction.rb +6 -7
  11. data/lib/nis/client.rb +1 -1
  12. data/lib/nis/endpoint/account/get.rb +4 -4
  13. data/lib/nis/endpoint/account/harvests.rb +3 -3
  14. data/lib/nis/endpoint/account/historical.rb +5 -5
  15. data/lib/nis/endpoint/account/lock.rb +1 -1
  16. data/lib/nis/endpoint/account/mosaic.rb +4 -4
  17. data/lib/nis/endpoint/account/namespace.rb +5 -5
  18. data/lib/nis/endpoint/account/status.rb +1 -1
  19. data/lib/nis/endpoint/account/transfers.rb +12 -12
  20. data/lib/nis/endpoint/account/unconfirmed_transactions.rb +7 -2
  21. data/lib/nis/endpoint/account/unlock.rb +1 -1
  22. data/lib/nis/endpoint/block/at.rb +10 -0
  23. data/lib/nis/endpoint/block/get.rb +10 -0
  24. data/lib/nis/endpoint/block.rb +4 -0
  25. data/lib/nis/endpoint/chain/height.rb +11 -0
  26. data/lib/nis/endpoint/chain/last_block.rb +14 -0
  27. data/lib/nis/endpoint/chain/score.rb +11 -0
  28. data/lib/nis/endpoint/local/account/transfers.rb +34 -0
  29. data/lib/nis/endpoint/local/chain.rb +16 -0
  30. data/lib/nis/endpoint/namespace/mosaic.rb +15 -0
  31. data/lib/nis/endpoint/namespace/root.rb +14 -0
  32. data/lib/nis/endpoint/namespace.rb +10 -0
  33. data/lib/nis/endpoint/node/active_peers.rb +11 -0
  34. data/lib/nis/endpoint/node/boot.rb +10 -0
  35. data/lib/nis/endpoint/node/experiences.rb +9 -0
  36. data/lib/nis/endpoint/node/extended_info.rb +9 -0
  37. data/lib/nis/endpoint/node/info.rb +9 -0
  38. data/lib/nis/endpoint/node/peer_list.rb +25 -0
  39. data/lib/nis/endpoint/node.rb +4 -0
  40. data/lib/nis/endpoint/transaction/announce.rb +1 -1
  41. data/lib/nis/endpoint/transaction/prepareAnnounce.rb +1 -1
  42. data/lib/nis/error.rb +1 -0
  43. data/lib/nis/struct/account_meta_data.rb +1 -1
  44. data/lib/nis/struct/account_meta_data_pair.rb +4 -4
  45. data/lib/nis/struct/account_private_key_transactions_page.rb +14 -0
  46. data/lib/nis/struct/application_meta_data.rb +21 -0
  47. data/lib/nis/struct/block.rb +24 -0
  48. data/lib/nis/struct/block_height.rb +22 -0
  49. data/lib/nis/struct/block_score.rb +17 -0
  50. data/lib/nis/struct/boot_node_request.rb +23 -0
  51. data/lib/nis/struct/error.rb +18 -0
  52. data/lib/nis/struct/explorer_block_view_model.rb +17 -0
  53. data/lib/nis/struct/explorer_transfer_view_model.rb +18 -0
  54. data/lib/nis/struct/explorer_view_model_transaction.rb +16 -0
  55. data/lib/nis/struct/extended_node_experience_pair.rb +14 -0
  56. data/lib/nis/struct/harvest_info.rb +2 -2
  57. data/lib/nis/struct/mosaic_definition.rb +2 -0
  58. data/lib/nis/struct/mosaic_definition_meta_data.rb +12 -0
  59. data/lib/nis/struct/mosaic_definition_meta_data_pair.rb +16 -0
  60. data/lib/nis/struct/mosaic_levy.rb +18 -0
  61. data/lib/nis/struct/mosaic_properties.rb +8 -3
  62. data/lib/nis/struct/namespace_meta_data.rb +12 -0
  63. data/lib/nis/struct/namespace_meta_data_pair.rb +16 -0
  64. data/lib/nis/struct/nis_node_info.rb +19 -0
  65. data/lib/nis/struct/node_collection.rb +20 -0
  66. data/lib/nis/struct/node_experience.rb +13 -0
  67. data/lib/nis/struct/node_info.rb +28 -0
  68. data/lib/nis/struct/request_announce.rb +13 -0
  69. data/lib/nis/struct/transaction_meta_data.rb +3 -6
  70. data/lib/nis/struct/transaction_meta_data_pair.rb +2 -5
  71. data/lib/nis/struct/unconfirmed_transaction_meta_data_pair.rb +5 -5
  72. data/lib/nis/util.rb +2 -1
  73. data/lib/nis/version.rb +1 -1
  74. data/lib/nis.rb +21 -0
  75. metadata +46 -2
@@ -0,0 +1,34 @@
1
+ module Nis::Endpoint
2
+ module Local
3
+ module Account
4
+ module Transfers
5
+ # @param [Nis::Struct::AccountPrivateKeyTransactionsPage] page
6
+ # @return [Array <Nis::Struct::TransactionMetaDataPair>]
7
+ # @see http://bob.nem.ninja/docs/#transaction-data-with-decoded-messages
8
+ def local_account_transfers_incoming(page:)
9
+ request!(:post, '/local/account/transfers/incoming', page) do |res|
10
+ res[:data].map { |tmdp| Nis::Struct::TransactionMetaDataPair.build(tmdp) }
11
+ end
12
+ end
13
+
14
+ # @param [Nis::Struct::AccountPrivateKeyTransactionsPage] page
15
+ # @return [Array <Nis::Struct::TransactionMetaDataPair>]
16
+ # @see http://bob.nem.ninja/docs/#transaction-data-with-decoded-messages
17
+ def local_account_transfers_outgoing(page:)
18
+ request!(:post, '/local/account/transfers/outgoing', page) do |res|
19
+ res[:data].map { |tmdp| Nis::Struct::TransactionMetaDataPair.build(tmdp) }
20
+ end
21
+ end
22
+
23
+ # @param [Nis::Struct::AccountPrivateKeyTransactionsPage] page
24
+ # @return [Array <Nis::Struct::TransactionMetaDataPair>]
25
+ # @see http://bob.nem.ninja/docs/#transaction-data-with-decoded-messages
26
+ def local_account_transfers_all(page:)
27
+ request!(:post, '/local/account/transfers/all', page) do |res|
28
+ res[:data].map { |tmdp| Nis::Struct::TransactionMetaDataPair.build(tmdp) }
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
@@ -0,0 +1,16 @@
1
+ module Nis::Endpoint
2
+ module Local
3
+ module Chain
4
+ # @param [String] block_height
5
+ # @return [Array <Nis::Struct::Block>]
6
+ # @see http://bob.nem.ninja/docs/#getting-part-of-a-chain
7
+ def local_chain_blocks_after(block_height:)
8
+ request!(:post, '/local/chain/blocks-after',
9
+ height: block_height
10
+ ) do |res|
11
+ res[:data].map { |ebvm| Nis::Struct::ExplorerBlockViewModel.build(ebvm) }
12
+ end
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,15 @@
1
+ module Nis::Endpoint
2
+ module Namespace::Mosaic
3
+ # @return [Array <Nis::Struct::MosaicDefinitionMetaDataPair>]
4
+ # @see http://bob.nem.ninja/docs/#retrieving-mosaic-definitions
5
+ def namespace_mosaic_definition_page(namespace:, id: nil, page_size: nil)
6
+ request!(:get, '/namespace/mosaic/definition/page',
7
+ namespace: namespace,
8
+ id: id,
9
+ pageSize: page_size
10
+ ) do |res|
11
+ res[:data].map { |mdmdp| Nis::Struct::MosaicDefinitionMetaDataPair.build(mdmdp) }
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,14 @@
1
+ module Nis::Endpoint
2
+ module Namespace::Root
3
+ # @return [Array <Nis::Struct::NamespaceMetaDataPair>]
4
+ # @see http://bob.nem.ninja/docs/#retrieving-root-namespaces
5
+ def namespace_root_page(id: nil, page_size: nil)
6
+ request!(:get, '/namespace/root/page',
7
+ id: id,
8
+ pageSize: page_size
9
+ ) do |res|
10
+ res[:data].map { |nsmdp| Nis::Struct::NamespaceMetaDataPair.build(nsmdp) }
11
+ end
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,10 @@
1
+ module Nis::Endpoint
2
+ module Namespace
3
+ # @param [String] namespace
4
+ # @return [Nis::Struct::Namespace]
5
+ # @see http://bob.nem.ninja/docs/#retrieving-a-specific-namespace
6
+ def namespace(namespace:)
7
+ Nis::Struct::Namespace.build request!(:get, '/namespace', namespace: namespace)
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,11 @@
1
+ module Nis::Endpoint
2
+ module Node::ActivePeers
3
+ # @return [Nis::Struct::NodeInfo]
4
+ # @see http://bob.nem.ninja/docs/#maximum-chain-height-in-the-active-neighborhood
5
+ def node_active_peers_max_chain_height
6
+ request!(:get, '/node/active-peers/max-chain-height') do |res|
7
+ Nis::Struct::BlockHeight.build res
8
+ end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,10 @@
1
+ module Nis::Endpoint
2
+ module Node::Boot
3
+ # @param boot_node_request [Nis::Struct::BootNodeRequest]
4
+ # @return [nil]
5
+ # @see http://bob.nem.ninja/docs/#booting-the-local-node
6
+ def node_boot(boot_node_request:)
7
+ request!(:post, '/node/boot', boot_node_request: boot_node_request)
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,9 @@
1
+ module Nis::Endpoint
2
+ module Node::Experiences
3
+ # @return [Nis::Struct::ExtendedNodeExperiencePair]
4
+ # @see http://bob.nem.ninja/docs/#requesting-node-experiences
5
+ def node_experiences
6
+ Nis::Struct::ExtendedNodeExperiencePair.build request!(:get, '/node/experiences')
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ module Nis::Endpoint
2
+ module Node::ExtendedInfo
3
+ # @return [Nis::Struct::NodeInfo]
4
+ # @see http://bob.nem.ninja/docs/#extended-node-information
5
+ def node_extended_info
6
+ Nis::Struct::NisNodeInfo.build request!(:get, '/node/extended-info')
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ module Nis::Endpoint
2
+ module Node::Info
3
+ # @return [Nis::Struct::NodeInfo]
4
+ # @see http://bob.nem.ninja/docs/#basic-node-information
5
+ def node_info
6
+ Nis::Struct::NodeInfo.build request!(:get, '/node/info')
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,25 @@
1
+ module Nis::Endpoint
2
+ module Node::PeerList
3
+ # @return [Nis::Struct::NodeCollection]
4
+ # @see http://bob.nem.ninja/docs/#complete-neighborhood
5
+ def node_peerlist_all
6
+ Nis::Struct::NodeCollection.build request!(:get, '/node/peer-list/all')
7
+ end
8
+
9
+ # @return [Array <Nis::Struct::NodeInfo>]
10
+ # @see http://bob.nem.ninja/docs/#reachable-neighborhood
11
+ def node_peerlist_reachable
12
+ request!(:get, '/node/peer-list/reachable') do |res|
13
+ res[:data].map { |n| Nis::Struct::NodeInfo.build(n) }
14
+ end
15
+ end
16
+
17
+ # @return [Array <Nis::Struct::NodeInfo>]
18
+ # @see http://bob.nem.ninja/docs/#active-neighborhood
19
+ def node_peerlist_active
20
+ request!(:get, '/node/peer-list/active') do |res|
21
+ res[:data].map { |n| Nis::Struct::NodeInfo.build(n) }
22
+ end
23
+ end
24
+ end
25
+ end
@@ -0,0 +1,4 @@
1
+ module Nis::Endpoint
2
+ module Node
3
+ end
4
+ end
@@ -1,6 +1,6 @@
1
1
  module Nis::Endpoint
2
2
  module Transaction::Announce
3
- # @option options [Nis::Struct::RequestAnnounce]
3
+ # @param [Nis::Struct::RequestAnnounce] request_announce
4
4
  # @return [Nis::Struct::NodeInfo]
5
5
  # @see http://bob.nem.ninja/docs/#sending-the-data-to-NIS
6
6
  def transaction_announce(request_announce:)
@@ -1,6 +1,6 @@
1
1
  module Nis::Endpoint
2
2
  module Transaction::PrepareAnnounce
3
- # @option options [Nis::Struct::RequestPrepareAnnounce]
3
+ # @param [Nis::Struct::RequestPrepareAnnounce] request_prepare_announce
4
4
  # @return [Nis::Struct::NodeInfo]
5
5
  # @see http://bob.nem.ninja/docs/#initiating-a-transaction
6
6
  def transaction_prepare_announce(request_prepare_announce:)
data/lib/nis/error.rb CHANGED
@@ -1,5 +1,6 @@
1
1
  class Nis
2
2
  class Error < StandardError; end
3
+ class NotFoundError < Error; end
3
4
  class BadRequestError < Error; end
4
5
  class InternalServerError < Error; end
5
6
  end
@@ -1,7 +1,7 @@
1
1
  class Nis::Struct
2
2
  # @attr [String] status
3
3
  # @attr [String] remoteStatus
4
- # @attr [Array <Nis::Struct::AccountInfo>] cosignatory_of
4
+ # @attr [Array <Nis::Struct::AccountInfo>] cosignatoryOf
5
5
  # @attr [Array <Nis::Struct::AccountInfo>] cosignatories
6
6
  # @see http://bob.nem.ninja/docs/#accountMetaData
7
7
  class AccountMetaData
@@ -1,15 +1,15 @@
1
1
  class Nis::Struct
2
- # @attr [AccountInfo] address
2
+ # @attr [AccountInfo] account
3
3
  # @attr [AccountMetaData] meta
4
4
  # @see http://bob.nem.ninja/docs/#accountMetaDataPair
5
5
  class AccountMetaDataPair
6
6
  include Nis::Util::Assignable
7
7
  attr_accessor :account, :meta
8
8
 
9
- def self.build(account:, meta:)
9
+ def self.build(meta:, account:)
10
10
  new(
11
- account: AccountInfo.build(account),
12
- meta: AccountMetaData.build(meta)
11
+ meta: AccountMetaData.build(meta),
12
+ account: AccountInfo.build(account)
13
13
  )
14
14
  end
15
15
  end
@@ -0,0 +1,14 @@
1
+ class Nis::Struct
2
+ # @attr [String] value
3
+ # @attr [String] hash
4
+ # @attr [Integer] id
5
+ # @see http://bob.nem.ninja/docs/#accountPrivateKeyTransactionsPage
6
+ class AccountPrivateKeyTransactionsPage
7
+ include Nis::Util::Assignable
8
+ attr_accessor :value, :hash, :id
9
+
10
+ def self.build(attrs)
11
+ new(attrs)
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,21 @@
1
+ class Nis::Struct
2
+ # @attr [Integer] currentTime
3
+ # @attr [String] application
4
+ # @attr [Integer] startTime
5
+ # @attr [String] version
6
+ # @attr [String] signer
7
+ # @see http://bob.nem.ninja/docs/#applicationMetaData
8
+ class ApplicationMetaData
9
+ include Nis::Util::Assignable
10
+ attr_accessor :currentTime, :application, :startTime, :version, :signer
11
+
12
+ alias :current_time :currentTime
13
+ alias :current_time= :currentTime=
14
+ alias :start_time :startTime
15
+ alias :start_time= :startTime=
16
+
17
+ def self.build(attrs)
18
+ new(attrs)
19
+ end
20
+ end
21
+ end
@@ -0,0 +1,24 @@
1
+ class Nis::Struct
2
+ # @attr [Integer] timeStamp
3
+ # @attr [String] signature
4
+ # @attr [String] prevBlockHash
5
+ # @attr [Integer] type
6
+ # @attr [Array <Nis::Struct::transaction>] transactions
7
+ # @attr [Integer] version
8
+ # @attr [String] signer
9
+ # @attr [Integer] height
10
+ # @see http://bob.nem.ninja/docs/#block
11
+ class Block
12
+ include Nis::Util::Assignable
13
+ attr_accessor :timeStamp, :signature, :prevBlockHash, :type, :transactions, :version, :signer, :height
14
+
15
+ alias :timestamp :timeStamp
16
+ alias :timestamp= :timeStamp=
17
+ alias :prev_block_hash :prevBlockHash
18
+ alias :prev_block_hash= :prevBlockHash=
19
+
20
+ def self.build(attrs)
21
+ new(attrs)
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,22 @@
1
+ class Nis::Struct
2
+ # @attr [Integer] height
3
+ # @see http://bob.nem.ninja/docs/#blockHeight
4
+ class BlockHeight
5
+ include Nis::Util::Assignable
6
+ attr_accessor :height
7
+
8
+ def self.build(attrs)
9
+ new(attrs)
10
+ end
11
+
12
+ # @return [Integer]
13
+ def to_i
14
+ @height
15
+ end
16
+
17
+ # @return [String]
18
+ def to_s
19
+ @height.to_s
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,17 @@
1
+ class Nis::Struct
2
+ # @attr [String] score
3
+ # @see http://bob.nem.ninja/docs/#blockChainScore
4
+ class BlockScore
5
+ include Nis::Util::Assignable
6
+ attr_accessor :score
7
+
8
+ def self.build(attrs)
9
+ new(attrs)
10
+ end
11
+
12
+ # @return [String]
13
+ def to_s
14
+ @score
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,23 @@
1
+ class Nis::Struct
2
+ # @attr [String] metaData
3
+ # @attr [String] application
4
+ # @attr [String] endpoint
5
+ # @attr [String] protocol
6
+ # @attr [String] port
7
+ # @attr [String] host
8
+ # @attr [String] identity
9
+ # @attr [String] private_key
10
+ # @attr [String] name
11
+ # @see http://bob.nem.ninja/docs/#bootNodeRequest
12
+ class BootNodeRequest
13
+ include Nis::Util::Assignable
14
+ attr_accessor :metaData, :application, :endpoint, :protocol, :port, :host, :identity, :private_key, :name
15
+
16
+ alias metadata metaData
17
+ alias metadata= metaData=
18
+
19
+ def self.build(attrs)
20
+ new(attrs)
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,18 @@
1
+ class Nis::Struct
2
+ # @attr [Integer] timeStamp
3
+ # @attr [String] error
4
+ # @attr [String] message
5
+ # @attr [Integer] status
6
+ # @see http://bob.nem.ninja/docs/#error-object
7
+ class Error
8
+ include Nis::Util::Assignable
9
+ attr_accessor :timeStamp, :error, :message, :status
10
+
11
+ alias :timestamp :timeStamp
12
+ alias :timestamp= :timeStamp=
13
+
14
+ def self.build(attrs)
15
+ new(attrs)
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,17 @@
1
+ class Nis::Struct
2
+ # @attr [Array <Nis::Struct::ExplorerTransferViewModel>] txes
3
+ # @attr [Nis::Struct::Block] block
4
+ # @attr [String] hash
5
+ # @attr [String] difficulty
6
+ # @see http://bob.nem.ninja/docs/#explorerBlockViewModel
7
+ class ExplorerBlockViewModel
8
+ include Nis::Util::Assignable
9
+ attr_accessor :txes, :block, :hash, :difficulty
10
+
11
+ def self.build(attrs)
12
+ attrs[:txes] = attrs[:txes].map { |tx| ExplorerTransferViewModel.build(tx) }
13
+ attrs[:block] = Block.build(attrs[:block])
14
+ new(attrs)
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,18 @@
1
+ class Nis::Struct
2
+ # @attr [Nis::Struct::Transaction] tx
3
+ # @attr [String] hash
4
+ # @attr [String] innerHash
5
+ # @see http://bob.nem.ninja/docs/#explorerTransferViewModel
6
+ class ExplorerTransferViewModel
7
+ include Nis::Util::Assignable
8
+ attr_accessor :tx, :hash, :innerHash
9
+
10
+ alias inner_hash innerHash
11
+ alias inner_hash= innerHash=
12
+
13
+ def self.build(attrs)
14
+ attrs[:tx] = Transaction.build(attrs[:tx])
15
+ new(attrs)
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,16 @@
1
+ class Nis::Struct
2
+ # @attr [Array <Nis::Struct::Transaction>] txes
3
+ # @attr [String] block
4
+ # @attr [String] hash
5
+ # @see http://bob.nem.ninja/docs/#explorerViewModelTransaction
6
+ class ExplorerViewModelTransaction
7
+ include Nis::Util::Assignable
8
+ attr_accessor :txes, :block, :hash
9
+
10
+ def self.build(attrs)
11
+ attrs[:txes] = attrs[:txes].map { |tx| Transaction.build(tx) }
12
+ attrs[:block] = Block.build(attrs[:block])
13
+ new(attrs)
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,14 @@
1
+ class Nis::Struct
2
+ # @attr [Nis::Struct::NodeInfo] node
3
+ # @attr [Integer] syncs
4
+ # @attr [Nis::Struct::NodeExperience] experience
5
+ # @see http://bob.nem.ninja/docs/#extendedNodeExperiencePair
6
+ class ExtendedNodeExperiencePair
7
+ include Nis::Util::Assignable
8
+ attr_accessor :node, :syncs, :experiences
9
+
10
+ def self.build(attrs)
11
+ new(attrs)
12
+ end
13
+ end
14
+ end
@@ -1,8 +1,8 @@
1
1
  class Nis::Struct
2
- # @attr [Integer] timestamp
2
+ # @attr [Integer] timeStamp
3
3
  # @attr [String] id
4
4
  # @attr [Integer] difficulty
5
- # @attr [Integer] total_fee
5
+ # @attr [Integer] totalFee
6
6
  # @attr [Integer] height
7
7
  # @see http://bob.nem.ninja/docs/#harvestInfo
8
8
  class HarvestInfo
@@ -10,7 +10,9 @@ class Nis::Struct
10
10
  attr_accessor :creator, :id, :description, :properties, :levy
11
11
 
12
12
  def self.build(attrs)
13
+ attrs[:id] = MosaicId.build(attrs[:id])
13
14
  attrs[:properties] = attrs[:properties].map { |p| MosaicProperties.build(p) }
15
+ attrs[:levy] = MosaicLevy.build(attrs[:levy]) if attrs[:levy]
14
16
  new(attrs)
15
17
  end
16
18
  end
@@ -0,0 +1,12 @@
1
+ class Nis::Struct
2
+ # @attr [Integer] id
3
+ # @see http://bob.nem.ninja/docs/#mosaicDefinitionMetaData
4
+ class MosaicDefinitionMetaData
5
+ include Nis::Util::Assignable
6
+ attr_accessor :id
7
+
8
+ def self.build(attrs)
9
+ new(attrs)
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,16 @@
1
+ class Nis::Struct
2
+ # @attr [Nis::Struct::MosaicMetaData] meta
3
+ # @attr [Nis::Struct::Mosaic] mosaic
4
+ # @see http://bob.nem.ninja/docs/#mosaicDefinitionMetaDataPair
5
+ class MosaicDefinitionMetaDataPair
6
+ include Nis::Util::Assignable
7
+ attr_accessor :meta, :mosaic
8
+
9
+ def self.build(attrs)
10
+ new(
11
+ meta: MosaicDefinitionMetaData.build(attrs[:meta]),
12
+ mosaic: MosaicDefinition.build(attrs[:mosaic])
13
+ )
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,18 @@
1
+ class Nis::Struct
2
+ # @attr [Integer] type
3
+ # @attr [String] recipient
4
+ # @attr [Nis::Struct::MosaicId] mosaicId
5
+ # @attr [Integer] fee
6
+ # @see http://bob.nem.ninja/docs/#mosaicLevy
7
+ class MosaicLevy
8
+ include Nis::Util::Assignable
9
+ attr_accessor :type, :recipient, :mosaicId, :fee
10
+
11
+ alias :mosaid_id :mosaicId
12
+
13
+ def self.build(attrs)
14
+ attrs[:mosaicId] = MosaicId.build(attrs[:mosaicId])
15
+ new(attrs)
16
+ end
17
+ end
18
+ end
@@ -1,13 +1,18 @@
1
1
  class Nis::Struct
2
2
  # @attr [Array] properties
3
3
  # @attr [Integer] divisibility
4
- # @attr [Integer] initial_supply
5
- # @attr [Boolean] supply_mutable
4
+ # @attr [Integer] initialSupply
5
+ # @attr [Boolean] supplyMutable
6
6
  # @attr [Boolean] transferable
7
7
  # @see http://bob.nem.ninja/docs/#mosaicProperties
8
8
  class MosaicProperties
9
9
  include Nis::Util::Assignable
10
- attr_accessor :divisibility, :initial_supply, :supply_mutable, :transferable
10
+ attr_accessor :divisibility, :initialSupply, :supplyMutable, :transferable
11
+
12
+ alias initial_supply initialSupply
13
+ alias initial_supply= initialSupply=
14
+ alias supply_mutable supplyMutable
15
+ alias supply_mutable= supplyMutable=
11
16
 
12
17
  def self.build(attrs)
13
18
  new(attrs)
@@ -0,0 +1,12 @@
1
+ class Nis::Struct
2
+ # @attr [Integer] id
3
+ # @see http://bob.nem.ninja/docs/#namespaceMetaData
4
+ class NamespaceMetaData
5
+ include Nis::Util::Assignable
6
+ attr_accessor :id
7
+
8
+ def self.build(attrs)
9
+ new(attrs)
10
+ end
11
+ end
12
+ end
@@ -0,0 +1,16 @@
1
+ class Nis::Struct
2
+ # @attr [String] meta
3
+ # @attr [String] namespace
4
+ # @see http://bob.nem.ninja/docs/#namespaceMetaDataPair
5
+ class NamespaceMetaDataPair
6
+ include Nis::Util::Assignable
7
+ attr_accessor :meta, :namespace
8
+
9
+ def self.build(meta:, namespace:)
10
+ new(
11
+ meta: NamespaceMetaData.build(meta),
12
+ namespace: Namespace.build(namespace)
13
+ )
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,19 @@
1
+ class Nis::Struct
2
+ # @attr [Nis::Struct::NodeInfo] node
3
+ # @attr [Nis::Struct::NodeInfo] nis_info
4
+ # @see http://bob.nem.ninja/docs/#nisNodeInfo
5
+ class NisNodeInfo
6
+ include Nis::Util::Assignable
7
+ attr_accessor :node, :nisInfo
8
+
9
+ alias :nis_info :nisInfo
10
+ alias :nis_info= :nisInfo=
11
+
12
+ def self.build(attrs)
13
+ new(
14
+ node: Nis::Struct::NodeInfo.build(attrs[:node]),
15
+ nisInfo: Nis::Struct::NodeInfo.build(attrs[:nisInfo])
16
+ )
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,20 @@
1
+ class Nis::Struct
2
+ # @attr [Array] inactive
3
+ # @attr [Array] active
4
+ # @attr [Array] busy
5
+ # @attr [Array] failure
6
+ # @see http://bob.nem.ninja/docs/#nodeCollection
7
+ class NodeCollection
8
+ include Nis::Util::Assignable
9
+ attr_accessor :inactive, :active, :busy, :failure
10
+
11
+ def self.build(attrs)
12
+ new(
13
+ inactive: attrs[:inactive].map { |n| NodeInfo.build(n) },
14
+ active: attrs[:active].map { |n| NodeInfo.build(n) },
15
+ busy: attrs[:busy].map { |n| NodeInfo.build(n) },
16
+ failure: attrs[:failure].map { |n| NodeInfo.build(n) }
17
+ )
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,13 @@
1
+ class Nis::Struct
2
+ # @attr [Integer] s
3
+ # @attr [Integer] f
4
+ # @see http://bob.nem.ninja/docs/#
5
+ class NodeExperience
6
+ include Nis::Util::Assignable
7
+ attr_accessor :s, :f
8
+
9
+ def self.build(attrs)
10
+ new(attrs)
11
+ end
12
+ end
13
+ end