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

state.recordcache.recordcache.proto Maven / Gradle / Ivy

The newest version!
syntax = "proto3";

package proto;

/*-
 * ‌
 * Hedera Network Services Protobuf
 * ​
 * Copyright (C) 2018 - 2023 Hedera Hashgraph, LLC
 * ​
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 * ‍
 */

import "basic_types.proto";
import "transaction_record.proto";
import "response_code.proto";

option java_package = "com.hederahashgraph.api.proto.java";
// <<>> This comment is special code for setting PBJ Compiler java package
option java_multiple_files = true;

/**
 * As transactions are handled and records and receipts are created, they are stored in state for a configured time
 * limit (perhaps, for example, 3 minutes). During this time window, any client can query the node and get the record
 * or receipt for the transaction. The TransactionRecordEntry is the object stored in state with this information.
 */
message TransactionRecordEntry {
    /**
     * The ID of the node that submitted the transaction to consensus. The ID is the ID of the node as known by the
     * address book. Valid node IDs are in the range 0..2^63-1, inclusive.
     */
    int64 node_id = 1;

    /**
     * The AccountID of the payer of the transaction. This may be the same as the account ID within the Transaction ID
     * of the record, or it may be the account ID of the node that submitted the transaction to consensus if the account
     * ID in the Transaction ID is not able to pay.
     */
    AccountID payer_account_id = 2;

    /**
     * The transaction record for the transaction.
     */
    TransactionRecord transaction_record = 3;
}
/**
 * As a single transaction is handled a receipt is created. It is stored in state for a configured time
 * limit (perhaps, for example, 3 minutes). During this time window, any client can query the node and get the
 * receipt for the transaction. The TransactionReceiptEntry is the object stored in state with this information.
 */
message TransactionReceiptEntry {
    /**
    * The ID of the node that submitted the transaction to consensus. The ID is the ID of the node as known by the
    * address book. Valid node IDs are in the range 0..2^63-1, inclusive.
    */
    uint64 node_id = 1;

    /**
     * The id of the submitted transaction.
     */
    TransactionID transaction_id = 2;

    /**
     * The resulting status of handling the transaction.
     */
    ResponseCodeEnum status = 3;
}
/**
 * As transactions are handled and receipts are created, they are stored in state for a configured time
 * limit (perhaps, for example, 3 minutes). During this time window, any client can query the node and get the
 * receipt for the transaction. The TransactionReceiptEntries is the object stored in state with this information.
 * This object contains a list of TransactionReceiptEntry objects.
 */
message TransactionReceiptEntries {
    repeated TransactionReceiptEntry entries = 1;
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy