Module com.hedera.hashgraph.sdk
Package com.hedera.hashgraph.sdk.proto
Class NodeStakeUpdateTransactionBody
java.lang.Object
com.google.protobuf.AbstractMessageLite<NodeStakeUpdateTransactionBody,NodeStakeUpdateTransactionBody.Builder>
com.google.protobuf.GeneratedMessageLite<NodeStakeUpdateTransactionBody,NodeStakeUpdateTransactionBody.Builder>
com.hedera.hashgraph.sdk.proto.NodeStakeUpdateTransactionBody
- All Implemented Interfaces:
com.google.protobuf.MessageLite,com.google.protobuf.MessageLiteOrBuilder,NodeStakeUpdateTransactionBodyOrBuilder
@Generated
public final class NodeStakeUpdateTransactionBody
extends com.google.protobuf.GeneratedMessageLite<NodeStakeUpdateTransactionBody,NodeStakeUpdateTransactionBody.Builder>
implements NodeStakeUpdateTransactionBodyOrBuilder
* A system initiated transaction to update staking information. This transaction SHALL be issued at the end of each staking period to update node stakes and reward limits.<br/> This transaction SHALL be a child of the first transaction to reach consensus following the end of the previous staking period.<br/> This transaction MUST NOT be sent by a client and SHALL be rejected if received by any node.<br/> This transaction SHALL be present in the record stream or block stream. ### Block Stream Effects NoneProtobuf type
proto.NodeStakeUpdateTransactionBody-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic final class* A system initiated transaction to update staking information.Nested classes/interfaces inherited from class com.google.protobuf.GeneratedMessageLite
com.google.protobuf.GeneratedMessageLite.DefaultInstanceBasedParser<T extends com.google.protobuf.GeneratedMessageLite<T,?>>, com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<MessageType extends com.google.protobuf.GeneratedMessageLite.ExtendableMessage<MessageType, BuilderType>, BuilderType extends com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<MessageType, BuilderType>>, com.google.protobuf.GeneratedMessageLite.ExtendableMessage<MessageType extends com.google.protobuf.GeneratedMessageLite.ExtendableMessage<MessageType, BuilderType>, BuilderType extends com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<MessageType, BuilderType>>, com.google.protobuf.GeneratedMessageLite.ExtendableMessageOrBuilder<MessageType extends com.google.protobuf.GeneratedMessageLite.ExtendableMessage<MessageType, BuilderType>, BuilderType extends com.google.protobuf.GeneratedMessageLite.ExtendableBuilder<MessageType, BuilderType>>, com.google.protobuf.GeneratedMessageLite.GeneratedExtension<ContainingType extends com.google.protobuf.MessageLite, Type>, com.google.protobuf.GeneratedMessageLite.MethodToInvoke, com.google.protobuf.GeneratedMessageLite.SerializedForm Nested classes/interfaces inherited from class com.google.protobuf.AbstractMessageLite
com.google.protobuf.AbstractMessageLite.InternalOneOfEnum -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intFields inherited from class com.google.protobuf.GeneratedMessageLite
unknownFieldsFields inherited from class com.google.protobuf.AbstractMessageLite
memoizedHashCode -
Method Summary
Modifier and TypeMethodDescriptionprotected final ObjectdynamicMethod(com.google.protobuf.GeneratedMessageLite.MethodToInvoke method, Object arg0, Object arg1) * A timestamp indicating the end of the staking period.long* A maximum network-wide stake that can earn full rewards.<br/> If the network-wide stake, in tinybar, exceeds this value, then staking rewards must be reduced to maintain "smooth" reward adjustments as defined in HIP-782.<br/> This value is further detailed in HIP-786.long* A maximum reward rate for this staking period.long* A limit amount that could be paid as staking rewards.<br/> In the limit case, the network could pay at most this amount, in tinybar as staking rewards for the staking period that just ended, if all other conditions were met to perfection.<br/> <p> This value SHALL reflect the result of a maximum reward calculation that takes into account the balance thresholds and maximum stake thresholds as defined in HIP-782 and HIP-786.<br/> This value is a convenience.* A fraction of network and service fees paid to the "node" reward account.<br/> The node staking rewards are paid from the designated reward account `0.0.801`, which receives a fraction of network and service fees for each transaction.getNodeStake(int index) * A list of `NodeStake` entries for each node at the beginning of the new staking period.int* A list of `NodeStake` entries for each node at the beginning of the new staking period.* A list of `NodeStake` entries for each node at the beginning of the new staking period.getNodeStakeOrBuilder(int index) * A list of `NodeStake` entries for each node at the beginning of the new staking period.List<? extends NodeStakeOrBuilder> * A list of `NodeStake` entries for each node at the beginning of the new staking period.long* An amount reserved in the staking reward account.<br/> This is an amount "reserved" in the balance of account `0.0.800` that is already owed for pending rewards that were previously earned but have not yet been collected.<br/> This value is further detailed in HIP-786.long* A minimum balance required for maximum staking rewards.<br/> This value is further detailed in HIP-786.long* A number of minutes representing a staking period.<br/> <blockquote>Note<blockquote> For the special case of `1440` minutes, periods are treated as calendar days aligned to midnight UTC, rather than repeating `1440` minute periods left-aligned at the epoch.</blockquote></blockquote>long* A limit to the number of staking periods held for inactive accounts.<br/> This is the maximum number of trailing staking periods for which an account can collect staking rewards.<br/> #### Example If this value is 365 with a calendar day period, then each account must collect rewards at least once per calendar year to receive the full amount of staking rewards earned.* A fraction of network and service fees paid to the "general" reward account.<br/> The general staking rewards are paid from the designated reward account `0.0.800`, which receives a fraction of network and service fees for each transaction.longDeprecated.proto.NodeStakeUpdateTransactionBody.staking_reward_rate is deprecated.long* A minimum balance required to pay general staking rewards.long* An available, unreserved, amount in the staking reward account.<br/> This is the balance of the staking reward account `0.0.800` at the close of the staking period that just ended, after reduction for all "reserved" funds necessary to pay previously earned rewards.<br/> This value is further detailed in HIP-786.boolean* A timestamp indicating the end of the staking period.boolean* A fraction of network and service fees paid to the "node" reward account.<br/> The node staking rewards are paid from the designated reward account `0.0.801`, which receives a fraction of network and service fees for each transaction.boolean* A fraction of network and service fees paid to the "general" reward account.<br/> The general staking rewards are paid from the designated reward account `0.0.800`, which receives a fraction of network and service fees for each transaction.newBuilder(NodeStakeUpdateTransactionBody prototype) parseDelimitedFrom(InputStream input) parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom(byte[] data) parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom(com.google.protobuf.ByteString data) parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom(com.google.protobuf.CodedInputStream input) parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom(InputStream input) parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) parseFrom(ByteBuffer data) parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) static com.google.protobuf.Parser<NodeStakeUpdateTransactionBody> parser()Methods inherited from class com.google.protobuf.GeneratedMessageLite
createBuilder, createBuilder, emptyBooleanList, emptyDoubleList, emptyFloatList, emptyIntList, emptyLongList, emptyProtobufList, equals, getDefaultInstanceForType, getParserForType, getSerializedSize, hashCode, isInitialized, makeImmutable, mergeLengthDelimitedField, mergeUnknownFields, mergeVarintField, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, mutableCopy, newBuilderForType, newMessageInfo, newRepeatedGeneratedExtension, newSingularGeneratedExtension, parseDelimitedFrom, parseDelimitedFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parseFrom, parsePartialFrom, parseUnknownField, registerDefaultInstance, toBuilder, toString, writeToMethods inherited from class com.google.protobuf.AbstractMessageLite
addAll, checkByteStringIsUtf8, toByteArray, toByteString, writeDelimitedTo, writeToMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface com.google.protobuf.MessageLiteOrBuilder
getDefaultInstanceForType, isInitialized
-
Field Details
-
END_OF_STAKING_PERIOD_FIELD_NUMBER
public static final int END_OF_STAKING_PERIOD_FIELD_NUMBER- See Also:
-
NODE_STAKE_FIELD_NUMBER
public static final int NODE_STAKE_FIELD_NUMBER- See Also:
-
MAX_STAKING_REWARD_RATE_PER_HBAR_FIELD_NUMBER
public static final int MAX_STAKING_REWARD_RATE_PER_HBAR_FIELD_NUMBER- See Also:
-
NODE_REWARD_FEE_FRACTION_FIELD_NUMBER
public static final int NODE_REWARD_FEE_FRACTION_FIELD_NUMBER- See Also:
-
STAKING_PERIODS_STORED_FIELD_NUMBER
public static final int STAKING_PERIODS_STORED_FIELD_NUMBER- See Also:
-
STAKING_PERIOD_FIELD_NUMBER
public static final int STAKING_PERIOD_FIELD_NUMBER- See Also:
-
STAKING_REWARD_FEE_FRACTION_FIELD_NUMBER
public static final int STAKING_REWARD_FEE_FRACTION_FIELD_NUMBER- See Also:
-
STAKING_START_THRESHOLD_FIELD_NUMBER
public static final int STAKING_START_THRESHOLD_FIELD_NUMBER- See Also:
-
STAKING_REWARD_RATE_FIELD_NUMBER
public static final int STAKING_REWARD_RATE_FIELD_NUMBER- See Also:
-
RESERVED_STAKING_REWARDS_FIELD_NUMBER
public static final int RESERVED_STAKING_REWARDS_FIELD_NUMBER- See Also:
-
UNRESERVED_STAKING_REWARD_BALANCE_FIELD_NUMBER
public static final int UNRESERVED_STAKING_REWARD_BALANCE_FIELD_NUMBER- See Also:
-
REWARD_BALANCE_THRESHOLD_FIELD_NUMBER
public static final int REWARD_BALANCE_THRESHOLD_FIELD_NUMBER- See Also:
-
MAX_STAKE_REWARDED_FIELD_NUMBER
public static final int MAX_STAKE_REWARDED_FIELD_NUMBER- See Also:
-
MAX_TOTAL_REWARD_FIELD_NUMBER
public static final int MAX_TOTAL_REWARD_FIELD_NUMBER- See Also:
-
-
Method Details
-
hasEndOfStakingPeriod
public boolean hasEndOfStakingPeriod()* A timestamp indicating the end of the staking period. <p> This value SHALL be one nanosecond prior to midnight prior to the consensus time of the parent transaction.
.proto.Timestamp end_of_staking_period = 1;- Specified by:
hasEndOfStakingPeriodin interfaceNodeStakeUpdateTransactionBodyOrBuilder- Returns:
- Whether the endOfStakingPeriod field is set.
-
getEndOfStakingPeriod
* A timestamp indicating the end of the staking period. <p> This value SHALL be one nanosecond prior to midnight prior to the consensus time of the parent transaction.
.proto.Timestamp end_of_staking_period = 1;- Specified by:
getEndOfStakingPeriodin interfaceNodeStakeUpdateTransactionBodyOrBuilder- Returns:
- The endOfStakingPeriod.
-
getNodeStakeList
* A list of `NodeStake` entries for each node at the beginning of the new staking period. <p> This list SHALL have one entry for each node participating in network consensus.
repeated .proto.NodeStake node_stake = 2;- Specified by:
getNodeStakeListin interfaceNodeStakeUpdateTransactionBodyOrBuilder
-
getNodeStakeOrBuilderList
* A list of `NodeStake` entries for each node at the beginning of the new staking period. <p> This list SHALL have one entry for each node participating in network consensus.
repeated .proto.NodeStake node_stake = 2; -
getNodeStakeCount
public int getNodeStakeCount()* A list of `NodeStake` entries for each node at the beginning of the new staking period. <p> This list SHALL have one entry for each node participating in network consensus.
repeated .proto.NodeStake node_stake = 2;- Specified by:
getNodeStakeCountin interfaceNodeStakeUpdateTransactionBodyOrBuilder
-
getNodeStake
* A list of `NodeStake` entries for each node at the beginning of the new staking period. <p> This list SHALL have one entry for each node participating in network consensus.
repeated .proto.NodeStake node_stake = 2;- Specified by:
getNodeStakein interfaceNodeStakeUpdateTransactionBodyOrBuilder
-
getNodeStakeOrBuilder
* A list of `NodeStake` entries for each node at the beginning of the new staking period. <p> This list SHALL have one entry for each node participating in network consensus.
repeated .proto.NodeStake node_stake = 2; -
getMaxStakingRewardRatePerHbar
public long getMaxStakingRewardRatePerHbar()* A maximum reward rate for this staking period. <p> This SHALL be a ratio of tinybar to HBAR.<br/> An account SHALL NOT receive a reward greater than the product of this ratio and the total number of HBAR staked by that account.
int64 max_staking_reward_rate_per_hbar = 3;- Specified by:
getMaxStakingRewardRatePerHbarin interfaceNodeStakeUpdateTransactionBodyOrBuilder- Returns:
- The maxStakingRewardRatePerHbar.
-
hasNodeRewardFeeFraction
public boolean hasNodeRewardFeeFraction()* A fraction of network and service fees paid to the "node" reward account.<br/> The node staking rewards are paid from the designated reward account `0.0.801`, which receives a fraction of network and service fees for each transaction. This field is the value of that fraction for the last staking period.
.proto.Fraction node_reward_fee_fraction = 4;- Specified by:
hasNodeRewardFeeFractionin interfaceNodeStakeUpdateTransactionBodyOrBuilder- Returns:
- Whether the nodeRewardFeeFraction field is set.
-
getNodeRewardFeeFraction
* A fraction of network and service fees paid to the "node" reward account.<br/> The node staking rewards are paid from the designated reward account `0.0.801`, which receives a fraction of network and service fees for each transaction. This field is the value of that fraction for the last staking period.
.proto.Fraction node_reward_fee_fraction = 4;- Specified by:
getNodeRewardFeeFractionin interfaceNodeStakeUpdateTransactionBodyOrBuilder- Returns:
- The nodeRewardFeeFraction.
-
getStakingPeriodsStored
public long getStakingPeriodsStored()* A limit to the number of staking periods held for inactive accounts.<br/> This is the maximum number of trailing staking periods for which an account can collect staking rewards.<br/> #### Example If this value is 365 with a calendar day period, then each account must collect rewards at least once per calendar year to receive the full amount of staking rewards earned. <p> Staking rewards SHALL be stored in network state for no more than `staking_periods_stored` staking periods.<br/> Each account MUST participate in at least one transaction that affects its balance, staking, or staking metadata within this time limit to receive all available staking rewards.
int64 staking_periods_stored = 5;- Specified by:
getStakingPeriodsStoredin interfaceNodeStakeUpdateTransactionBodyOrBuilder- Returns:
- The stakingPeriodsStored.
-
getStakingPeriod
public long getStakingPeriod()* A number of minutes representing a staking period.<br/> <blockquote>Note<blockquote> For the special case of `1440` minutes, periods are treated as calendar days aligned to midnight UTC, rather than repeating `1440` minute periods left-aligned at the epoch.</blockquote></blockquote>
int64 staking_period = 6;- Specified by:
getStakingPeriodin interfaceNodeStakeUpdateTransactionBodyOrBuilder- Returns:
- The stakingPeriod.
-
hasStakingRewardFeeFraction
public boolean hasStakingRewardFeeFraction()* A fraction of network and service fees paid to the "general" reward account.<br/> The general staking rewards are paid from the designated reward account `0.0.800`, which receives a fraction of network and service fees for each transaction. This field is the value of that fraction for the last staking period.
.proto.Fraction staking_reward_fee_fraction = 7;- Specified by:
hasStakingRewardFeeFractionin interfaceNodeStakeUpdateTransactionBodyOrBuilder- Returns:
- Whether the stakingRewardFeeFraction field is set.
-
getStakingRewardFeeFraction
* A fraction of network and service fees paid to the "general" reward account.<br/> The general staking rewards are paid from the designated reward account `0.0.800`, which receives a fraction of network and service fees for each transaction. This field is the value of that fraction for the last staking period.
.proto.Fraction staking_reward_fee_fraction = 7;- Specified by:
getStakingRewardFeeFractionin interfaceNodeStakeUpdateTransactionBodyOrBuilder- Returns:
- The stakingRewardFeeFraction.
-
getStakingStartThreshold
public long getStakingStartThreshold()* A minimum balance required to pay general staking rewards. <p> If the balance of the staking reward account `0.0.800` is below this threshold, staking rewards SHALL NOT be paid in full.
int64 staking_start_threshold = 8;- Specified by:
getStakingStartThresholdin interfaceNodeStakeUpdateTransactionBodyOrBuilder- Returns:
- The stakingStartThreshold.
-
getStakingRewardRate
Deprecated.proto.NodeStakeUpdateTransactionBody.staking_reward_rate is deprecated. See node_stake_update.proto;l=135* HIP-786 replaced this field with `max_total_reward`.<br/> This was a maximum total number of tinybars to be distributed as staking rewards in the staking period that just ended.
int64 staking_reward_rate = 9 [deprecated = true];- Specified by:
getStakingRewardRatein interfaceNodeStakeUpdateTransactionBodyOrBuilder- Returns:
- The stakingRewardRate.
-
getReservedStakingRewards
public long getReservedStakingRewards()* An amount reserved in the staking reward account.<br/> This is an amount "reserved" in the balance of account `0.0.800` that is already owed for pending rewards that were previously earned but have not yet been collected.<br/> This value is further detailed in HIP-786.
int64 reserved_staking_rewards = 10;- Specified by:
getReservedStakingRewardsin interfaceNodeStakeUpdateTransactionBodyOrBuilder- Returns:
- The reservedStakingRewards.
-
getUnreservedStakingRewardBalance
public long getUnreservedStakingRewardBalance()* An available, unreserved, amount in the staking reward account.<br/> This is the balance of the staking reward account `0.0.800` at the close of the staking period that just ended, after reduction for all "reserved" funds necessary to pay previously earned rewards.<br/> This value is further detailed in HIP-786. <p> This value SHALL be used to calculate the reward ratio according to the formula detailed in HIP-782.
int64 unreserved_staking_reward_balance = 11;- Specified by:
getUnreservedStakingRewardBalancein interfaceNodeStakeUpdateTransactionBodyOrBuilder- Returns:
- The unreservedStakingRewardBalance.
-
getRewardBalanceThreshold
public long getRewardBalanceThreshold()* A minimum balance required for maximum staking rewards.<br/> This value is further detailed in HIP-786. The formula to calculate staking rewards is detailed in HIP-782. <p> The value of `unreserved_staking_reward_balance` MUST match or exceed the value of this field to support the maximum staking reward ratio.<br/>
int64 reward_balance_threshold = 12;- Specified by:
getRewardBalanceThresholdin interfaceNodeStakeUpdateTransactionBodyOrBuilder- Returns:
- The rewardBalanceThreshold.
-
getMaxStakeRewarded
public long getMaxStakeRewarded()* A maximum network-wide stake that can earn full rewards.<br/> If the network-wide stake, in tinybar, exceeds this value, then staking rewards must be reduced to maintain "smooth" reward adjustments as defined in HIP-782.<br/> This value is further detailed in HIP-786. <p> If the total network-wide stake exceeds this value, the effective staking reward ratio MUST be reduced to maintain solvency of the staking reward account.
int64 max_stake_rewarded = 13;- Specified by:
getMaxStakeRewardedin interfaceNodeStakeUpdateTransactionBodyOrBuilder- Returns:
- The maxStakeRewarded.
-
getMaxTotalReward
public long getMaxTotalReward()* A limit amount that could be paid as staking rewards.<br/> In the limit case, the network could pay at most this amount, in tinybar as staking rewards for the staking period that just ended, if all other conditions were met to perfection.<br/> <p> This value SHALL reflect the result of a maximum reward calculation that takes into account the balance thresholds and maximum stake thresholds as defined in HIP-782 and HIP-786.<br/> This value is a convenience. The actual defined calculation SHALL be authoritative in the unlikely event this value differs.
int64 max_total_reward = 14;- Specified by:
getMaxTotalRewardin interfaceNodeStakeUpdateTransactionBodyOrBuilder- Returns:
- The maxTotalReward.
-
parseFrom
public static NodeStakeUpdateTransactionBody parseFrom(ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static NodeStakeUpdateTransactionBody parseFrom(ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static NodeStakeUpdateTransactionBody parseFrom(com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static NodeStakeUpdateTransactionBody parseFrom(com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static NodeStakeUpdateTransactionBody parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
public static NodeStakeUpdateTransactionBody parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException - Throws:
com.google.protobuf.InvalidProtocolBufferException
-
parseFrom
- Throws:
IOException
-
parseFrom
public static NodeStakeUpdateTransactionBody parseFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseDelimitedFrom
public static NodeStakeUpdateTransactionBody parseDelimitedFrom(InputStream input) throws IOException - Throws:
IOException
-
parseDelimitedFrom
public static NodeStakeUpdateTransactionBody parseDelimitedFrom(InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
parseFrom
public static NodeStakeUpdateTransactionBody parseFrom(com.google.protobuf.CodedInputStream input) throws IOException - Throws:
IOException
-
parseFrom
public static NodeStakeUpdateTransactionBody parseFrom(com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws IOException - Throws:
IOException
-
newBuilder
-
newBuilder
public static NodeStakeUpdateTransactionBody.Builder newBuilder(NodeStakeUpdateTransactionBody prototype) -
dynamicMethod
protected final Object dynamicMethod(com.google.protobuf.GeneratedMessageLite.MethodToInvoke method, Object arg0, Object arg1) - Specified by:
dynamicMethodin classcom.google.protobuf.GeneratedMessageLite<NodeStakeUpdateTransactionBody,NodeStakeUpdateTransactionBody.Builder>
-
getDefaultInstance
-
parser
-