IBlock
, IBlockAccount
, IBlockBalance
, IBlockLink
, IBlockPrevious
, IBlockRepresentative
public final class StateBlock extends Block implements IBlockLink, IBlockBalance, IBlockPrevious, IBlockRepresentative, IBlockAccount
Represents a state block, and the associated data.
To construct a new state block, use the StateBlockBuilder
provided.
Modifier and Type | Field | Description |
---|---|---|
static Function<com.google.gson.JsonObject,StateBlock> |
DESERIALIZER |
A function which converts a
JsonObject into a StateBlock instance. |
HASH_LENGTH
Constructor | Description |
---|---|
StateBlock(StateBlockSubType subtype,
String signature,
WorkSolution work,
NanoAccount accountAddress,
String previousBlockHash,
NanoAccount representativeAddress,
BigInteger balance,
String link) |
Constructs a new state block.
|
StateBlock(StateBlockSubType subtype,
String signature,
WorkSolution work,
NanoAccount accountAddress,
String previousBlockHash,
NanoAccount representativeAddress,
BigInteger balance,
NanoAccount link) |
Constructs a new state block.
|
Modifier and Type | Method | Description |
---|---|---|
protected byte[][] |
generateHashables() |
|
NanoAccount |
getAccount() |
Returns the account which this block belongs to.
|
BigInteger |
getBalance() |
Returns the remaining balance of the account after this block has been processed.
|
BlockIntent |
getIntent() |
Returns an object containing details on what the intent and purpose is of this block.
|
NanoAccount |
getLinkAsAccount() |
Returns the miscellaneous link data field, encoded as a Nano account.
|
String |
getLinkData() |
Returns the miscellaneous link data field, encoded as a hexadecimal string.
|
String |
getPreviousBlockHash() |
Returns the hash of the previous block in the account's chain.
|
NanoAccount |
getRepresentative() |
Returns the address of the representative which the account's balance delegates to.
|
StateBlockSubType |
getSubType() |
buildJsonObject, calculateHashBytes, equals, fillJsonBlanks, getHash, getHashBytes, getJsonObject, getJsonObject, getSignature, getType, getTypeString, getWorkSolution, hashCode, parse, parse, toJsonString, toJsonString, toString
getHash, getSignature, getType, getTypeString, getWorkSolution, isComplete
public static final Function<com.google.gson.JsonObject,StateBlock> DESERIALIZER
JsonObject
into a StateBlock
instance.public StateBlock(StateBlockSubType subtype, String signature, WorkSolution work, NanoAccount accountAddress, String previousBlockHash, NanoAccount representativeAddress, BigInteger balance, NanoAccount link)
subtype
- the block's subtypesignature
- the block verification signaturework
- the computed work solutionaccountAddress
- the account's addresspreviousBlockHash
- the previous block's hashrepresentativeAddress
- the representative address of this accountbalance
- the balance of the account after this transaction, in rawlink
- the link data for this transaction, encoded as an accountStateBlockBuilder
public StateBlock(StateBlockSubType subtype, String signature, WorkSolution work, NanoAccount accountAddress, String previousBlockHash, NanoAccount representativeAddress, BigInteger balance, String link)
subtype
- the block's subtypesignature
- the block verification signaturework
- the computed work solutionaccountAddress
- the account's addresspreviousBlockHash
- the previous block's hashrepresentativeAddress
- the representative address of this accountbalance
- the balance of the account after this transaction, in rawlink
- the link data for this transaction, encoded as a hexadecimal stringStateBlockBuilder
public final StateBlockSubType getSubType()
public final NanoAccount getAccount()
IBlockAccount
getAccount
in interface IBlockAccount
public final String getPreviousBlockHash()
IBlockPrevious
getPreviousBlockHash
in interface IBlockPrevious
public final NanoAccount getRepresentative()
IBlockRepresentative
getRepresentative
in interface IBlockRepresentative
public final BigInteger getBalance()
IBlockBalance
getBalance
in interface IBlockBalance
public final String getLinkData()
getLinkData
in interface IBlockLink
public final NanoAccount getLinkAsAccount()
getLinkAsAccount
in interface IBlockLink
public BlockIntent getIntent()
IBlock
protected byte[][] generateHashables()
generateHashables
in class Block
Copyright © 2020. All rights reserved.