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

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

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

package com.hederahashgraph.api.proto.java;

/**
 * 
 **
 * Create a new <i>schedule entity</i> (or simply, <i>schedule</i>) in the network's action queue.
 * Upon <tt>SUCCESS</tt>, the receipt contains the `ScheduleID` of the created schedule. A schedule
 * entity includes a <tt>scheduledTransactionBody</tt> to be executed.
 * When the schedule has collected enough signing Ed25519 keys to satisfy the schedule's signing
 * requirements, the schedule can be executed.
 * If Long Term Scheduled Transactions are enabled and <tt>wait_for_expiry</tt> is set to <tt>true</tt>, then the schedule
 * will execute at it's <tt>expiration_time</tt>.
 * Otherwise it will execute immediately after the transaction that provided enough Ed25519 keys, a <tt>ScheduleCreate</tt>
 * or <tt>ScheduleSign</tt>.
 * Upon `SUCCESS`, the receipt also includes the <tt>scheduledTransactionID</tt> to
 * use to query for the record of the scheduled transaction's execution (if it occurs). 
 * 
 * The expiration time of a schedule is controlled by it's <tt>expiration_time</tt>. It remains in state and can be queried
 * using <tt>GetScheduleInfo</tt> until expiration, no matter if the scheduled transaction has
 * executed or marked deleted. If Long Term Scheduled Transactions are disabled, the <tt>expiration_time</tt> is always
 * 30 minutes in the future.
 * 
 * If the <tt>adminKey</tt> field is omitted, the resulting schedule is immutable. If the
 * <tt>adminKey</tt> is set, the <tt>ScheduleDelete</tt> transaction can be used to mark it as
 * deleted. The creator may also specify an optional <tt>memo</tt> whose UTF-8 encoding is at most
 * 100 bytes and does not include the zero byte is also supported.
 * 
 * When a <tt>scheduledTransactionBody</tt> is executed, the
 * network only charges its payer the service fee, and not the node and network fees. If the
 * optional <tt>payerAccountID</tt> is set, the network charges this account. Otherwise it charges
 * the payer of the originating <tt>ScheduleCreate</tt>.  
 * 
 * Two <tt>ScheduleCreate</tt> transactions are <i>identical</i> if they are equal in all their
 * fields other than <tt>payerAccountID</tt>.  (For the <tt>scheduledTransactionBody</tt> field,
 * "equal" should be understood in the sense of
 * gRPC object equality in the network software runtime. In particular, a gRPC object with <a
 * href="https://developers.google.com/protocol-buffers/docs/proto3#unknowns">unknown fields</a> is
 * not equal to a gRPC object without unknown fields, even if they agree on all known fields.) 
 * 
 * A <tt>ScheduleCreate</tt> transaction that attempts to re-create an identical schedule already in
 * state will receive a receipt with status <tt>IDENTICAL_SCHEDULE_ALREADY_CREATED</tt>; the receipt
 * will include the <tt>ScheduleID</tt> of the extant schedule, which may be used in a subsequent
 * <tt>ScheduleSign</tt> transaction. (The receipt will also include the <tt>TransactionID</tt> to
 * use in querying for the receipt or record of the scheduled transaction.)
 * 
 * Other notable response codes include, <tt>INVALID_ACCOUNT_ID</tt>,
 * <tt>UNSCHEDULABLE_TRANSACTION</tt>, <tt>UNRESOLVABLE_REQUIRED_SIGNERS</tt>,
 * <tt>INVALID_SIGNATURE</tt>. For more information please see the section of this documentation on
 * the <tt>ResponseCode</tt> enum. 
 * 
* * Protobuf type {@code proto.ScheduleCreateTransactionBody} */ public final class ScheduleCreateTransactionBody extends com.google.protobuf.GeneratedMessageV3 implements // @@protoc_insertion_point(message_implements:proto.ScheduleCreateTransactionBody) ScheduleCreateTransactionBodyOrBuilder { private static final long serialVersionUID = 0L; // Use ScheduleCreateTransactionBody.newBuilder() to construct. private ScheduleCreateTransactionBody(com.google.protobuf.GeneratedMessageV3.Builder builder) { super(builder); } private ScheduleCreateTransactionBody() { memo_ = ""; } @java.lang.Override @SuppressWarnings({"unused"}) protected java.lang.Object newInstance( UnusedPrivateParameter unused) { return new ScheduleCreateTransactionBody(); } @java.lang.Override public final com.google.protobuf.UnknownFieldSet getUnknownFields() { return this.unknownFields; } private ScheduleCreateTransactionBody( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { this(); if (extensionRegistry == null) { throw new java.lang.NullPointerException(); } 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 10: { com.hederahashgraph.api.proto.java.SchedulableTransactionBody.Builder subBuilder = null; if (scheduledTransactionBody_ != null) { subBuilder = scheduledTransactionBody_.toBuilder(); } scheduledTransactionBody_ = input.readMessage(com.hederahashgraph.api.proto.java.SchedulableTransactionBody.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(scheduledTransactionBody_); scheduledTransactionBody_ = subBuilder.buildPartial(); } break; } case 18: { java.lang.String s = input.readStringRequireUtf8(); memo_ = s; break; } case 26: { com.hederahashgraph.api.proto.java.Key.Builder subBuilder = null; if (adminKey_ != null) { subBuilder = adminKey_.toBuilder(); } adminKey_ = input.readMessage(com.hederahashgraph.api.proto.java.Key.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(adminKey_); adminKey_ = subBuilder.buildPartial(); } break; } case 34: { com.hederahashgraph.api.proto.java.AccountID.Builder subBuilder = null; if (payerAccountID_ != null) { subBuilder = payerAccountID_.toBuilder(); } payerAccountID_ = input.readMessage(com.hederahashgraph.api.proto.java.AccountID.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(payerAccountID_); payerAccountID_ = subBuilder.buildPartial(); } break; } case 42: { com.hederahashgraph.api.proto.java.Timestamp.Builder subBuilder = null; if (expirationTime_ != null) { subBuilder = expirationTime_.toBuilder(); } expirationTime_ = input.readMessage(com.hederahashgraph.api.proto.java.Timestamp.parser(), extensionRegistry); if (subBuilder != null) { subBuilder.mergeFrom(expirationTime_); expirationTime_ = subBuilder.buildPartial(); } break; } case 104: { waitForExpiry_ = input.readBool(); 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 { this.unknownFields = unknownFields.build(); makeExtensionsImmutable(); } } public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.hederahashgraph.api.proto.java.ScheduleCreate.internal_static_proto_ScheduleCreateTransactionBody_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.hederahashgraph.api.proto.java.ScheduleCreate.internal_static_proto_ScheduleCreateTransactionBody_fieldAccessorTable .ensureFieldAccessorsInitialized( com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody.class, com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody.Builder.class); } public static final int SCHEDULEDTRANSACTIONBODY_FIELD_NUMBER = 1; private com.hederahashgraph.api.proto.java.SchedulableTransactionBody scheduledTransactionBody_; /** *
   **
   * The scheduled transaction
   * 
* * .proto.SchedulableTransactionBody scheduledTransactionBody = 1; * @return Whether the scheduledTransactionBody field is set. */ @java.lang.Override public boolean hasScheduledTransactionBody() { return scheduledTransactionBody_ != null; } /** *
   **
   * The scheduled transaction
   * 
* * .proto.SchedulableTransactionBody scheduledTransactionBody = 1; * @return The scheduledTransactionBody. */ @java.lang.Override public com.hederahashgraph.api.proto.java.SchedulableTransactionBody getScheduledTransactionBody() { return scheduledTransactionBody_ == null ? com.hederahashgraph.api.proto.java.SchedulableTransactionBody.getDefaultInstance() : scheduledTransactionBody_; } /** *
   **
   * The scheduled transaction
   * 
* * .proto.SchedulableTransactionBody scheduledTransactionBody = 1; */ @java.lang.Override public com.hederahashgraph.api.proto.java.SchedulableTransactionBodyOrBuilder getScheduledTransactionBodyOrBuilder() { return getScheduledTransactionBody(); } public static final int MEMO_FIELD_NUMBER = 2; private volatile java.lang.Object memo_; /** *
   **
   * An optional memo with a UTF-8 encoding of no more than 100 bytes which does not contain the
   * zero byte
   * 
* * string memo = 2; * @return The memo. */ @java.lang.Override public java.lang.String getMemo() { java.lang.Object ref = memo_; if (ref instanceof java.lang.String) { return (java.lang.String) ref; } else { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); memo_ = s; return s; } } /** *
   **
   * An optional memo with a UTF-8 encoding of no more than 100 bytes which does not contain the
   * zero byte
   * 
* * string memo = 2; * @return The bytes for memo. */ @java.lang.Override public com.google.protobuf.ByteString getMemoBytes() { java.lang.Object ref = memo_; if (ref instanceof java.lang.String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); memo_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } public static final int ADMINKEY_FIELD_NUMBER = 3; private com.hederahashgraph.api.proto.java.Key adminKey_; /** *
   **
   * An optional Hedera key which can be used to sign a ScheduleDelete and remove the schedule
   * 
* * .proto.Key adminKey = 3; * @return Whether the adminKey field is set. */ @java.lang.Override public boolean hasAdminKey() { return adminKey_ != null; } /** *
   **
   * An optional Hedera key which can be used to sign a ScheduleDelete and remove the schedule
   * 
* * .proto.Key adminKey = 3; * @return The adminKey. */ @java.lang.Override public com.hederahashgraph.api.proto.java.Key getAdminKey() { return adminKey_ == null ? com.hederahashgraph.api.proto.java.Key.getDefaultInstance() : adminKey_; } /** *
   **
   * An optional Hedera key which can be used to sign a ScheduleDelete and remove the schedule
   * 
* * .proto.Key adminKey = 3; */ @java.lang.Override public com.hederahashgraph.api.proto.java.KeyOrBuilder getAdminKeyOrBuilder() { return getAdminKey(); } public static final int PAYERACCOUNTID_FIELD_NUMBER = 4; private com.hederahashgraph.api.proto.java.AccountID payerAccountID_; /** *
   **
   * An optional id of the account to be charged the service fee for the scheduled transaction at
   * the consensus time that it executes (if ever); defaults to the ScheduleCreate payer if not
   * given
   * 
* * .proto.AccountID payerAccountID = 4; * @return Whether the payerAccountID field is set. */ @java.lang.Override public boolean hasPayerAccountID() { return payerAccountID_ != null; } /** *
   **
   * An optional id of the account to be charged the service fee for the scheduled transaction at
   * the consensus time that it executes (if ever); defaults to the ScheduleCreate payer if not
   * given
   * 
* * .proto.AccountID payerAccountID = 4; * @return The payerAccountID. */ @java.lang.Override public com.hederahashgraph.api.proto.java.AccountID getPayerAccountID() { return payerAccountID_ == null ? com.hederahashgraph.api.proto.java.AccountID.getDefaultInstance() : payerAccountID_; } /** *
   **
   * An optional id of the account to be charged the service fee for the scheduled transaction at
   * the consensus time that it executes (if ever); defaults to the ScheduleCreate payer if not
   * given
   * 
* * .proto.AccountID payerAccountID = 4; */ @java.lang.Override public com.hederahashgraph.api.proto.java.AccountIDOrBuilder getPayerAccountIDOrBuilder() { return getPayerAccountID(); } public static final int EXPIRATION_TIME_FIELD_NUMBER = 5; private com.hederahashgraph.api.proto.java.Timestamp expirationTime_; /** *
   **
   * An optional timestamp for specifying when the transaction should be evaluated for execution and then expire.
   * Defaults to 30 minutes after the transaction's consensus timestamp.
   * Note: This field is unused and forced to be unset until Long Term Scheduled Transactions are enabled - Transactions will always
   *       expire in 30 minutes if Long Term Scheduled Transactions are not enabled.
   * 
* * .proto.Timestamp expiration_time = 5; * @return Whether the expirationTime field is set. */ @java.lang.Override public boolean hasExpirationTime() { return expirationTime_ != null; } /** *
   **
   * An optional timestamp for specifying when the transaction should be evaluated for execution and then expire.
   * Defaults to 30 minutes after the transaction's consensus timestamp.
   * Note: This field is unused and forced to be unset until Long Term Scheduled Transactions are enabled - Transactions will always
   *       expire in 30 minutes if Long Term Scheduled Transactions are not enabled.
   * 
* * .proto.Timestamp expiration_time = 5; * @return The expirationTime. */ @java.lang.Override public com.hederahashgraph.api.proto.java.Timestamp getExpirationTime() { return expirationTime_ == null ? com.hederahashgraph.api.proto.java.Timestamp.getDefaultInstance() : expirationTime_; } /** *
   **
   * An optional timestamp for specifying when the transaction should be evaluated for execution and then expire.
   * Defaults to 30 minutes after the transaction's consensus timestamp.
   * Note: This field is unused and forced to be unset until Long Term Scheduled Transactions are enabled - Transactions will always
   *       expire in 30 minutes if Long Term Scheduled Transactions are not enabled.
   * 
* * .proto.Timestamp expiration_time = 5; */ @java.lang.Override public com.hederahashgraph.api.proto.java.TimestampOrBuilder getExpirationTimeOrBuilder() { return getExpirationTime(); } public static final int WAIT_FOR_EXPIRY_FIELD_NUMBER = 13; private boolean waitForExpiry_; /** *
   **
   * When set to true, the transaction will be evaluated for execution at expiration_time instead
   * of when all required signatures are received.
   * When set to false, the transaction will execute immediately after sufficient signatures are received
   * to sign the contained transaction. During the initial ScheduleCreate transaction or via ScheduleSign transactions.
   * Defaults to false.
   * Setting this to false does not necessarily mean that the transaction will never execute at expiration_time.
   *  For Example - If the signature requirements for a Scheduled Transaction change via external means (e.g. CryptoUpdate)
   *  such that the Scheduled Transaction would be allowed to execute, it will do so autonomously at expiration_time, unless a
   *  ScheduleSign comes in to "poke" it and force it to go through immediately.
   * Note: This field is unused and forced to be unset until Long Term Scheduled Transactions are enabled. Before Long Term
   *       Scheduled Transactions are enabled, Scheduled Transactions will _never_ execute at expiration  - they will _only_
   *       execute during the initial ScheduleCreate transaction or via ScheduleSign transactions and will _always_
   *       expire at expiration_time.
   * 
* * bool wait_for_expiry = 13; * @return The waitForExpiry. */ @java.lang.Override public boolean getWaitForExpiry() { return waitForExpiry_; } 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 (scheduledTransactionBody_ != null) { output.writeMessage(1, getScheduledTransactionBody()); } if (!getMemoBytes().isEmpty()) { com.google.protobuf.GeneratedMessageV3.writeString(output, 2, memo_); } if (adminKey_ != null) { output.writeMessage(3, getAdminKey()); } if (payerAccountID_ != null) { output.writeMessage(4, getPayerAccountID()); } if (expirationTime_ != null) { output.writeMessage(5, getExpirationTime()); } if (waitForExpiry_ != false) { output.writeBool(13, waitForExpiry_); } unknownFields.writeTo(output); } @java.lang.Override public int getSerializedSize() { int size = memoizedSize; if (size != -1) return size; size = 0; if (scheduledTransactionBody_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(1, getScheduledTransactionBody()); } if (!getMemoBytes().isEmpty()) { size += com.google.protobuf.GeneratedMessageV3.computeStringSize(2, memo_); } if (adminKey_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(3, getAdminKey()); } if (payerAccountID_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(4, getPayerAccountID()); } if (expirationTime_ != null) { size += com.google.protobuf.CodedOutputStream .computeMessageSize(5, getExpirationTime()); } if (waitForExpiry_ != false) { size += com.google.protobuf.CodedOutputStream .computeBoolSize(13, waitForExpiry_); } 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.ScheduleCreateTransactionBody)) { return super.equals(obj); } com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody other = (com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody) obj; if (hasScheduledTransactionBody() != other.hasScheduledTransactionBody()) return false; if (hasScheduledTransactionBody()) { if (!getScheduledTransactionBody() .equals(other.getScheduledTransactionBody())) return false; } if (!getMemo() .equals(other.getMemo())) return false; if (hasAdminKey() != other.hasAdminKey()) return false; if (hasAdminKey()) { if (!getAdminKey() .equals(other.getAdminKey())) return false; } if (hasPayerAccountID() != other.hasPayerAccountID()) return false; if (hasPayerAccountID()) { if (!getPayerAccountID() .equals(other.getPayerAccountID())) return false; } if (hasExpirationTime() != other.hasExpirationTime()) return false; if (hasExpirationTime()) { if (!getExpirationTime() .equals(other.getExpirationTime())) return false; } if (getWaitForExpiry() != other.getWaitForExpiry()) 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(); if (hasScheduledTransactionBody()) { hash = (37 * hash) + SCHEDULEDTRANSACTIONBODY_FIELD_NUMBER; hash = (53 * hash) + getScheduledTransactionBody().hashCode(); } hash = (37 * hash) + MEMO_FIELD_NUMBER; hash = (53 * hash) + getMemo().hashCode(); if (hasAdminKey()) { hash = (37 * hash) + ADMINKEY_FIELD_NUMBER; hash = (53 * hash) + getAdminKey().hashCode(); } if (hasPayerAccountID()) { hash = (37 * hash) + PAYERACCOUNTID_FIELD_NUMBER; hash = (53 * hash) + getPayerAccountID().hashCode(); } if (hasExpirationTime()) { hash = (37 * hash) + EXPIRATION_TIME_FIELD_NUMBER; hash = (53 * hash) + getExpirationTime().hashCode(); } hash = (37 * hash) + WAIT_FOR_EXPIRY_FIELD_NUMBER; hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean( getWaitForExpiry()); hash = (29 * hash) + unknownFields.hashCode(); memoizedHashCode = hash; return hash; } public static com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody parseFrom( java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody 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.ScheduleCreateTransactionBody parseFrom( com.google.protobuf.ByteString data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody 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.ScheduleCreateTransactionBody parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException { return PARSER.parseFrom(data); } public static com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody 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.ScheduleCreateTransactionBody parseFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseWithIOException(PARSER, input); } public static com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody 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.ScheduleCreateTransactionBody parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException { return com.google.protobuf.GeneratedMessageV3 .parseDelimitedWithIOException(PARSER, input); } public static com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody 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.ScheduleCreateTransactionBody 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.ScheduleCreateTransactionBody 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.ScheduleCreateTransactionBody 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; } /** *
   **
   * Create a new <i>schedule entity</i> (or simply, <i>schedule</i>) in the network's action queue.
   * Upon <tt>SUCCESS</tt>, the receipt contains the `ScheduleID` of the created schedule. A schedule
   * entity includes a <tt>scheduledTransactionBody</tt> to be executed.
   * When the schedule has collected enough signing Ed25519 keys to satisfy the schedule's signing
   * requirements, the schedule can be executed.
   * If Long Term Scheduled Transactions are enabled and <tt>wait_for_expiry</tt> is set to <tt>true</tt>, then the schedule
   * will execute at it's <tt>expiration_time</tt>.
   * Otherwise it will execute immediately after the transaction that provided enough Ed25519 keys, a <tt>ScheduleCreate</tt>
   * or <tt>ScheduleSign</tt>.
   * Upon `SUCCESS`, the receipt also includes the <tt>scheduledTransactionID</tt> to
   * use to query for the record of the scheduled transaction's execution (if it occurs). 
   * 
   * The expiration time of a schedule is controlled by it's <tt>expiration_time</tt>. It remains in state and can be queried
   * using <tt>GetScheduleInfo</tt> until expiration, no matter if the scheduled transaction has
   * executed or marked deleted. If Long Term Scheduled Transactions are disabled, the <tt>expiration_time</tt> is always
   * 30 minutes in the future.
   * 
   * If the <tt>adminKey</tt> field is omitted, the resulting schedule is immutable. If the
   * <tt>adminKey</tt> is set, the <tt>ScheduleDelete</tt> transaction can be used to mark it as
   * deleted. The creator may also specify an optional <tt>memo</tt> whose UTF-8 encoding is at most
   * 100 bytes and does not include the zero byte is also supported.
   * 
   * When a <tt>scheduledTransactionBody</tt> is executed, the
   * network only charges its payer the service fee, and not the node and network fees. If the
   * optional <tt>payerAccountID</tt> is set, the network charges this account. Otherwise it charges
   * the payer of the originating <tt>ScheduleCreate</tt>.  
   * 
   * Two <tt>ScheduleCreate</tt> transactions are <i>identical</i> if they are equal in all their
   * fields other than <tt>payerAccountID</tt>.  (For the <tt>scheduledTransactionBody</tt> field,
   * "equal" should be understood in the sense of
   * gRPC object equality in the network software runtime. In particular, a gRPC object with <a
   * href="https://developers.google.com/protocol-buffers/docs/proto3#unknowns">unknown fields</a> is
   * not equal to a gRPC object without unknown fields, even if they agree on all known fields.) 
   * 
   * A <tt>ScheduleCreate</tt> transaction that attempts to re-create an identical schedule already in
   * state will receive a receipt with status <tt>IDENTICAL_SCHEDULE_ALREADY_CREATED</tt>; the receipt
   * will include the <tt>ScheduleID</tt> of the extant schedule, which may be used in a subsequent
   * <tt>ScheduleSign</tt> transaction. (The receipt will also include the <tt>TransactionID</tt> to
   * use in querying for the receipt or record of the scheduled transaction.)
   * 
   * Other notable response codes include, <tt>INVALID_ACCOUNT_ID</tt>,
   * <tt>UNSCHEDULABLE_TRANSACTION</tt>, <tt>UNRESOLVABLE_REQUIRED_SIGNERS</tt>,
   * <tt>INVALID_SIGNATURE</tt>. For more information please see the section of this documentation on
   * the <tt>ResponseCode</tt> enum. 
   * 
* * Protobuf type {@code proto.ScheduleCreateTransactionBody} */ public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder implements // @@protoc_insertion_point(builder_implements:proto.ScheduleCreateTransactionBody) com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBodyOrBuilder { public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { return com.hederahashgraph.api.proto.java.ScheduleCreate.internal_static_proto_ScheduleCreateTransactionBody_descriptor; } @java.lang.Override protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable internalGetFieldAccessorTable() { return com.hederahashgraph.api.proto.java.ScheduleCreate.internal_static_proto_ScheduleCreateTransactionBody_fieldAccessorTable .ensureFieldAccessorsInitialized( com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody.class, com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody.Builder.class); } // Construct using com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody.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(); if (scheduledTransactionBodyBuilder_ == null) { scheduledTransactionBody_ = null; } else { scheduledTransactionBody_ = null; scheduledTransactionBodyBuilder_ = null; } memo_ = ""; if (adminKeyBuilder_ == null) { adminKey_ = null; } else { adminKey_ = null; adminKeyBuilder_ = null; } if (payerAccountIDBuilder_ == null) { payerAccountID_ = null; } else { payerAccountID_ = null; payerAccountIDBuilder_ = null; } if (expirationTimeBuilder_ == null) { expirationTime_ = null; } else { expirationTime_ = null; expirationTimeBuilder_ = null; } waitForExpiry_ = false; return this; } @java.lang.Override public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() { return com.hederahashgraph.api.proto.java.ScheduleCreate.internal_static_proto_ScheduleCreateTransactionBody_descriptor; } @java.lang.Override public com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody getDefaultInstanceForType() { return com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody.getDefaultInstance(); } @java.lang.Override public com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody build() { com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody result = buildPartial(); if (!result.isInitialized()) { throw newUninitializedMessageException(result); } return result; } @java.lang.Override public com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody buildPartial() { com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody result = new com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody(this); if (scheduledTransactionBodyBuilder_ == null) { result.scheduledTransactionBody_ = scheduledTransactionBody_; } else { result.scheduledTransactionBody_ = scheduledTransactionBodyBuilder_.build(); } result.memo_ = memo_; if (adminKeyBuilder_ == null) { result.adminKey_ = adminKey_; } else { result.adminKey_ = adminKeyBuilder_.build(); } if (payerAccountIDBuilder_ == null) { result.payerAccountID_ = payerAccountID_; } else { result.payerAccountID_ = payerAccountIDBuilder_.build(); } if (expirationTimeBuilder_ == null) { result.expirationTime_ = expirationTime_; } else { result.expirationTime_ = expirationTimeBuilder_.build(); } result.waitForExpiry_ = waitForExpiry_; 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.ScheduleCreateTransactionBody) { return mergeFrom((com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody)other); } else { super.mergeFrom(other); return this; } } public Builder mergeFrom(com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody other) { if (other == com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody.getDefaultInstance()) return this; if (other.hasScheduledTransactionBody()) { mergeScheduledTransactionBody(other.getScheduledTransactionBody()); } if (!other.getMemo().isEmpty()) { memo_ = other.memo_; onChanged(); } if (other.hasAdminKey()) { mergeAdminKey(other.getAdminKey()); } if (other.hasPayerAccountID()) { mergePayerAccountID(other.getPayerAccountID()); } if (other.hasExpirationTime()) { mergeExpirationTime(other.getExpirationTime()); } if (other.getWaitForExpiry() != false) { setWaitForExpiry(other.getWaitForExpiry()); } 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.ScheduleCreateTransactionBody parsedMessage = null; try { parsedMessage = PARSER.parsePartialFrom(input, extensionRegistry); } catch (com.google.protobuf.InvalidProtocolBufferException e) { parsedMessage = (com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody) e.getUnfinishedMessage(); throw e.unwrapIOException(); } finally { if (parsedMessage != null) { mergeFrom(parsedMessage); } } return this; } private com.hederahashgraph.api.proto.java.SchedulableTransactionBody scheduledTransactionBody_; private com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.SchedulableTransactionBody, com.hederahashgraph.api.proto.java.SchedulableTransactionBody.Builder, com.hederahashgraph.api.proto.java.SchedulableTransactionBodyOrBuilder> scheduledTransactionBodyBuilder_; /** *
     **
     * The scheduled transaction
     * 
* * .proto.SchedulableTransactionBody scheduledTransactionBody = 1; * @return Whether the scheduledTransactionBody field is set. */ public boolean hasScheduledTransactionBody() { return scheduledTransactionBodyBuilder_ != null || scheduledTransactionBody_ != null; } /** *
     **
     * The scheduled transaction
     * 
* * .proto.SchedulableTransactionBody scheduledTransactionBody = 1; * @return The scheduledTransactionBody. */ public com.hederahashgraph.api.proto.java.SchedulableTransactionBody getScheduledTransactionBody() { if (scheduledTransactionBodyBuilder_ == null) { return scheduledTransactionBody_ == null ? com.hederahashgraph.api.proto.java.SchedulableTransactionBody.getDefaultInstance() : scheduledTransactionBody_; } else { return scheduledTransactionBodyBuilder_.getMessage(); } } /** *
     **
     * The scheduled transaction
     * 
* * .proto.SchedulableTransactionBody scheduledTransactionBody = 1; */ public Builder setScheduledTransactionBody(com.hederahashgraph.api.proto.java.SchedulableTransactionBody value) { if (scheduledTransactionBodyBuilder_ == null) { if (value == null) { throw new NullPointerException(); } scheduledTransactionBody_ = value; onChanged(); } else { scheduledTransactionBodyBuilder_.setMessage(value); } return this; } /** *
     **
     * The scheduled transaction
     * 
* * .proto.SchedulableTransactionBody scheduledTransactionBody = 1; */ public Builder setScheduledTransactionBody( com.hederahashgraph.api.proto.java.SchedulableTransactionBody.Builder builderForValue) { if (scheduledTransactionBodyBuilder_ == null) { scheduledTransactionBody_ = builderForValue.build(); onChanged(); } else { scheduledTransactionBodyBuilder_.setMessage(builderForValue.build()); } return this; } /** *
     **
     * The scheduled transaction
     * 
* * .proto.SchedulableTransactionBody scheduledTransactionBody = 1; */ public Builder mergeScheduledTransactionBody(com.hederahashgraph.api.proto.java.SchedulableTransactionBody value) { if (scheduledTransactionBodyBuilder_ == null) { if (scheduledTransactionBody_ != null) { scheduledTransactionBody_ = com.hederahashgraph.api.proto.java.SchedulableTransactionBody.newBuilder(scheduledTransactionBody_).mergeFrom(value).buildPartial(); } else { scheduledTransactionBody_ = value; } onChanged(); } else { scheduledTransactionBodyBuilder_.mergeFrom(value); } return this; } /** *
     **
     * The scheduled transaction
     * 
* * .proto.SchedulableTransactionBody scheduledTransactionBody = 1; */ public Builder clearScheduledTransactionBody() { if (scheduledTransactionBodyBuilder_ == null) { scheduledTransactionBody_ = null; onChanged(); } else { scheduledTransactionBody_ = null; scheduledTransactionBodyBuilder_ = null; } return this; } /** *
     **
     * The scheduled transaction
     * 
* * .proto.SchedulableTransactionBody scheduledTransactionBody = 1; */ public com.hederahashgraph.api.proto.java.SchedulableTransactionBody.Builder getScheduledTransactionBodyBuilder() { onChanged(); return getScheduledTransactionBodyFieldBuilder().getBuilder(); } /** *
     **
     * The scheduled transaction
     * 
* * .proto.SchedulableTransactionBody scheduledTransactionBody = 1; */ public com.hederahashgraph.api.proto.java.SchedulableTransactionBodyOrBuilder getScheduledTransactionBodyOrBuilder() { if (scheduledTransactionBodyBuilder_ != null) { return scheduledTransactionBodyBuilder_.getMessageOrBuilder(); } else { return scheduledTransactionBody_ == null ? com.hederahashgraph.api.proto.java.SchedulableTransactionBody.getDefaultInstance() : scheduledTransactionBody_; } } /** *
     **
     * The scheduled transaction
     * 
* * .proto.SchedulableTransactionBody scheduledTransactionBody = 1; */ private com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.SchedulableTransactionBody, com.hederahashgraph.api.proto.java.SchedulableTransactionBody.Builder, com.hederahashgraph.api.proto.java.SchedulableTransactionBodyOrBuilder> getScheduledTransactionBodyFieldBuilder() { if (scheduledTransactionBodyBuilder_ == null) { scheduledTransactionBodyBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.SchedulableTransactionBody, com.hederahashgraph.api.proto.java.SchedulableTransactionBody.Builder, com.hederahashgraph.api.proto.java.SchedulableTransactionBodyOrBuilder>( getScheduledTransactionBody(), getParentForChildren(), isClean()); scheduledTransactionBody_ = null; } return scheduledTransactionBodyBuilder_; } private java.lang.Object memo_ = ""; /** *
     **
     * An optional memo with a UTF-8 encoding of no more than 100 bytes which does not contain the
     * zero byte
     * 
* * string memo = 2; * @return The memo. */ public java.lang.String getMemo() { java.lang.Object ref = memo_; if (!(ref instanceof java.lang.String)) { com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref; java.lang.String s = bs.toStringUtf8(); memo_ = s; return s; } else { return (java.lang.String) ref; } } /** *
     **
     * An optional memo with a UTF-8 encoding of no more than 100 bytes which does not contain the
     * zero byte
     * 
* * string memo = 2; * @return The bytes for memo. */ public com.google.protobuf.ByteString getMemoBytes() { java.lang.Object ref = memo_; if (ref instanceof String) { com.google.protobuf.ByteString b = com.google.protobuf.ByteString.copyFromUtf8( (java.lang.String) ref); memo_ = b; return b; } else { return (com.google.protobuf.ByteString) ref; } } /** *
     **
     * An optional memo with a UTF-8 encoding of no more than 100 bytes which does not contain the
     * zero byte
     * 
* * string memo = 2; * @param value The memo to set. * @return This builder for chaining. */ public Builder setMemo( java.lang.String value) { if (value == null) { throw new NullPointerException(); } memo_ = value; onChanged(); return this; } /** *
     **
     * An optional memo with a UTF-8 encoding of no more than 100 bytes which does not contain the
     * zero byte
     * 
* * string memo = 2; * @return This builder for chaining. */ public Builder clearMemo() { memo_ = getDefaultInstance().getMemo(); onChanged(); return this; } /** *
     **
     * An optional memo with a UTF-8 encoding of no more than 100 bytes which does not contain the
     * zero byte
     * 
* * string memo = 2; * @param value The bytes for memo to set. * @return This builder for chaining. */ public Builder setMemoBytes( com.google.protobuf.ByteString value) { if (value == null) { throw new NullPointerException(); } checkByteStringIsUtf8(value); memo_ = value; onChanged(); return this; } private com.hederahashgraph.api.proto.java.Key adminKey_; private com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.Key, com.hederahashgraph.api.proto.java.Key.Builder, com.hederahashgraph.api.proto.java.KeyOrBuilder> adminKeyBuilder_; /** *
     **
     * An optional Hedera key which can be used to sign a ScheduleDelete and remove the schedule
     * 
* * .proto.Key adminKey = 3; * @return Whether the adminKey field is set. */ public boolean hasAdminKey() { return adminKeyBuilder_ != null || adminKey_ != null; } /** *
     **
     * An optional Hedera key which can be used to sign a ScheduleDelete and remove the schedule
     * 
* * .proto.Key adminKey = 3; * @return The adminKey. */ public com.hederahashgraph.api.proto.java.Key getAdminKey() { if (adminKeyBuilder_ == null) { return adminKey_ == null ? com.hederahashgraph.api.proto.java.Key.getDefaultInstance() : adminKey_; } else { return adminKeyBuilder_.getMessage(); } } /** *
     **
     * An optional Hedera key which can be used to sign a ScheduleDelete and remove the schedule
     * 
* * .proto.Key adminKey = 3; */ public Builder setAdminKey(com.hederahashgraph.api.proto.java.Key value) { if (adminKeyBuilder_ == null) { if (value == null) { throw new NullPointerException(); } adminKey_ = value; onChanged(); } else { adminKeyBuilder_.setMessage(value); } return this; } /** *
     **
     * An optional Hedera key which can be used to sign a ScheduleDelete and remove the schedule
     * 
* * .proto.Key adminKey = 3; */ public Builder setAdminKey( com.hederahashgraph.api.proto.java.Key.Builder builderForValue) { if (adminKeyBuilder_ == null) { adminKey_ = builderForValue.build(); onChanged(); } else { adminKeyBuilder_.setMessage(builderForValue.build()); } return this; } /** *
     **
     * An optional Hedera key which can be used to sign a ScheduleDelete and remove the schedule
     * 
* * .proto.Key adminKey = 3; */ public Builder mergeAdminKey(com.hederahashgraph.api.proto.java.Key value) { if (adminKeyBuilder_ == null) { if (adminKey_ != null) { adminKey_ = com.hederahashgraph.api.proto.java.Key.newBuilder(adminKey_).mergeFrom(value).buildPartial(); } else { adminKey_ = value; } onChanged(); } else { adminKeyBuilder_.mergeFrom(value); } return this; } /** *
     **
     * An optional Hedera key which can be used to sign a ScheduleDelete and remove the schedule
     * 
* * .proto.Key adminKey = 3; */ public Builder clearAdminKey() { if (adminKeyBuilder_ == null) { adminKey_ = null; onChanged(); } else { adminKey_ = null; adminKeyBuilder_ = null; } return this; } /** *
     **
     * An optional Hedera key which can be used to sign a ScheduleDelete and remove the schedule
     * 
* * .proto.Key adminKey = 3; */ public com.hederahashgraph.api.proto.java.Key.Builder getAdminKeyBuilder() { onChanged(); return getAdminKeyFieldBuilder().getBuilder(); } /** *
     **
     * An optional Hedera key which can be used to sign a ScheduleDelete and remove the schedule
     * 
* * .proto.Key adminKey = 3; */ public com.hederahashgraph.api.proto.java.KeyOrBuilder getAdminKeyOrBuilder() { if (adminKeyBuilder_ != null) { return adminKeyBuilder_.getMessageOrBuilder(); } else { return adminKey_ == null ? com.hederahashgraph.api.proto.java.Key.getDefaultInstance() : adminKey_; } } /** *
     **
     * An optional Hedera key which can be used to sign a ScheduleDelete and remove the schedule
     * 
* * .proto.Key adminKey = 3; */ private com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.Key, com.hederahashgraph.api.proto.java.Key.Builder, com.hederahashgraph.api.proto.java.KeyOrBuilder> getAdminKeyFieldBuilder() { if (adminKeyBuilder_ == null) { adminKeyBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.Key, com.hederahashgraph.api.proto.java.Key.Builder, com.hederahashgraph.api.proto.java.KeyOrBuilder>( getAdminKey(), getParentForChildren(), isClean()); adminKey_ = null; } return adminKeyBuilder_; } private com.hederahashgraph.api.proto.java.AccountID payerAccountID_; private com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.AccountID, com.hederahashgraph.api.proto.java.AccountID.Builder, com.hederahashgraph.api.proto.java.AccountIDOrBuilder> payerAccountIDBuilder_; /** *
     **
     * An optional id of the account to be charged the service fee for the scheduled transaction at
     * the consensus time that it executes (if ever); defaults to the ScheduleCreate payer if not
     * given
     * 
* * .proto.AccountID payerAccountID = 4; * @return Whether the payerAccountID field is set. */ public boolean hasPayerAccountID() { return payerAccountIDBuilder_ != null || payerAccountID_ != null; } /** *
     **
     * An optional id of the account to be charged the service fee for the scheduled transaction at
     * the consensus time that it executes (if ever); defaults to the ScheduleCreate payer if not
     * given
     * 
* * .proto.AccountID payerAccountID = 4; * @return The payerAccountID. */ public com.hederahashgraph.api.proto.java.AccountID getPayerAccountID() { if (payerAccountIDBuilder_ == null) { return payerAccountID_ == null ? com.hederahashgraph.api.proto.java.AccountID.getDefaultInstance() : payerAccountID_; } else { return payerAccountIDBuilder_.getMessage(); } } /** *
     **
     * An optional id of the account to be charged the service fee for the scheduled transaction at
     * the consensus time that it executes (if ever); defaults to the ScheduleCreate payer if not
     * given
     * 
* * .proto.AccountID payerAccountID = 4; */ public Builder setPayerAccountID(com.hederahashgraph.api.proto.java.AccountID value) { if (payerAccountIDBuilder_ == null) { if (value == null) { throw new NullPointerException(); } payerAccountID_ = value; onChanged(); } else { payerAccountIDBuilder_.setMessage(value); } return this; } /** *
     **
     * An optional id of the account to be charged the service fee for the scheduled transaction at
     * the consensus time that it executes (if ever); defaults to the ScheduleCreate payer if not
     * given
     * 
* * .proto.AccountID payerAccountID = 4; */ public Builder setPayerAccountID( com.hederahashgraph.api.proto.java.AccountID.Builder builderForValue) { if (payerAccountIDBuilder_ == null) { payerAccountID_ = builderForValue.build(); onChanged(); } else { payerAccountIDBuilder_.setMessage(builderForValue.build()); } return this; } /** *
     **
     * An optional id of the account to be charged the service fee for the scheduled transaction at
     * the consensus time that it executes (if ever); defaults to the ScheduleCreate payer if not
     * given
     * 
* * .proto.AccountID payerAccountID = 4; */ public Builder mergePayerAccountID(com.hederahashgraph.api.proto.java.AccountID value) { if (payerAccountIDBuilder_ == null) { if (payerAccountID_ != null) { payerAccountID_ = com.hederahashgraph.api.proto.java.AccountID.newBuilder(payerAccountID_).mergeFrom(value).buildPartial(); } else { payerAccountID_ = value; } onChanged(); } else { payerAccountIDBuilder_.mergeFrom(value); } return this; } /** *
     **
     * An optional id of the account to be charged the service fee for the scheduled transaction at
     * the consensus time that it executes (if ever); defaults to the ScheduleCreate payer if not
     * given
     * 
* * .proto.AccountID payerAccountID = 4; */ public Builder clearPayerAccountID() { if (payerAccountIDBuilder_ == null) { payerAccountID_ = null; onChanged(); } else { payerAccountID_ = null; payerAccountIDBuilder_ = null; } return this; } /** *
     **
     * An optional id of the account to be charged the service fee for the scheduled transaction at
     * the consensus time that it executes (if ever); defaults to the ScheduleCreate payer if not
     * given
     * 
* * .proto.AccountID payerAccountID = 4; */ public com.hederahashgraph.api.proto.java.AccountID.Builder getPayerAccountIDBuilder() { onChanged(); return getPayerAccountIDFieldBuilder().getBuilder(); } /** *
     **
     * An optional id of the account to be charged the service fee for the scheduled transaction at
     * the consensus time that it executes (if ever); defaults to the ScheduleCreate payer if not
     * given
     * 
* * .proto.AccountID payerAccountID = 4; */ public com.hederahashgraph.api.proto.java.AccountIDOrBuilder getPayerAccountIDOrBuilder() { if (payerAccountIDBuilder_ != null) { return payerAccountIDBuilder_.getMessageOrBuilder(); } else { return payerAccountID_ == null ? com.hederahashgraph.api.proto.java.AccountID.getDefaultInstance() : payerAccountID_; } } /** *
     **
     * An optional id of the account to be charged the service fee for the scheduled transaction at
     * the consensus time that it executes (if ever); defaults to the ScheduleCreate payer if not
     * given
     * 
* * .proto.AccountID payerAccountID = 4; */ private com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.AccountID, com.hederahashgraph.api.proto.java.AccountID.Builder, com.hederahashgraph.api.proto.java.AccountIDOrBuilder> getPayerAccountIDFieldBuilder() { if (payerAccountIDBuilder_ == null) { payerAccountIDBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.AccountID, com.hederahashgraph.api.proto.java.AccountID.Builder, com.hederahashgraph.api.proto.java.AccountIDOrBuilder>( getPayerAccountID(), getParentForChildren(), isClean()); payerAccountID_ = null; } return payerAccountIDBuilder_; } private com.hederahashgraph.api.proto.java.Timestamp expirationTime_; private com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.Timestamp, com.hederahashgraph.api.proto.java.Timestamp.Builder, com.hederahashgraph.api.proto.java.TimestampOrBuilder> expirationTimeBuilder_; /** *
     **
     * An optional timestamp for specifying when the transaction should be evaluated for execution and then expire.
     * Defaults to 30 minutes after the transaction's consensus timestamp.
     * Note: This field is unused and forced to be unset until Long Term Scheduled Transactions are enabled - Transactions will always
     *       expire in 30 minutes if Long Term Scheduled Transactions are not enabled.
     * 
* * .proto.Timestamp expiration_time = 5; * @return Whether the expirationTime field is set. */ public boolean hasExpirationTime() { return expirationTimeBuilder_ != null || expirationTime_ != null; } /** *
     **
     * An optional timestamp for specifying when the transaction should be evaluated for execution and then expire.
     * Defaults to 30 minutes after the transaction's consensus timestamp.
     * Note: This field is unused and forced to be unset until Long Term Scheduled Transactions are enabled - Transactions will always
     *       expire in 30 minutes if Long Term Scheduled Transactions are not enabled.
     * 
* * .proto.Timestamp expiration_time = 5; * @return The expirationTime. */ public com.hederahashgraph.api.proto.java.Timestamp getExpirationTime() { if (expirationTimeBuilder_ == null) { return expirationTime_ == null ? com.hederahashgraph.api.proto.java.Timestamp.getDefaultInstance() : expirationTime_; } else { return expirationTimeBuilder_.getMessage(); } } /** *
     **
     * An optional timestamp for specifying when the transaction should be evaluated for execution and then expire.
     * Defaults to 30 minutes after the transaction's consensus timestamp.
     * Note: This field is unused and forced to be unset until Long Term Scheduled Transactions are enabled - Transactions will always
     *       expire in 30 minutes if Long Term Scheduled Transactions are not enabled.
     * 
* * .proto.Timestamp expiration_time = 5; */ public Builder setExpirationTime(com.hederahashgraph.api.proto.java.Timestamp value) { if (expirationTimeBuilder_ == null) { if (value == null) { throw new NullPointerException(); } expirationTime_ = value; onChanged(); } else { expirationTimeBuilder_.setMessage(value); } return this; } /** *
     **
     * An optional timestamp for specifying when the transaction should be evaluated for execution and then expire.
     * Defaults to 30 minutes after the transaction's consensus timestamp.
     * Note: This field is unused and forced to be unset until Long Term Scheduled Transactions are enabled - Transactions will always
     *       expire in 30 minutes if Long Term Scheduled Transactions are not enabled.
     * 
* * .proto.Timestamp expiration_time = 5; */ public Builder setExpirationTime( com.hederahashgraph.api.proto.java.Timestamp.Builder builderForValue) { if (expirationTimeBuilder_ == null) { expirationTime_ = builderForValue.build(); onChanged(); } else { expirationTimeBuilder_.setMessage(builderForValue.build()); } return this; } /** *
     **
     * An optional timestamp for specifying when the transaction should be evaluated for execution and then expire.
     * Defaults to 30 minutes after the transaction's consensus timestamp.
     * Note: This field is unused and forced to be unset until Long Term Scheduled Transactions are enabled - Transactions will always
     *       expire in 30 minutes if Long Term Scheduled Transactions are not enabled.
     * 
* * .proto.Timestamp expiration_time = 5; */ public Builder mergeExpirationTime(com.hederahashgraph.api.proto.java.Timestamp value) { if (expirationTimeBuilder_ == null) { if (expirationTime_ != null) { expirationTime_ = com.hederahashgraph.api.proto.java.Timestamp.newBuilder(expirationTime_).mergeFrom(value).buildPartial(); } else { expirationTime_ = value; } onChanged(); } else { expirationTimeBuilder_.mergeFrom(value); } return this; } /** *
     **
     * An optional timestamp for specifying when the transaction should be evaluated for execution and then expire.
     * Defaults to 30 minutes after the transaction's consensus timestamp.
     * Note: This field is unused and forced to be unset until Long Term Scheduled Transactions are enabled - Transactions will always
     *       expire in 30 minutes if Long Term Scheduled Transactions are not enabled.
     * 
* * .proto.Timestamp expiration_time = 5; */ public Builder clearExpirationTime() { if (expirationTimeBuilder_ == null) { expirationTime_ = null; onChanged(); } else { expirationTime_ = null; expirationTimeBuilder_ = null; } return this; } /** *
     **
     * An optional timestamp for specifying when the transaction should be evaluated for execution and then expire.
     * Defaults to 30 minutes after the transaction's consensus timestamp.
     * Note: This field is unused and forced to be unset until Long Term Scheduled Transactions are enabled - Transactions will always
     *       expire in 30 minutes if Long Term Scheduled Transactions are not enabled.
     * 
* * .proto.Timestamp expiration_time = 5; */ public com.hederahashgraph.api.proto.java.Timestamp.Builder getExpirationTimeBuilder() { onChanged(); return getExpirationTimeFieldBuilder().getBuilder(); } /** *
     **
     * An optional timestamp for specifying when the transaction should be evaluated for execution and then expire.
     * Defaults to 30 minutes after the transaction's consensus timestamp.
     * Note: This field is unused and forced to be unset until Long Term Scheduled Transactions are enabled - Transactions will always
     *       expire in 30 minutes if Long Term Scheduled Transactions are not enabled.
     * 
* * .proto.Timestamp expiration_time = 5; */ public com.hederahashgraph.api.proto.java.TimestampOrBuilder getExpirationTimeOrBuilder() { if (expirationTimeBuilder_ != null) { return expirationTimeBuilder_.getMessageOrBuilder(); } else { return expirationTime_ == null ? com.hederahashgraph.api.proto.java.Timestamp.getDefaultInstance() : expirationTime_; } } /** *
     **
     * An optional timestamp for specifying when the transaction should be evaluated for execution and then expire.
     * Defaults to 30 minutes after the transaction's consensus timestamp.
     * Note: This field is unused and forced to be unset until Long Term Scheduled Transactions are enabled - Transactions will always
     *       expire in 30 minutes if Long Term Scheduled Transactions are not enabled.
     * 
* * .proto.Timestamp expiration_time = 5; */ private com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.Timestamp, com.hederahashgraph.api.proto.java.Timestamp.Builder, com.hederahashgraph.api.proto.java.TimestampOrBuilder> getExpirationTimeFieldBuilder() { if (expirationTimeBuilder_ == null) { expirationTimeBuilder_ = new com.google.protobuf.SingleFieldBuilderV3< com.hederahashgraph.api.proto.java.Timestamp, com.hederahashgraph.api.proto.java.Timestamp.Builder, com.hederahashgraph.api.proto.java.TimestampOrBuilder>( getExpirationTime(), getParentForChildren(), isClean()); expirationTime_ = null; } return expirationTimeBuilder_; } private boolean waitForExpiry_ ; /** *
     **
     * When set to true, the transaction will be evaluated for execution at expiration_time instead
     * of when all required signatures are received.
     * When set to false, the transaction will execute immediately after sufficient signatures are received
     * to sign the contained transaction. During the initial ScheduleCreate transaction or via ScheduleSign transactions.
     * Defaults to false.
     * Setting this to false does not necessarily mean that the transaction will never execute at expiration_time.
     *  For Example - If the signature requirements for a Scheduled Transaction change via external means (e.g. CryptoUpdate)
     *  such that the Scheduled Transaction would be allowed to execute, it will do so autonomously at expiration_time, unless a
     *  ScheduleSign comes in to "poke" it and force it to go through immediately.
     * Note: This field is unused and forced to be unset until Long Term Scheduled Transactions are enabled. Before Long Term
     *       Scheduled Transactions are enabled, Scheduled Transactions will _never_ execute at expiration  - they will _only_
     *       execute during the initial ScheduleCreate transaction or via ScheduleSign transactions and will _always_
     *       expire at expiration_time.
     * 
* * bool wait_for_expiry = 13; * @return The waitForExpiry. */ @java.lang.Override public boolean getWaitForExpiry() { return waitForExpiry_; } /** *
     **
     * When set to true, the transaction will be evaluated for execution at expiration_time instead
     * of when all required signatures are received.
     * When set to false, the transaction will execute immediately after sufficient signatures are received
     * to sign the contained transaction. During the initial ScheduleCreate transaction or via ScheduleSign transactions.
     * Defaults to false.
     * Setting this to false does not necessarily mean that the transaction will never execute at expiration_time.
     *  For Example - If the signature requirements for a Scheduled Transaction change via external means (e.g. CryptoUpdate)
     *  such that the Scheduled Transaction would be allowed to execute, it will do so autonomously at expiration_time, unless a
     *  ScheduleSign comes in to "poke" it and force it to go through immediately.
     * Note: This field is unused and forced to be unset until Long Term Scheduled Transactions are enabled. Before Long Term
     *       Scheduled Transactions are enabled, Scheduled Transactions will _never_ execute at expiration  - they will _only_
     *       execute during the initial ScheduleCreate transaction or via ScheduleSign transactions and will _always_
     *       expire at expiration_time.
     * 
* * bool wait_for_expiry = 13; * @param value The waitForExpiry to set. * @return This builder for chaining. */ public Builder setWaitForExpiry(boolean value) { waitForExpiry_ = value; onChanged(); return this; } /** *
     **
     * When set to true, the transaction will be evaluated for execution at expiration_time instead
     * of when all required signatures are received.
     * When set to false, the transaction will execute immediately after sufficient signatures are received
     * to sign the contained transaction. During the initial ScheduleCreate transaction or via ScheduleSign transactions.
     * Defaults to false.
     * Setting this to false does not necessarily mean that the transaction will never execute at expiration_time.
     *  For Example - If the signature requirements for a Scheduled Transaction change via external means (e.g. CryptoUpdate)
     *  such that the Scheduled Transaction would be allowed to execute, it will do so autonomously at expiration_time, unless a
     *  ScheduleSign comes in to "poke" it and force it to go through immediately.
     * Note: This field is unused and forced to be unset until Long Term Scheduled Transactions are enabled. Before Long Term
     *       Scheduled Transactions are enabled, Scheduled Transactions will _never_ execute at expiration  - they will _only_
     *       execute during the initial ScheduleCreate transaction or via ScheduleSign transactions and will _always_
     *       expire at expiration_time.
     * 
* * bool wait_for_expiry = 13; * @return This builder for chaining. */ public Builder clearWaitForExpiry() { waitForExpiry_ = false; onChanged(); return this; } @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:proto.ScheduleCreateTransactionBody) } // @@protoc_insertion_point(class_scope:proto.ScheduleCreateTransactionBody) private static final com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody DEFAULT_INSTANCE; static { DEFAULT_INSTANCE = new com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody(); } public static com.hederahashgraph.api.proto.java.ScheduleCreateTransactionBody getDefaultInstance() { return DEFAULT_INSTANCE; } private static final com.google.protobuf.Parser PARSER = new com.google.protobuf.AbstractParser() { @java.lang.Override public ScheduleCreateTransactionBody parsePartialFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry) throws com.google.protobuf.InvalidProtocolBufferException { return new ScheduleCreateTransactionBody(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.ScheduleCreateTransactionBody getDefaultInstanceForType() { return DEFAULT_INSTANCE; } }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy