All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.hederahashgraph.api.proto.java.BlockStreamInfo Maven / Gradle / Ivy

There is a newer version: 0.57.1
Show newest version
// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: state/blockstream/block_stream_info.proto

package com.hederahashgraph.api.proto.java;

/**
 * 
 **
 * A message stored in state to maintain block stream parameters.<br/>
 * Nodes use this information for three purposes.
 * 1. To maintain hash chain continuity at restart and reconnect boundaries.
 * 1. To store historical hashes for implementation of the EVM `BLOCKHASH`
 *    and `PREVRANDAO` opcodes.
 * 1. To track the amount of consensus time that has passed between blocks.
 * This value MUST be updated for every block.<br/>
 * This value MUST be transmitted in the "state changes" section of
 * _each_ block, but MUST be updated at the beginning of the _next_ block.<br/>
 * This value SHALL contain the block hash up to, and including, the
 * immediately prior completed block.<br/>
 * The state change to update this singleton MUST be the last
 * block item in this block.
 * 
* * Protobuf type {@code com.hedera.hapi.node.state.blockstream.BlockStreamInfo} */ public final class BlockStreamInfo extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:com.hedera.hapi.node.state.blockstream.BlockStreamInfo) BlockStreamInfoOrBuilder { private static final long serialVersionUID = 0L; // Use BlockStreamInfo.newBuilder() to construct. private BlockStreamInfo(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private BlockStreamInfo() { trailingOutputHashes_ = com.google.protobuf.ByteString.EMPTY; trailingBlockHashes_ = com.google.protobuf.ByteString.EMPTY; inputTreeRootHash_ = com.google.protobuf.ByteString.EMPTY; startOfBlockStateHash_ = com.google.protobuf.ByteString.EMPTY; rightmostPrecedingOutputTreeHashes_ = java.util.Collections.emptyList(); } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new BlockStreamInfo(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private BlockStreamInfo( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } int mutable_bitField0_ = 0; com.google.protobuf.UnknownFieldSet.Builder unknownFields = com.google.protobuf.UnknownFieldSet.newBuilder(); try { boolean done = false; while (!done) { int tag = input.readTag(); switch (tag) { case 0: done = true; break; case 8: { blockNumber_ = input.readUInt64(); break; } case 18: { com.hederahashgraph.api.proto.java.Timestamp.Builder subBuilder = null; if (blockTime_ != null) { subBuilder = blockTime_.toBuilder(); } blockTime_ = input.readMessage(com.hederahashgraph.api.proto.java.Timestamp.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(blockTime_); blockTime_ = subBuilder.buildPartial(); } break; } case 26: { trailingOutputHashes_ = input.readBytes(); break; } case 34: { trailingBlockHashes_ = input.readBytes(); break; } case 42: { inputTreeRootHash_ = input.readBytes(); break; } case 50: { startOfBlockStateHash_ = input.readBytes(); break; } case 56: { numPrecedingOutputItems_ = input.readUInt32(); break; } case 66: { if (!((mutable_bitField0_ & 0x00000001) != 0)) { rightmostPrecedingOutputTreeHashes_ = new java.util.ArrayList(); mutable_bitField0_ |= 0x00000001; } rightmostPrecedingOutputTreeHashes_.add(input.readBytes()); break; } case 74: { com.hederahashgraph.api.proto.java.Timestamp.Builder subBuilder = null; if (blockEndTime_ != null) { subBuilder = blockEndTime_.toBuilder(); } blockEndTime_ = input.readMessage(com.hederahashgraph.api.proto.java.Timestamp.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(blockEndTime_); blockEndTime_ = subBuilder.buildPartial(); } break; } case 80: { postUpgradeWorkDone_ = input.readBool(); break; } case 90: { com.hederahashgraph.api.proto.java.SemanticVersion.Builder subBuilder = null; if (creationSoftwareVersion_ != null) { subBuilder = creationSoftwareVersion_.toBuilder(); } creationSoftwareVersion_ = input.readMessage(com.hederahashgraph.api.proto.java.SemanticVersion.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(creationSoftwareVersion_); creationSoftwareVersion_ = subBuilder.buildPartial(); } break; } case 98: { com.hederahashgraph.api.proto.java.Timestamp.Builder subBuilder = null; if (lastIntervalProcessTime_ != null) { subBuilder = lastIntervalProcessTime_.toBuilder(); } lastIntervalProcessTime_ = input.readMessage(com.hederahashgraph.api.proto.java.Timestamp.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(lastIntervalProcessTime_); lastIntervalProcessTime_ = subBuilder.buildPartial(); } break; } default: { if (!parseUnknownField( input, unknownFields, extensionRegistry, tag)) { done = true; } break; } } } } catch (com.google.protobuf.InvalidProtocolBufferException e) { throw e.setUnfinishedMessage(this); } catch (java.io.IOException e) { throw new com.google.protobuf.InvalidProtocolBufferException( e).setUnfinishedMessage(this); } finally { if (((mutable_bitField0_ & 0x00000001) != 0)) { rightmostPrecedingOutputTreeHashes_ = java.util.Collections.unmodifiableList(rightmostPrecedingOutputTreeHashes_); // C } this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.hederahashgraph.api.proto.java.BlockStreamInfoOuterClass.internal_static_com_hedera_hapi_node_state_blockstream_BlockStreamInfo_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.hederahashgraph.api.proto.java.BlockStreamInfoOuterClass.internal_static_com_hedera_hapi_node_state_blockstream_BlockStreamInfo_fieldAccessorTable .ensureFieldAccessorsInitialized( com.hederahashgraph.api.proto.java.BlockStreamInfo.class, com.hederahashgraph.api.proto.java.BlockStreamInfo.Builder.class); } public static final int BLOCK_NUMBER_FIELD_NUMBER = 1; private long blockNumber_; /** *
   **
   * A block number.<br/>
   * This is the current block number.
   * 
* * uint64 block_number = 1; * @return The blockNumber. */ @java.lang.Override public long getBlockNumber() { return blockNumber_; } public static final int BLOCK_TIME_FIELD_NUMBER = 2; private com.hederahashgraph.api.proto.java.Timestamp blockTime_; /** *
   **
   * A consensus time for the current block.<br/>
   * This is the consensus time of the first round in the current block,
   * and is used to determine if this block was the first across an
   * important boundary in consensus time, such as UTC midnight.
   * This may also be used to purge entities expiring between the last
   * block time and this time.
   * 
* * .proto.Timestamp block_time = 2; * @return Whether the blockTime field is set. */ @java.lang.Override public boolean hasBlockTime() { return blockTime_ != null; } /** *
   **
   * A consensus time for the current block.<br/>
   * This is the consensus time of the first round in the current block,
   * and is used to determine if this block was the first across an
   * important boundary in consensus time, such as UTC midnight.
   * This may also be used to purge entities expiring between the last
   * block time and this time.
   * 
* * .proto.Timestamp block_time = 2; * @return The blockTime. */ @java.lang.Override public com.hederahashgraph.api.proto.java.Timestamp getBlockTime() { return blockTime_ == null ? com.hederahashgraph.api.proto.java.Timestamp.getDefaultInstance() : blockTime_; } /** *
   **
   * A consensus time for the current block.<br/>
   * This is the consensus time of the first round in the current block,
   * and is used to determine if this block was the first across an
   * important boundary in consensus time, such as UTC midnight.
   * This may also be used to purge entities expiring between the last
   * block time and this time.
   * 
* * .proto.Timestamp block_time = 2; */ @java.lang.Override public com.hederahashgraph.api.proto.java.TimestampOrBuilder getBlockTimeOrBuilder() { return getBlockTime(); } public static final int TRAILING_OUTPUT_HASHES_FIELD_NUMBER = 3; private com.google.protobuf.ByteString trailingOutputHashes_; /** *
   **
   * A concatenation of hash values.<br/>
   * This combines several trailing output block item hashes and
   * is used as a seed value for a pseudo-random number generator.<br/>
   * This is also required to implement the EVM `PREVRANDAO` opcode.<br/>
   * This MUST contain at least 256 bits of entropy.
   * 
* * bytes trailing_output_hashes = 3; * @return The trailingOutputHashes. */ @java.lang.Override public com.google.protobuf.ByteString getTrailingOutputHashes() { return trailingOutputHashes_; } public static final int TRAILING_BLOCK_HASHES_FIELD_NUMBER = 4; private com.google.protobuf.ByteString trailingBlockHashes_; /** *
   **
   * A concatenation of hash values.<br/>
   * This field combines up to 256 trailing block hashes.
   * <p>
   * If this message is for block number N, then the earliest available
   * hash SHALL be for block number N-256.<br/>
   * The latest available hash SHALL be for block N-1.<br/>
   * This is REQUIRED to implement the EVM `BLOCKHASH` opcode.
   * <p>
   * ### Field Length
   * Each hash value SHALL be the trailing 265 bits of a SHA2-384 hash.<br/>
   * The length of this field SHALL be an integer multiple of 32 bytes.<br/>
   * This field SHALL be at least 32 bytes.<br/>
   * The maximum length of this field SHALL be 8192 bytes.
   * 
* * bytes trailing_block_hashes = 4; * @return The trailingBlockHashes. */ @java.lang.Override public com.google.protobuf.ByteString getTrailingBlockHashes() { return trailingBlockHashes_; } public static final int INPUT_TREE_ROOT_HASH_FIELD_NUMBER = 5; private com.google.protobuf.ByteString inputTreeRootHash_; /** *
   **
   * A SHA2-384 hash value.<br/>
   * This is the hash of the "input" subtree for this block.
   * 
* * bytes input_tree_root_hash = 5; * @return The inputTreeRootHash. */ @java.lang.Override public com.google.protobuf.ByteString getInputTreeRootHash() { return inputTreeRootHash_; } public static final int START_OF_BLOCK_STATE_HASH_FIELD_NUMBER = 6; private com.google.protobuf.ByteString startOfBlockStateHash_; /** *
   **
   * A SHA2-384 hash value.<br/>
   * This is the hash of consensus state at the _start_ of this block.
   * 
* * bytes start_of_block_state_hash = 6; * @return The startOfBlockStateHash. */ @java.lang.Override public com.google.protobuf.ByteString getStartOfBlockStateHash() { return startOfBlockStateHash_; } public static final int NUM_PRECEDING_OUTPUT_ITEMS_FIELD_NUMBER = 7; private int numPrecedingOutputItems_; /** *
   **
   * A count of "output" block items in this block.
   * <p>
   * This SHALL count the number of output block items that _precede_
   * the state change that updates this singleton.
   * 
* * uint32 num_preceding_output_items = 7; * @return The numPrecedingOutputItems. */ @java.lang.Override public int getNumPrecedingOutputItems() { return numPrecedingOutputItems_; } public static final int RIGHTMOST_PRECEDING_OUTPUT_TREE_HASHES_FIELD_NUMBER = 8; private java.util.List rightmostPrecedingOutputTreeHashes_; /** *
   **
   * A concatenation of SHA2-384 hash values.<br/>
   * This is the "rightmost" values of the "output" subtree.
   * <p>
   * The subtree containing these hashes SHALL be constructed from all "output"
   * `BlockItem`s in this block that _precede_ the update to this singleton.
   * 
* * repeated bytes rightmost_preceding_output_tree_hashes = 8; * @return A list containing the rightmostPrecedingOutputTreeHashes. */ @java.lang.Override public java.util.List getRightmostPrecedingOutputTreeHashesList() { return rightmostPrecedingOutputTreeHashes_; } /** *
   **
   * A concatenation of SHA2-384 hash values.<br/>
   * This is the "rightmost" values of the "output" subtree.
   * <p>
   * The subtree containing these hashes SHALL be constructed from all "output"
   * `BlockItem`s in this block that _precede_ the update to this singleton.
   * 
* * repeated bytes rightmost_preceding_output_tree_hashes = 8; * @return The count of rightmostPrecedingOutputTreeHashes. */ public int getRightmostPrecedingOutputTreeHashesCount() { return rightmostPrecedingOutputTreeHashes_.size(); } /** *
   **
   * A concatenation of SHA2-384 hash values.<br/>
   * This is the "rightmost" values of the "output" subtree.
   * <p>
   * The subtree containing these hashes SHALL be constructed from all "output"
   * `BlockItem`s in this block that _precede_ the update to this singleton.
   * 
* * repeated bytes rightmost_preceding_output_tree_hashes = 8; * @param index The index of the element to return. * @return The rightmostPrecedingOutputTreeHashes at the given index. */ public com.google.protobuf.ByteString getRightmostPrecedingOutputTreeHashes(int index) { return rightmostPrecedingOutputTreeHashes_.get(index); } public static final int BLOCK_END_TIME_FIELD_NUMBER = 9; private com.hederahashgraph.api.proto.java.Timestamp blockEndTime_; /** *
   **
   * A block-end consensus time stamp.
   * <p>
   * This field SHALL hold the last-used consensus time for
   * the current block.
   * 
* * .proto.Timestamp block_end_time = 9; * @return Whether the blockEndTime field is set. */ @java.lang.Override public boolean hasBlockEndTime() { return blockEndTime_ != null; } /** *
   **
   * A block-end consensus time stamp.
   * <p>
   * This field SHALL hold the last-used consensus time for
   * the current block.
   * 
* * .proto.Timestamp block_end_time = 9; * @return The blockEndTime. */ @java.lang.Override public com.hederahashgraph.api.proto.java.Timestamp getBlockEndTime() { return blockEndTime_ == null ? com.hederahashgraph.api.proto.java.Timestamp.getDefaultInstance() : blockEndTime_; } /** *
   **
   * A block-end consensus time stamp.
   * <p>
   * This field SHALL hold the last-used consensus time for
   * the current block.
   * 
* * .proto.Timestamp block_end_time = 9; */ @java.lang.Override public com.hederahashgraph.api.proto.java.TimestampOrBuilder getBlockEndTimeOrBuilder() { return getBlockEndTime(); } public static final int POST_UPGRADE_WORK_DONE_FIELD_NUMBER = 10; private boolean postUpgradeWorkDone_; /** *
   **
   * Whether the post-upgrade work has been done.
   * <p>
   * This MUST be false if and only if the network just restarted
   * after an upgrade and has not yet done the post-upgrade work.
   * 
* * bool post_upgrade_work_done = 10; * @return The postUpgradeWorkDone. */ @java.lang.Override public boolean getPostUpgradeWorkDone() { return postUpgradeWorkDone_; } public static final int CREATION_SOFTWARE_VERSION_FIELD_NUMBER = 11; private com.hederahashgraph.api.proto.java.SemanticVersion creationSoftwareVersion_; /** *
   **
   * A version describing the version of application software.
   * <p>
   * This SHALL be the software version that created this block.
   * 
* * .proto.SemanticVersion creation_software_version = 11; * @return Whether the creationSoftwareVersion field is set. */ @java.lang.Override public boolean hasCreationSoftwareVersion() { return creationSoftwareVersion_ != null; } /** *
   **
   * A version describing the version of application software.
   * <p>
   * This SHALL be the software version that created this block.
   * 
* * .proto.SemanticVersion creation_software_version = 11; * @return The creationSoftwareVersion. */ @java.lang.Override public com.hederahashgraph.api.proto.java.SemanticVersion getCreationSoftwareVersion() { return creationSoftwareVersion_ == null ? com.hederahashgraph.api.proto.java.SemanticVersion.getDefaultInstance() : creationSoftwareVersion_; } /** *
   **
   * A version describing the version of application software.
   * <p>
   * This SHALL be the software version that created this block.
   * 
* * .proto.SemanticVersion creation_software_version = 11; */ @java.lang.Override public com.hederahashgraph.api.proto.java.SemanticVersionOrBuilder getCreationSoftwareVersionOrBuilder() { return getCreationSoftwareVersion(); } public static final int LAST_INTERVAL_PROCESS_TIME_FIELD_NUMBER = 12; private com.hederahashgraph.api.proto.java.Timestamp lastIntervalProcessTime_; /** *
   **
   * The time stamp at which the last interval process was done.
   * <p>
   * This field SHALL hold the consensus time for the last time
   * at which an interval of time-dependent events were processed.
   * 
* * .proto.Timestamp last_interval_process_time = 12; * @return Whether the lastIntervalProcessTime field is set. */ @java.lang.Override public boolean hasLastIntervalProcessTime() { return lastIntervalProcessTime_ != null; } /** *
   **
   * The time stamp at which the last interval process was done.
   * <p>
   * This field SHALL hold the consensus time for the last time
   * at which an interval of time-dependent events were processed.
   * 
* * .proto.Timestamp last_interval_process_time = 12; * @return The lastIntervalProcessTime. */ @java.lang.Override public com.hederahashgraph.api.proto.java.Timestamp getLastIntervalProcessTime() { return lastIntervalProcessTime_ == null ? com.hederahashgraph.api.proto.java.Timestamp.getDefaultInstance() : lastIntervalProcessTime_; } /** *
   **
   * The time stamp at which the last interval process was done.
   * <p>
   * This field SHALL hold the consensus time for the last time
   * at which an interval of time-dependent events were processed.
   * 
* * .proto.Timestamp last_interval_process_time = 12; */ @java.lang.Override public com.hederahashgraph.api.proto.java.TimestampOrBuilder getLastIntervalProcessTimeOrBuilder() { return getLastIntervalProcessTime(); } private byte memoizedIsInitialized = -1; @java.lang.Override public final boolean isInitialized() { byte isInitialized = memoizedIsInitialized; if (isInitialized == 1) return true; if (isInitialized == 0) return false; memoizedIsInitialized = 1; return true; } @java.lang.Override public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException { if (blockNumber_ != 0L) { output.writeUInt64(1, blockNumber_); } if (blockTime_ != null) { output.writeMessage(2, getBlockTime()); } if (!trailingOutputHashes_.isEmpty()) { output.writeBytes(3, trailingOutputHashes_); } if (!trailingBlockHashes_.isEmpty()) { output.writeBytes(4, trailingBlockHashes_); } if (!inputTreeRootHash_.isEmpty()) { output.writeBytes(5, inputTreeRootHash_); } if (!startOfBlockStateHash_.isEmpty()) { output.writeBytes(6, startOfBlockStateHash_); } if (numPrecedingOutputItems_ != 0) { output.writeUInt32(7, numPrecedingOutputItems_); } for (int i = 0; i < rightmostPrecedingOutputTreeHashes_.size(); i++) { output.writeBytes(8, rightmostPrecedingOutputTreeHashes_.get(i)); } if (blockEndTime_ != null) { output.writeMessage(9, getBlockEndTime()); } if (postUpgradeWorkDone_ != false) { output.writeBool(10, postUpgradeWorkDone_); } if (creationSoftwareVersion_ != null) { output.writeMessage(11, getCreationSoftwareVersion()); } if (lastIntervalProcessTime_ != null) { output.writeMessage(12, getLastIntervalProcessTime()); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (blockNumber_ != 0L) { size += com.google.protobuf.CodedOutputStream .computeUInt64Size(1, blockNumber_); } if (blockTime_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(2, getBlockTime()); } if (!trailingOutputHashes_.isEmpty()) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(3, trailingOutputHashes_); } if (!trailingBlockHashes_.isEmpty()) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(4, trailingBlockHashes_); } if (!inputTreeRootHash_.isEmpty()) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(5, inputTreeRootHash_); } if (!startOfBlockStateHash_.isEmpty()) { size += com.google.protobuf.CodedOutputStream .computeBytesSize(6, startOfBlockStateHash_); } if (numPrecedingOutputItems_ != 0) { size += com.google.protobuf.CodedOutputStream .computeUInt32Size(7, numPrecedingOutputItems_); } { int dataSize = 0; for (int i = 0; i < rightmostPrecedingOutputTreeHashes_.size(); i++) { dataSize += com.google.protobuf.CodedOutputStream .computeBytesSizeNoTag(rightmostPrecedingOutputTreeHashes_.get(i)); } size += dataSize; size += 1 * getRightmostPrecedingOutputTreeHashesList().size(); } if (blockEndTime_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(9, getBlockEndTime()); } if (postUpgradeWorkDone_ != false) { size += com.google.protobuf.CodedOutputStream .computeBoolSize(10, postUpgradeWorkDone_); } if (creationSoftwareVersion_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(11, getCreationSoftwareVersion()); } if (lastIntervalProcessTime_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(12, getLastIntervalProcessTime()); } size += unknownFields.getSerializedSize(); memoizedSize = size; return size; } @java.lang.Override public boolean equals(final java.lang.Object obj) { if (obj == this) { return true; } if (!(obj instanceof com.hederahashgraph.api.proto.java.BlockStreamInfo)) { return super.equals(obj); } com.hederahashgraph.api.proto.java.BlockStreamInfo other = (com.hederahashgraph.api.proto.java.BlockStreamInfo) obj; if (getBlockNumber() != other.getBlockNumber()) return false; if (hasBlockTime() != other.hasBlockTime()) return false; if (hasBlockTime()) { if (!getBlockTime() .equals(other.getBlockTime())) return false; } if (!getTrailingOutputHashes() .equals(other.getTrailingOutputHashes())) return false; if (!getTrailingBlockHashes() .equals(other.getTrailingBlockHashes())) return false; if (!getInputTreeRootHash() .equals(other.getInputTreeRootHash())) return false; if (!getStartOfBlockStateHash() .equals(other.getStartOfBlockStateHash())) return false; if (getNumPrecedingOutputItems() != other.getNumPrecedingOutputItems()) return false; if (!getRightmostPrecedingOutputTreeHashesList() .equals(other.getRightmostPrecedingOutputTreeHashesList())) return false; if (hasBlockEndTime() != other.hasBlockEndTime()) return false; if (hasBlockEndTime()) { if (!getBlockEndTime() .equals(other.getBlockEndTime())) return false; } if (getPostUpgradeWorkDone() != other.getPostUpgradeWorkDone()) return false; if (hasCreationSoftwareVersion() != other.hasCreationSoftwareVersion()) return false; if (hasCreationSoftwareVersion()) { if (!getCreationSoftwareVersion() .equals(other.getCreationSoftwareVersion())) return false; } if (hasLastIntervalProcessTime() != other.hasLastIntervalProcessTime()) return false; if (hasLastIntervalProcessTime()) { if (!getLastIntervalProcessTime() .equals(other.getLastIntervalProcessTime())) return false; } if (!unknownFields.equals(other.unknownFields)) return false; return true; } @java.lang.Override public int hashCode() { if (memoizedHashCode != 0) { return memoizedHashCode; } int hash = 41; hash = (19 * hash) + getDescriptor().hashCode(); hash = (37 * hash) + BLOCK_NUMBER_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashLong( getBlockNumber()); if (hasBlockTime()) { hash = (37 * hash) + BLOCK_TIME_FIELD_NUMBER; hash = (53 * hash) + getBlockTime().hashCode(); } hash = (37 * hash) + TRAILING_OUTPUT_HASHES_FIELD_NUMBER; hash = (53 * hash) + getTrailingOutputHashes().hashCode(); hash = (37 * hash) + TRAILING_BLOCK_HASHES_FIELD_NUMBER; hash = (53 * hash) + getTrailingBlockHashes().hashCode(); hash = (37 * hash) + INPUT_TREE_ROOT_HASH_FIELD_NUMBER; hash = (53 * hash) + getInputTreeRootHash().hashCode(); hash = (37 * hash) + START_OF_BLOCK_STATE_HASH_FIELD_NUMBER; hash = (53 * hash) + getStartOfBlockStateHash().hashCode(); hash = (37 * hash) + NUM_PRECEDING_OUTPUT_ITEMS_FIELD_NUMBER; hash = (53 * hash) + getNumPrecedingOutputItems(); if (getRightmostPrecedingOutputTreeHashesCount() > 0) { hash = (37 * hash) + RIGHTMOST_PRECEDING_OUTPUT_TREE_HASHES_FIELD_NUMBER; hash = (53 * hash) + getRightmostPrecedingOutputTreeHashesList().hashCode(); } if (hasBlockEndTime()) { hash = (37 * hash) + BLOCK_END_TIME_FIELD_NUMBER; hash = (53 * hash) + getBlockEndTime().hashCode(); } hash = (37 * hash) + POST_UPGRADE_WORK_DONE_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( getPostUpgradeWorkDone()); if (hasCreationSoftwareVersion()) { hash = (37 * hash) + CREATION_SOFTWARE_VERSION_FIELD_NUMBER; hash = (53 * hash) + getCreationSoftwareVersion().hashCode(); } if (hasLastIntervalProcessTime()) { hash = (37 * hash) + LAST_INTERVAL_PROCESS_TIME_FIELD_NUMBER; hash = (53 * hash) + getLastIntervalProcessTime().hashCode(); } hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static com.hederahashgraph.api.proto.java.BlockStreamInfo parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static com.hederahashgraph.api.proto.java.BlockStreamInfo parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static com.hederahashgraph.api.proto.java.BlockStreamInfo parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static com.hederahashgraph.api.proto.java.BlockStreamInfo parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static com.hederahashgraph.api.proto.java.BlockStreamInfo parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static com.hederahashgraph.api.proto.java.BlockStreamInfo parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data, extensionRegistry); } public static com.hederahashgraph.api.proto.java.BlockStreamInfo parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static com.hederahashgraph.api.proto.java.BlockStreamInfo parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } public static com.hederahashgraph.api.proto.java.BlockStreamInfo parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static com.hederahashgraph.api.proto.java.BlockStreamInfo parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input, extensionRegistry); } public static com.hederahashgraph.api.proto.java.BlockStreamInfo parseFrom( com.google.protobuf.CodedInputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static com.hederahashgraph.api.proto.java.BlockStreamInfo parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input, extensionRegistry); } @java.lang.Override public Builder newBuilderForType() { return newBuilder(); } public static Builder newBuilder() { return DEFAULT_INSTANCE.toBuilder(); } public static Builder newBuilder(com.hederahashgraph.api.proto.java.BlockStreamInfo prototype) { return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype); } @java.lang.Override public Builder toBuilder() { return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this); } @java.lang.Override protected Builder newBuilderForType( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { Builder builder = new Builder(parent); return builder; } /** *
   **
   * A message stored in state to maintain block stream parameters.<br/>
   * Nodes use this information for three purposes.
   * 1. To maintain hash chain continuity at restart and reconnect boundaries.
   * 1. To store historical hashes for implementation of the EVM `BLOCKHASH`
   *    and `PREVRANDAO` opcodes.
   * 1. To track the amount of consensus time that has passed between blocks.
   * This value MUST be updated for every block.<br/>
   * This value MUST be transmitted in the "state changes" section of
   * _each_ block, but MUST be updated at the beginning of the _next_ block.<br/>
   * This value SHALL contain the block hash up to, and including, the
   * immediately prior completed block.<br/>
   * The state change to update this singleton MUST be the last
   * block item in this block.
   * 
* * Protobuf type {@code com.hedera.hapi.node.state.blockstream.BlockStreamInfo} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:com.hedera.hapi.node.state.blockstream.BlockStreamInfo) com.hederahashgraph.api.proto.java.BlockStreamInfoOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.hederahashgraph.api.proto.java.BlockStreamInfoOuterClass.internal_static_com_hedera_hapi_node_state_blockstream_BlockStreamInfo_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.hederahashgraph.api.proto.java.BlockStreamInfoOuterClass.internal_static_com_hedera_hapi_node_state_blockstream_BlockStreamInfo_fieldAccessorTable .ensureFieldAccessorsInitialized( com.hederahashgraph.api.proto.java.BlockStreamInfo.class, com.hederahashgraph.api.proto.java.BlockStreamInfo.Builder.class); } // Construct using com.hederahashgraph.api.proto.java.BlockStreamInfo.newBuilder() private Builder() { maybeForceBuilderInitialization(); } private Builder( com.google.protobuf.GeneratedMessageV3.BuilderParent parent) { super(parent); maybeForceBuilderInitialization(); } private void maybeForceBuilderInitialization() { if (com.google.protobuf.GeneratedMessageV3 .alwaysUseFieldBuilders) { } } @java.lang.Override public Builder clear() { super.clear(); blockNumber_ = 0L; if (blockTimeBuilder_ == null) { blockTime_ = null; } else { blockTime_ = null; blockTimeBuilder_ = null; } trailingOutputHashes_ = com.google.protobuf.ByteString.EMPTY; trailingBlockHashes_ = com.google.protobuf.ByteString.EMPTY; inputTreeRootHash_ = com.google.protobuf.ByteString.EMPTY; startOfBlockStateHash_ = com.google.protobuf.ByteString.EMPTY; numPrecedingOutputItems_ = 0; rightmostPrecedingOutputTreeHashes_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); if (blockEndTimeBuilder_ == null) { blockEndTime_ = null; } else { blockEndTime_ = null; blockEndTimeBuilder_ = null; } postUpgradeWorkDone_ = false; if (creationSoftwareVersionBuilder_ == null) { creationSoftwareVersion_ = null; } else { creationSoftwareVersion_ = null; creationSoftwareVersionBuilder_ = null; } if (lastIntervalProcessTimeBuilder_ == null) { lastIntervalProcessTime_ = null; } else { lastIntervalProcessTime_ = null; lastIntervalProcessTimeBuilder_ = null; } return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return com.hederahashgraph.api.proto.java.BlockStreamInfoOuterClass.internal_static_com_hedera_hapi_node_state_blockstream_BlockStreamInfo_descriptor; } @java.lang.Override public com.hederahashgraph.api.proto.java.BlockStreamInfo getDefaultInstanceForType() { return com.hederahashgraph.api.proto.java.BlockStreamInfo.getDefaultInstance(); } @java.lang.Override public com.hederahashgraph.api.proto.java.BlockStreamInfo build() { com.hederahashgraph.api.proto.java.BlockStreamInfo result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public com.hederahashgraph.api.proto.java.BlockStreamInfo buildPartial() { com.hederahashgraph.api.proto.java.BlockStreamInfo result = new com.hederahashgraph.api.proto.java.BlockStreamInfo(this); int from_bitField0_ = bitField0_; result.blockNumber_ = blockNumber_; if (blockTimeBuilder_ == null) { result.blockTime_ = blockTime_; } else { result.blockTime_ = blockTimeBuilder_.build(); } result.trailingOutputHashes_ = trailingOutputHashes_; result.trailingBlockHashes_ = trailingBlockHashes_; result.inputTreeRootHash_ = inputTreeRootHash_; result.startOfBlockStateHash_ = startOfBlockStateHash_; result.numPrecedingOutputItems_ = numPrecedingOutputItems_; if (((bitField0_ & 0x00000001) != 0)) { rightmostPrecedingOutputTreeHashes_ = java.util.Collections.unmodifiableList(rightmostPrecedingOutputTreeHashes_); bitField0_ = (bitField0_ & ~0x00000001); } result.rightmostPrecedingOutputTreeHashes_ = rightmostPrecedingOutputTreeHashes_; if (blockEndTimeBuilder_ == null) { result.blockEndTime_ = blockEndTime_; } else { result.blockEndTime_ = blockEndTimeBuilder_.build(); } result.postUpgradeWorkDone_ = postUpgradeWorkDone_; if (creationSoftwareVersionBuilder_ == null) { result.creationSoftwareVersion_ = creationSoftwareVersion_; } else { result.creationSoftwareVersion_ = creationSoftwareVersionBuilder_.build(); } if (lastIntervalProcessTimeBuilder_ == null) { result.lastIntervalProcessTime_ = lastIntervalProcessTime_; } else { result.lastIntervalProcessTime_ = lastIntervalProcessTimeBuilder_.build(); } onBuilt(); return result; } @java.lang.Override public Builder clone() { return super.clone(); } @java.lang.Override public Builder setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.setField(field, value); } @java.lang.Override public Builder clearField( com.google.protobuf.Descriptors.FieldDescriptor field) { return super.clearField(field); } @java.lang.Override public Builder clearOneof( com.google.protobuf.Descriptors.OneofDescriptor oneof) { return super.clearOneof(oneof); } @java.lang.Override public Builder setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) { return super.setRepeatedField(field, index, value); } @java.lang.Override public Builder addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) { return super.addRepeatedField(field, value); } @java.lang.Override public Builder mergeFrom(com.google.protobuf.Message other) { if (other instanceof com.hederahashgraph.api.proto.java.BlockStreamInfo) { return mergeFrom((com.hederahashgraph.api.proto.java.BlockStreamInfo)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(com.hederahashgraph.api.proto.java.BlockStreamInfo other) { if (other == com.hederahashgraph.api.proto.java.BlockStreamInfo.getDefaultInstance()) return this; if (other.getBlockNumber() != 0L) { setBlockNumber(other.getBlockNumber()); } if (other.hasBlockTime()) { mergeBlockTime(other.getBlockTime()); } if (other.getTrailingOutputHashes() != com.google.protobuf.ByteString.EMPTY) { setTrailingOutputHashes(other.getTrailingOutputHashes()); } if (other.getTrailingBlockHashes() != com.google.protobuf.ByteString.EMPTY) { setTrailingBlockHashes(other.getTrailingBlockHashes()); } if (other.getInputTreeRootHash() != com.google.protobuf.ByteString.EMPTY) { setInputTreeRootHash(other.getInputTreeRootHash()); } if (other.getStartOfBlockStateHash() != com.google.protobuf.ByteString.EMPTY) { setStartOfBlockStateHash(other.getStartOfBlockStateHash()); } if (other.getNumPrecedingOutputItems() != 0) { setNumPrecedingOutputItems(other.getNumPrecedingOutputItems()); } if (!other.rightmostPrecedingOutputTreeHashes_.isEmpty()) { if (rightmostPrecedingOutputTreeHashes_.isEmpty()) { rightmostPrecedingOutputTreeHashes_ = other.rightmostPrecedingOutputTreeHashes_; bitField0_ = (bitField0_ & ~0x00000001); } else { ensureRightmostPrecedingOutputTreeHashesIsMutable(); rightmostPrecedingOutputTreeHashes_.addAll(other.rightmostPrecedingOutputTreeHashes_); } onChanged(); } if (other.hasBlockEndTime()) { mergeBlockEndTime(other.getBlockEndTime()); } if (other.getPostUpgradeWorkDone() != false) { setPostUpgradeWorkDone(other.getPostUpgradeWorkDone()); } if (other.hasCreationSoftwareVersion()) { mergeCreationSoftwareVersion(other.getCreationSoftwareVersion()); } if (other.hasLastIntervalProcessTime()) { mergeLastIntervalProcessTime(other.getLastIntervalProcessTime()); } this.mergeUnknownFields(other.unknownFields); onChanged(); return this; } @java.lang.Override public final boolean isInitialized() { return true; } @java.lang.Override public Builder mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws java.io.IOException { com.hederahashgraph.api.proto.java.BlockStreamInfo parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (com.hederahashgraph.api.proto.java.BlockStreamInfo) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private int bitField0_; private long blockNumber_ ; /** *
     **
     * A block number.<br/>
     * This is the current block number.
     * 
* * uint64 block_number = 1; * @return The blockNumber. */ @java.lang.Override public long getBlockNumber() { return blockNumber_; } /** *
     **
     * A block number.<br/>
     * This is the current block number.
     * 
* * uint64 block_number = 1; * @param value The blockNumber to set. * @return This builder for chaining. */ public Builder setBlockNumber(long value) { blockNumber_ = value; onChanged(); return this; } /** *
     **
     * A block number.<br/>
     * This is the current block number.
     * 
* * uint64 block_number = 1; * @return This builder for chaining. */ public Builder clearBlockNumber() { blockNumber_ = 0L; onChanged(); return this; } private com.hederahashgraph.api.proto.java.Timestamp blockTime_; private com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.Timestamp, com.hederahashgraph.api.proto.java.Timestamp.Builder, com.hederahashgraph.api.proto.java.TimestampOrBuilder> blockTimeBuilder_; /** *
     **
     * A consensus time for the current block.<br/>
     * This is the consensus time of the first round in the current block,
     * and is used to determine if this block was the first across an
     * important boundary in consensus time, such as UTC midnight.
     * This may also be used to purge entities expiring between the last
     * block time and this time.
     * 
* * .proto.Timestamp block_time = 2; * @return Whether the blockTime field is set. */ public boolean hasBlockTime() { return blockTimeBuilder_ != null || blockTime_ != null; } /** *
     **
     * A consensus time for the current block.<br/>
     * This is the consensus time of the first round in the current block,
     * and is used to determine if this block was the first across an
     * important boundary in consensus time, such as UTC midnight.
     * This may also be used to purge entities expiring between the last
     * block time and this time.
     * 
* * .proto.Timestamp block_time = 2; * @return The blockTime. */ public com.hederahashgraph.api.proto.java.Timestamp getBlockTime() { if (blockTimeBuilder_ == null) { return blockTime_ == null ? com.hederahashgraph.api.proto.java.Timestamp.getDefaultInstance() : blockTime_; } else { return blockTimeBuilder_.getMessage(); } } /** *
     **
     * A consensus time for the current block.<br/>
     * This is the consensus time of the first round in the current block,
     * and is used to determine if this block was the first across an
     * important boundary in consensus time, such as UTC midnight.
     * This may also be used to purge entities expiring between the last
     * block time and this time.
     * 
* * .proto.Timestamp block_time = 2; */ public Builder setBlockTime(com.hederahashgraph.api.proto.java.Timestamp value) { if (blockTimeBuilder_ == null) { if (value == null) { throw new NullPointerException(); } blockTime_ = value; onChanged(); } else { blockTimeBuilder_.setMessage(value); } return this; } /** *
     **
     * A consensus time for the current block.<br/>
     * This is the consensus time of the first round in the current block,
     * and is used to determine if this block was the first across an
     * important boundary in consensus time, such as UTC midnight.
     * This may also be used to purge entities expiring between the last
     * block time and this time.
     * 
* * .proto.Timestamp block_time = 2; */ public Builder setBlockTime( com.hederahashgraph.api.proto.java.Timestamp.Builder builderForValue) { if (blockTimeBuilder_ == null) { blockTime_ = builderForValue.build(); onChanged(); } else { blockTimeBuilder_.setMessage(builderForValue.build()); } return this; } /** *
     **
     * A consensus time for the current block.<br/>
     * This is the consensus time of the first round in the current block,
     * and is used to determine if this block was the first across an
     * important boundary in consensus time, such as UTC midnight.
     * This may also be used to purge entities expiring between the last
     * block time and this time.
     * 
* * .proto.Timestamp block_time = 2; */ public Builder mergeBlockTime(com.hederahashgraph.api.proto.java.Timestamp value) { if (blockTimeBuilder_ == null) { if (blockTime_ != null) { blockTime_ = com.hederahashgraph.api.proto.java.Timestamp.newBuilder(blockTime_).mergeFrom(value).buildPartial(); } else { blockTime_ = value; } onChanged(); } else { blockTimeBuilder_.mergeFrom(value); } return this; } /** *
     **
     * A consensus time for the current block.<br/>
     * This is the consensus time of the first round in the current block,
     * and is used to determine if this block was the first across an
     * important boundary in consensus time, such as UTC midnight.
     * This may also be used to purge entities expiring between the last
     * block time and this time.
     * 
* * .proto.Timestamp block_time = 2; */ public Builder clearBlockTime() { if (blockTimeBuilder_ == null) { blockTime_ = null; onChanged(); } else { blockTime_ = null; blockTimeBuilder_ = null; } return this; } /** *
     **
     * A consensus time for the current block.<br/>
     * This is the consensus time of the first round in the current block,
     * and is used to determine if this block was the first across an
     * important boundary in consensus time, such as UTC midnight.
     * This may also be used to purge entities expiring between the last
     * block time and this time.
     * 
* * .proto.Timestamp block_time = 2; */ public com.hederahashgraph.api.proto.java.Timestamp.Builder getBlockTimeBuilder() { onChanged(); return getBlockTimeFieldBuilder().getBuilder(); } /** *
     **
     * A consensus time for the current block.<br/>
     * This is the consensus time of the first round in the current block,
     * and is used to determine if this block was the first across an
     * important boundary in consensus time, such as UTC midnight.
     * This may also be used to purge entities expiring between the last
     * block time and this time.
     * 
* * .proto.Timestamp block_time = 2; */ public com.hederahashgraph.api.proto.java.TimestampOrBuilder getBlockTimeOrBuilder() { if (blockTimeBuilder_ != null) { return blockTimeBuilder_.getMessageOrBuilder(); } else { return blockTime_ == null ? com.hederahashgraph.api.proto.java.Timestamp.getDefaultInstance() : blockTime_; } } /** *
     **
     * A consensus time for the current block.<br/>
     * This is the consensus time of the first round in the current block,
     * and is used to determine if this block was the first across an
     * important boundary in consensus time, such as UTC midnight.
     * This may also be used to purge entities expiring between the last
     * block time and this time.
     * 
* * .proto.Timestamp block_time = 2; */ private com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.Timestamp, com.hederahashgraph.api.proto.java.Timestamp.Builder, com.hederahashgraph.api.proto.java.TimestampOrBuilder> getBlockTimeFieldBuilder() { if (blockTimeBuilder_ == null) { blockTimeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.Timestamp, com.hederahashgraph.api.proto.java.Timestamp.Builder, com.hederahashgraph.api.proto.java.TimestampOrBuilder>( getBlockTime(), getParentForChildren(), isClean()); blockTime_ = null; } return blockTimeBuilder_; } private com.google.protobuf.ByteString trailingOutputHashes_ = com.google.protobuf.ByteString.EMPTY; /** *
     **
     * A concatenation of hash values.<br/>
     * This combines several trailing output block item hashes and
     * is used as a seed value for a pseudo-random number generator.<br/>
     * This is also required to implement the EVM `PREVRANDAO` opcode.<br/>
     * This MUST contain at least 256 bits of entropy.
     * 
* * bytes trailing_output_hashes = 3; * @return The trailingOutputHashes. */ @java.lang.Override public com.google.protobuf.ByteString getTrailingOutputHashes() { return trailingOutputHashes_; } /** *
     **
     * A concatenation of hash values.<br/>
     * This combines several trailing output block item hashes and
     * is used as a seed value for a pseudo-random number generator.<br/>
     * This is also required to implement the EVM `PREVRANDAO` opcode.<br/>
     * This MUST contain at least 256 bits of entropy.
     * 
* * bytes trailing_output_hashes = 3; * @param value The trailingOutputHashes to set. * @return This builder for chaining. */ public Builder setTrailingOutputHashes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } trailingOutputHashes_ = value; onChanged(); return this; } /** *
     **
     * A concatenation of hash values.<br/>
     * This combines several trailing output block item hashes and
     * is used as a seed value for a pseudo-random number generator.<br/>
     * This is also required to implement the EVM `PREVRANDAO` opcode.<br/>
     * This MUST contain at least 256 bits of entropy.
     * 
* * bytes trailing_output_hashes = 3; * @return This builder for chaining. */ public Builder clearTrailingOutputHashes() { trailingOutputHashes_ = getDefaultInstance().getTrailingOutputHashes(); onChanged(); return this; } private com.google.protobuf.ByteString trailingBlockHashes_ = com.google.protobuf.ByteString.EMPTY; /** *
     **
     * A concatenation of hash values.<br/>
     * This field combines up to 256 trailing block hashes.
     * <p>
     * If this message is for block number N, then the earliest available
     * hash SHALL be for block number N-256.<br/>
     * The latest available hash SHALL be for block N-1.<br/>
     * This is REQUIRED to implement the EVM `BLOCKHASH` opcode.
     * <p>
     * ### Field Length
     * Each hash value SHALL be the trailing 265 bits of a SHA2-384 hash.<br/>
     * The length of this field SHALL be an integer multiple of 32 bytes.<br/>
     * This field SHALL be at least 32 bytes.<br/>
     * The maximum length of this field SHALL be 8192 bytes.
     * 
* * bytes trailing_block_hashes = 4; * @return The trailingBlockHashes. */ @java.lang.Override public com.google.protobuf.ByteString getTrailingBlockHashes() { return trailingBlockHashes_; } /** *
     **
     * A concatenation of hash values.<br/>
     * This field combines up to 256 trailing block hashes.
     * <p>
     * If this message is for block number N, then the earliest available
     * hash SHALL be for block number N-256.<br/>
     * The latest available hash SHALL be for block N-1.<br/>
     * This is REQUIRED to implement the EVM `BLOCKHASH` opcode.
     * <p>
     * ### Field Length
     * Each hash value SHALL be the trailing 265 bits of a SHA2-384 hash.<br/>
     * The length of this field SHALL be an integer multiple of 32 bytes.<br/>
     * This field SHALL be at least 32 bytes.<br/>
     * The maximum length of this field SHALL be 8192 bytes.
     * 
* * bytes trailing_block_hashes = 4; * @param value The trailingBlockHashes to set. * @return This builder for chaining. */ public Builder setTrailingBlockHashes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } trailingBlockHashes_ = value; onChanged(); return this; } /** *
     **
     * A concatenation of hash values.<br/>
     * This field combines up to 256 trailing block hashes.
     * <p>
     * If this message is for block number N, then the earliest available
     * hash SHALL be for block number N-256.<br/>
     * The latest available hash SHALL be for block N-1.<br/>
     * This is REQUIRED to implement the EVM `BLOCKHASH` opcode.
     * <p>
     * ### Field Length
     * Each hash value SHALL be the trailing 265 bits of a SHA2-384 hash.<br/>
     * The length of this field SHALL be an integer multiple of 32 bytes.<br/>
     * This field SHALL be at least 32 bytes.<br/>
     * The maximum length of this field SHALL be 8192 bytes.
     * 
* * bytes trailing_block_hashes = 4; * @return This builder for chaining. */ public Builder clearTrailingBlockHashes() { trailingBlockHashes_ = getDefaultInstance().getTrailingBlockHashes(); onChanged(); return this; } private com.google.protobuf.ByteString inputTreeRootHash_ = com.google.protobuf.ByteString.EMPTY; /** *
     **
     * A SHA2-384 hash value.<br/>
     * This is the hash of the "input" subtree for this block.
     * 
* * bytes input_tree_root_hash = 5; * @return The inputTreeRootHash. */ @java.lang.Override public com.google.protobuf.ByteString getInputTreeRootHash() { return inputTreeRootHash_; } /** *
     **
     * A SHA2-384 hash value.<br/>
     * This is the hash of the "input" subtree for this block.
     * 
* * bytes input_tree_root_hash = 5; * @param value The inputTreeRootHash to set. * @return This builder for chaining. */ public Builder setInputTreeRootHash(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } inputTreeRootHash_ = value; onChanged(); return this; } /** *
     **
     * A SHA2-384 hash value.<br/>
     * This is the hash of the "input" subtree for this block.
     * 
* * bytes input_tree_root_hash = 5; * @return This builder for chaining. */ public Builder clearInputTreeRootHash() { inputTreeRootHash_ = getDefaultInstance().getInputTreeRootHash(); onChanged(); return this; } private com.google.protobuf.ByteString startOfBlockStateHash_ = com.google.protobuf.ByteString.EMPTY; /** *
     **
     * A SHA2-384 hash value.<br/>
     * This is the hash of consensus state at the _start_ of this block.
     * 
* * bytes start_of_block_state_hash = 6; * @return The startOfBlockStateHash. */ @java.lang.Override public com.google.protobuf.ByteString getStartOfBlockStateHash() { return startOfBlockStateHash_; } /** *
     **
     * A SHA2-384 hash value.<br/>
     * This is the hash of consensus state at the _start_ of this block.
     * 
* * bytes start_of_block_state_hash = 6; * @param value The startOfBlockStateHash to set. * @return This builder for chaining. */ public Builder setStartOfBlockStateHash(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } startOfBlockStateHash_ = value; onChanged(); return this; } /** *
     **
     * A SHA2-384 hash value.<br/>
     * This is the hash of consensus state at the _start_ of this block.
     * 
* * bytes start_of_block_state_hash = 6; * @return This builder for chaining. */ public Builder clearStartOfBlockStateHash() { startOfBlockStateHash_ = getDefaultInstance().getStartOfBlockStateHash(); onChanged(); return this; } private int numPrecedingOutputItems_ ; /** *
     **
     * A count of "output" block items in this block.
     * <p>
     * This SHALL count the number of output block items that _precede_
     * the state change that updates this singleton.
     * 
* * uint32 num_preceding_output_items = 7; * @return The numPrecedingOutputItems. */ @java.lang.Override public int getNumPrecedingOutputItems() { return numPrecedingOutputItems_; } /** *
     **
     * A count of "output" block items in this block.
     * <p>
     * This SHALL count the number of output block items that _precede_
     * the state change that updates this singleton.
     * 
* * uint32 num_preceding_output_items = 7; * @param value The numPrecedingOutputItems to set. * @return This builder for chaining. */ public Builder setNumPrecedingOutputItems(int value) { numPrecedingOutputItems_ = value; onChanged(); return this; } /** *
     **
     * A count of "output" block items in this block.
     * <p>
     * This SHALL count the number of output block items that _precede_
     * the state change that updates this singleton.
     * 
* * uint32 num_preceding_output_items = 7; * @return This builder for chaining. */ public Builder clearNumPrecedingOutputItems() { numPrecedingOutputItems_ = 0; onChanged(); return this; } private java.util.List rightmostPrecedingOutputTreeHashes_ = java.util.Collections.emptyList(); private void ensureRightmostPrecedingOutputTreeHashesIsMutable() { if (!((bitField0_ & 0x00000001) != 0)) { rightmostPrecedingOutputTreeHashes_ = new java.util.ArrayList(rightmostPrecedingOutputTreeHashes_); bitField0_ |= 0x00000001; } } /** *
     **
     * A concatenation of SHA2-384 hash values.<br/>
     * This is the "rightmost" values of the "output" subtree.
     * <p>
     * The subtree containing these hashes SHALL be constructed from all "output"
     * `BlockItem`s in this block that _precede_ the update to this singleton.
     * 
* * repeated bytes rightmost_preceding_output_tree_hashes = 8; * @return A list containing the rightmostPrecedingOutputTreeHashes. */ public java.util.List getRightmostPrecedingOutputTreeHashesList() { return ((bitField0_ & 0x00000001) != 0) ? java.util.Collections.unmodifiableList(rightmostPrecedingOutputTreeHashes_) : rightmostPrecedingOutputTreeHashes_; } /** *
     **
     * A concatenation of SHA2-384 hash values.<br/>
     * This is the "rightmost" values of the "output" subtree.
     * <p>
     * The subtree containing these hashes SHALL be constructed from all "output"
     * `BlockItem`s in this block that _precede_ the update to this singleton.
     * 
* * repeated bytes rightmost_preceding_output_tree_hashes = 8; * @return The count of rightmostPrecedingOutputTreeHashes. */ public int getRightmostPrecedingOutputTreeHashesCount() { return rightmostPrecedingOutputTreeHashes_.size(); } /** *
     **
     * A concatenation of SHA2-384 hash values.<br/>
     * This is the "rightmost" values of the "output" subtree.
     * <p>
     * The subtree containing these hashes SHALL be constructed from all "output"
     * `BlockItem`s in this block that _precede_ the update to this singleton.
     * 
* * repeated bytes rightmost_preceding_output_tree_hashes = 8; * @param index The index of the element to return. * @return The rightmostPrecedingOutputTreeHashes at the given index. */ public com.google.protobuf.ByteString getRightmostPrecedingOutputTreeHashes(int index) { return rightmostPrecedingOutputTreeHashes_.get(index); } /** *
     **
     * A concatenation of SHA2-384 hash values.<br/>
     * This is the "rightmost" values of the "output" subtree.
     * <p>
     * The subtree containing these hashes SHALL be constructed from all "output"
     * `BlockItem`s in this block that _precede_ the update to this singleton.
     * 
* * repeated bytes rightmost_preceding_output_tree_hashes = 8; * @param index The index to set the value at. * @param value The rightmostPrecedingOutputTreeHashes to set. * @return This builder for chaining. */ public Builder setRightmostPrecedingOutputTreeHashes( int index, com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } ensureRightmostPrecedingOutputTreeHashesIsMutable(); rightmostPrecedingOutputTreeHashes_.set(index, value); onChanged(); return this; } /** *
     **
     * A concatenation of SHA2-384 hash values.<br/>
     * This is the "rightmost" values of the "output" subtree.
     * <p>
     * The subtree containing these hashes SHALL be constructed from all "output"
     * `BlockItem`s in this block that _precede_ the update to this singleton.
     * 
* * repeated bytes rightmost_preceding_output_tree_hashes = 8; * @param value The rightmostPrecedingOutputTreeHashes to add. * @return This builder for chaining. */ public Builder addRightmostPrecedingOutputTreeHashes(com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } ensureRightmostPrecedingOutputTreeHashesIsMutable(); rightmostPrecedingOutputTreeHashes_.add(value); onChanged(); return this; } /** *
     **
     * A concatenation of SHA2-384 hash values.<br/>
     * This is the "rightmost" values of the "output" subtree.
     * <p>
     * The subtree containing these hashes SHALL be constructed from all "output"
     * `BlockItem`s in this block that _precede_ the update to this singleton.
     * 
* * repeated bytes rightmost_preceding_output_tree_hashes = 8; * @param values The rightmostPrecedingOutputTreeHashes to add. * @return This builder for chaining. */ public Builder addAllRightmostPrecedingOutputTreeHashes( java.lang.Iterable values) { ensureRightmostPrecedingOutputTreeHashesIsMutable(); com.google.protobuf.AbstractMessageLite.Builder.addAll( values, rightmostPrecedingOutputTreeHashes_); onChanged(); return this; } /** *
     **
     * A concatenation of SHA2-384 hash values.<br/>
     * This is the "rightmost" values of the "output" subtree.
     * <p>
     * The subtree containing these hashes SHALL be constructed from all "output"
     * `BlockItem`s in this block that _precede_ the update to this singleton.
     * 
* * repeated bytes rightmost_preceding_output_tree_hashes = 8; * @return This builder for chaining. */ public Builder clearRightmostPrecedingOutputTreeHashes() { rightmostPrecedingOutputTreeHashes_ = java.util.Collections.emptyList(); bitField0_ = (bitField0_ & ~0x00000001); onChanged(); return this; } private com.hederahashgraph.api.proto.java.Timestamp blockEndTime_; private com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.Timestamp, com.hederahashgraph.api.proto.java.Timestamp.Builder, com.hederahashgraph.api.proto.java.TimestampOrBuilder> blockEndTimeBuilder_; /** *
     **
     * A block-end consensus time stamp.
     * <p>
     * This field SHALL hold the last-used consensus time for
     * the current block.
     * 
* * .proto.Timestamp block_end_time = 9; * @return Whether the blockEndTime field is set. */ public boolean hasBlockEndTime() { return blockEndTimeBuilder_ != null || blockEndTime_ != null; } /** *
     **
     * A block-end consensus time stamp.
     * <p>
     * This field SHALL hold the last-used consensus time for
     * the current block.
     * 
* * .proto.Timestamp block_end_time = 9; * @return The blockEndTime. */ public com.hederahashgraph.api.proto.java.Timestamp getBlockEndTime() { if (blockEndTimeBuilder_ == null) { return blockEndTime_ == null ? com.hederahashgraph.api.proto.java.Timestamp.getDefaultInstance() : blockEndTime_; } else { return blockEndTimeBuilder_.getMessage(); } } /** *
     **
     * A block-end consensus time stamp.
     * <p>
     * This field SHALL hold the last-used consensus time for
     * the current block.
     * 
* * .proto.Timestamp block_end_time = 9; */ public Builder setBlockEndTime(com.hederahashgraph.api.proto.java.Timestamp value) { if (blockEndTimeBuilder_ == null) { if (value == null) { throw new NullPointerException(); } blockEndTime_ = value; onChanged(); } else { blockEndTimeBuilder_.setMessage(value); } return this; } /** *
     **
     * A block-end consensus time stamp.
     * <p>
     * This field SHALL hold the last-used consensus time for
     * the current block.
     * 
* * .proto.Timestamp block_end_time = 9; */ public Builder setBlockEndTime( com.hederahashgraph.api.proto.java.Timestamp.Builder builderForValue) { if (blockEndTimeBuilder_ == null) { blockEndTime_ = builderForValue.build(); onChanged(); } else { blockEndTimeBuilder_.setMessage(builderForValue.build()); } return this; } /** *
     **
     * A block-end consensus time stamp.
     * <p>
     * This field SHALL hold the last-used consensus time for
     * the current block.
     * 
* * .proto.Timestamp block_end_time = 9; */ public Builder mergeBlockEndTime(com.hederahashgraph.api.proto.java.Timestamp value) { if (blockEndTimeBuilder_ == null) { if (blockEndTime_ != null) { blockEndTime_ = com.hederahashgraph.api.proto.java.Timestamp.newBuilder(blockEndTime_).mergeFrom(value).buildPartial(); } else { blockEndTime_ = value; } onChanged(); } else { blockEndTimeBuilder_.mergeFrom(value); } return this; } /** *
     **
     * A block-end consensus time stamp.
     * <p>
     * This field SHALL hold the last-used consensus time for
     * the current block.
     * 
* * .proto.Timestamp block_end_time = 9; */ public Builder clearBlockEndTime() { if (blockEndTimeBuilder_ == null) { blockEndTime_ = null; onChanged(); } else { blockEndTime_ = null; blockEndTimeBuilder_ = null; } return this; } /** *
     **
     * A block-end consensus time stamp.
     * <p>
     * This field SHALL hold the last-used consensus time for
     * the current block.
     * 
* * .proto.Timestamp block_end_time = 9; */ public com.hederahashgraph.api.proto.java.Timestamp.Builder getBlockEndTimeBuilder() { onChanged(); return getBlockEndTimeFieldBuilder().getBuilder(); } /** *
     **
     * A block-end consensus time stamp.
     * <p>
     * This field SHALL hold the last-used consensus time for
     * the current block.
     * 
* * .proto.Timestamp block_end_time = 9; */ public com.hederahashgraph.api.proto.java.TimestampOrBuilder getBlockEndTimeOrBuilder() { if (blockEndTimeBuilder_ != null) { return blockEndTimeBuilder_.getMessageOrBuilder(); } else { return blockEndTime_ == null ? com.hederahashgraph.api.proto.java.Timestamp.getDefaultInstance() : blockEndTime_; } } /** *
     **
     * A block-end consensus time stamp.
     * <p>
     * This field SHALL hold the last-used consensus time for
     * the current block.
     * 
* * .proto.Timestamp block_end_time = 9; */ private com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.Timestamp, com.hederahashgraph.api.proto.java.Timestamp.Builder, com.hederahashgraph.api.proto.java.TimestampOrBuilder> getBlockEndTimeFieldBuilder() { if (blockEndTimeBuilder_ == null) { blockEndTimeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.Timestamp, com.hederahashgraph.api.proto.java.Timestamp.Builder, com.hederahashgraph.api.proto.java.TimestampOrBuilder>( getBlockEndTime(), getParentForChildren(), isClean()); blockEndTime_ = null; } return blockEndTimeBuilder_; } private boolean postUpgradeWorkDone_ ; /** *
     **
     * Whether the post-upgrade work has been done.
     * <p>
     * This MUST be false if and only if the network just restarted
     * after an upgrade and has not yet done the post-upgrade work.
     * 
* * bool post_upgrade_work_done = 10; * @return The postUpgradeWorkDone. */ @java.lang.Override public boolean getPostUpgradeWorkDone() { return postUpgradeWorkDone_; } /** *
     **
     * Whether the post-upgrade work has been done.
     * <p>
     * This MUST be false if and only if the network just restarted
     * after an upgrade and has not yet done the post-upgrade work.
     * 
* * bool post_upgrade_work_done = 10; * @param value The postUpgradeWorkDone to set. * @return This builder for chaining. */ public Builder setPostUpgradeWorkDone(boolean value) { postUpgradeWorkDone_ = value; onChanged(); return this; } /** *
     **
     * Whether the post-upgrade work has been done.
     * <p>
     * This MUST be false if and only if the network just restarted
     * after an upgrade and has not yet done the post-upgrade work.
     * 
* * bool post_upgrade_work_done = 10; * @return This builder for chaining. */ public Builder clearPostUpgradeWorkDone() { postUpgradeWorkDone_ = false; onChanged(); return this; } private com.hederahashgraph.api.proto.java.SemanticVersion creationSoftwareVersion_; private com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.SemanticVersion, com.hederahashgraph.api.proto.java.SemanticVersion.Builder, com.hederahashgraph.api.proto.java.SemanticVersionOrBuilder> creationSoftwareVersionBuilder_; /** *
     **
     * A version describing the version of application software.
     * <p>
     * This SHALL be the software version that created this block.
     * 
* * .proto.SemanticVersion creation_software_version = 11; * @return Whether the creationSoftwareVersion field is set. */ public boolean hasCreationSoftwareVersion() { return creationSoftwareVersionBuilder_ != null || creationSoftwareVersion_ != null; } /** *
     **
     * A version describing the version of application software.
     * <p>
     * This SHALL be the software version that created this block.
     * 
* * .proto.SemanticVersion creation_software_version = 11; * @return The creationSoftwareVersion. */ public com.hederahashgraph.api.proto.java.SemanticVersion getCreationSoftwareVersion() { if (creationSoftwareVersionBuilder_ == null) { return creationSoftwareVersion_ == null ? com.hederahashgraph.api.proto.java.SemanticVersion.getDefaultInstance() : creationSoftwareVersion_; } else { return creationSoftwareVersionBuilder_.getMessage(); } } /** *
     **
     * A version describing the version of application software.
     * <p>
     * This SHALL be the software version that created this block.
     * 
* * .proto.SemanticVersion creation_software_version = 11; */ public Builder setCreationSoftwareVersion(com.hederahashgraph.api.proto.java.SemanticVersion value) { if (creationSoftwareVersionBuilder_ == null) { if (value == null) { throw new NullPointerException(); } creationSoftwareVersion_ = value; onChanged(); } else { creationSoftwareVersionBuilder_.setMessage(value); } return this; } /** *
     **
     * A version describing the version of application software.
     * <p>
     * This SHALL be the software version that created this block.
     * 
* * .proto.SemanticVersion creation_software_version = 11; */ public Builder setCreationSoftwareVersion( com.hederahashgraph.api.proto.java.SemanticVersion.Builder builderForValue) { if (creationSoftwareVersionBuilder_ == null) { creationSoftwareVersion_ = builderForValue.build(); onChanged(); } else { creationSoftwareVersionBuilder_.setMessage(builderForValue.build()); } return this; } /** *
     **
     * A version describing the version of application software.
     * <p>
     * This SHALL be the software version that created this block.
     * 
* * .proto.SemanticVersion creation_software_version = 11; */ public Builder mergeCreationSoftwareVersion(com.hederahashgraph.api.proto.java.SemanticVersion value) { if (creationSoftwareVersionBuilder_ == null) { if (creationSoftwareVersion_ != null) { creationSoftwareVersion_ = com.hederahashgraph.api.proto.java.SemanticVersion.newBuilder(creationSoftwareVersion_).mergeFrom(value).buildPartial(); } else { creationSoftwareVersion_ = value; } onChanged(); } else { creationSoftwareVersionBuilder_.mergeFrom(value); } return this; } /** *
     **
     * A version describing the version of application software.
     * <p>
     * This SHALL be the software version that created this block.
     * 
* * .proto.SemanticVersion creation_software_version = 11; */ public Builder clearCreationSoftwareVersion() { if (creationSoftwareVersionBuilder_ == null) { creationSoftwareVersion_ = null; onChanged(); } else { creationSoftwareVersion_ = null; creationSoftwareVersionBuilder_ = null; } return this; } /** *
     **
     * A version describing the version of application software.
     * <p>
     * This SHALL be the software version that created this block.
     * 
* * .proto.SemanticVersion creation_software_version = 11; */ public com.hederahashgraph.api.proto.java.SemanticVersion.Builder getCreationSoftwareVersionBuilder() { onChanged(); return getCreationSoftwareVersionFieldBuilder().getBuilder(); } /** *
     **
     * A version describing the version of application software.
     * <p>
     * This SHALL be the software version that created this block.
     * 
* * .proto.SemanticVersion creation_software_version = 11; */ public com.hederahashgraph.api.proto.java.SemanticVersionOrBuilder getCreationSoftwareVersionOrBuilder() { if (creationSoftwareVersionBuilder_ != null) { return creationSoftwareVersionBuilder_.getMessageOrBuilder(); } else { return creationSoftwareVersion_ == null ? com.hederahashgraph.api.proto.java.SemanticVersion.getDefaultInstance() : creationSoftwareVersion_; } } /** *
     **
     * A version describing the version of application software.
     * <p>
     * This SHALL be the software version that created this block.
     * 
* * .proto.SemanticVersion creation_software_version = 11; */ private com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.SemanticVersion, com.hederahashgraph.api.proto.java.SemanticVersion.Builder, com.hederahashgraph.api.proto.java.SemanticVersionOrBuilder> getCreationSoftwareVersionFieldBuilder() { if (creationSoftwareVersionBuilder_ == null) { creationSoftwareVersionBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.SemanticVersion, com.hederahashgraph.api.proto.java.SemanticVersion.Builder, com.hederahashgraph.api.proto.java.SemanticVersionOrBuilder>( getCreationSoftwareVersion(), getParentForChildren(), isClean()); creationSoftwareVersion_ = null; } return creationSoftwareVersionBuilder_; } private com.hederahashgraph.api.proto.java.Timestamp lastIntervalProcessTime_; private com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.Timestamp, com.hederahashgraph.api.proto.java.Timestamp.Builder, com.hederahashgraph.api.proto.java.TimestampOrBuilder> lastIntervalProcessTimeBuilder_; /** *
     **
     * The time stamp at which the last interval process was done.
     * <p>
     * This field SHALL hold the consensus time for the last time
     * at which an interval of time-dependent events were processed.
     * 
* * .proto.Timestamp last_interval_process_time = 12; * @return Whether the lastIntervalProcessTime field is set. */ public boolean hasLastIntervalProcessTime() { return lastIntervalProcessTimeBuilder_ != null || lastIntervalProcessTime_ != null; } /** *
     **
     * The time stamp at which the last interval process was done.
     * <p>
     * This field SHALL hold the consensus time for the last time
     * at which an interval of time-dependent events were processed.
     * 
* * .proto.Timestamp last_interval_process_time = 12; * @return The lastIntervalProcessTime. */ public com.hederahashgraph.api.proto.java.Timestamp getLastIntervalProcessTime() { if (lastIntervalProcessTimeBuilder_ == null) { return lastIntervalProcessTime_ == null ? com.hederahashgraph.api.proto.java.Timestamp.getDefaultInstance() : lastIntervalProcessTime_; } else { return lastIntervalProcessTimeBuilder_.getMessage(); } } /** *
     **
     * The time stamp at which the last interval process was done.
     * <p>
     * This field SHALL hold the consensus time for the last time
     * at which an interval of time-dependent events were processed.
     * 
* * .proto.Timestamp last_interval_process_time = 12; */ public Builder setLastIntervalProcessTime(com.hederahashgraph.api.proto.java.Timestamp value) { if (lastIntervalProcessTimeBuilder_ == null) { if (value == null) { throw new NullPointerException(); } lastIntervalProcessTime_ = value; onChanged(); } else { lastIntervalProcessTimeBuilder_.setMessage(value); } return this; } /** *
     **
     * The time stamp at which the last interval process was done.
     * <p>
     * This field SHALL hold the consensus time for the last time
     * at which an interval of time-dependent events were processed.
     * 
* * .proto.Timestamp last_interval_process_time = 12; */ public Builder setLastIntervalProcessTime( com.hederahashgraph.api.proto.java.Timestamp.Builder builderForValue) { if (lastIntervalProcessTimeBuilder_ == null) { lastIntervalProcessTime_ = builderForValue.build(); onChanged(); } else { lastIntervalProcessTimeBuilder_.setMessage(builderForValue.build()); } return this; } /** *
     **
     * The time stamp at which the last interval process was done.
     * <p>
     * This field SHALL hold the consensus time for the last time
     * at which an interval of time-dependent events were processed.
     * 
* * .proto.Timestamp last_interval_process_time = 12; */ public Builder mergeLastIntervalProcessTime(com.hederahashgraph.api.proto.java.Timestamp value) { if (lastIntervalProcessTimeBuilder_ == null) { if (lastIntervalProcessTime_ != null) { lastIntervalProcessTime_ = com.hederahashgraph.api.proto.java.Timestamp.newBuilder(lastIntervalProcessTime_).mergeFrom(value).buildPartial(); } else { lastIntervalProcessTime_ = value; } onChanged(); } else { lastIntervalProcessTimeBuilder_.mergeFrom(value); } return this; } /** *
     **
     * The time stamp at which the last interval process was done.
     * <p>
     * This field SHALL hold the consensus time for the last time
     * at which an interval of time-dependent events were processed.
     * 
* * .proto.Timestamp last_interval_process_time = 12; */ public Builder clearLastIntervalProcessTime() { if (lastIntervalProcessTimeBuilder_ == null) { lastIntervalProcessTime_ = null; onChanged(); } else { lastIntervalProcessTime_ = null; lastIntervalProcessTimeBuilder_ = null; } return this; } /** *
     **
     * The time stamp at which the last interval process was done.
     * <p>
     * This field SHALL hold the consensus time for the last time
     * at which an interval of time-dependent events were processed.
     * 
* * .proto.Timestamp last_interval_process_time = 12; */ public com.hederahashgraph.api.proto.java.Timestamp.Builder getLastIntervalProcessTimeBuilder() { onChanged(); return getLastIntervalProcessTimeFieldBuilder().getBuilder(); } /** *
     **
     * The time stamp at which the last interval process was done.
     * <p>
     * This field SHALL hold the consensus time for the last time
     * at which an interval of time-dependent events were processed.
     * 
* * .proto.Timestamp last_interval_process_time = 12; */ public com.hederahashgraph.api.proto.java.TimestampOrBuilder getLastIntervalProcessTimeOrBuilder() { if (lastIntervalProcessTimeBuilder_ != null) { return lastIntervalProcessTimeBuilder_.getMessageOrBuilder(); } else { return lastIntervalProcessTime_ == null ? com.hederahashgraph.api.proto.java.Timestamp.getDefaultInstance() : lastIntervalProcessTime_; } } /** *
     **
     * The time stamp at which the last interval process was done.
     * <p>
     * This field SHALL hold the consensus time for the last time
     * at which an interval of time-dependent events were processed.
     * 
* * .proto.Timestamp last_interval_process_time = 12; */ private com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.Timestamp, com.hederahashgraph.api.proto.java.Timestamp.Builder, com.hederahashgraph.api.proto.java.TimestampOrBuilder> getLastIntervalProcessTimeFieldBuilder() { if (lastIntervalProcessTimeBuilder_ == null) { lastIntervalProcessTimeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.Timestamp, com.hederahashgraph.api.proto.java.Timestamp.Builder, com.hederahashgraph.api.proto.java.TimestampOrBuilder>( getLastIntervalProcessTime(), getParentForChildren(), isClean()); lastIntervalProcessTime_ = null; } return lastIntervalProcessTimeBuilder_; } @java.lang.Override public final Builder setUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.setUnknownFields(unknownFields); } @java.lang.Override public final Builder mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields) { return super.mergeUnknownFields(unknownFields); } // @@protoc_insertion_point(builder_scope:com.hedera.hapi.node.state.blockstream.BlockStreamInfo) } // @@protoc_insertion_point(class_scope:com.hedera.hapi.node.state.blockstream.BlockStreamInfo) private static final com.hederahashgraph.api.proto.java.BlockStreamInfo DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new com.hederahashgraph.api.proto.java.BlockStreamInfo(); } public static com.hederahashgraph.api.proto.java.BlockStreamInfo getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public BlockStreamInfo parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new BlockStreamInfo(input, extensionRegistry); } }; public static com.google.protobuf.Parser parser() { return PARSER; } @java.lang.Override public com.google.protobuf.Parser getParserForType() { return PARSER; } @java.lang.Override public com.hederahashgraph.api.proto.java.BlockStreamInfo getDefaultInstanceForType() { return DEFAULT_INSTANCE; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy