com_hederahashgraph_api_proto_go

package
v1.0.0-beta.11083 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 8, 2023 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var File_state_consensus_topic_proto protoreflect.FileDescriptor

Functions

This section is empty.

Types

type Topic

type Topic struct {

	// *
	// The topic's unique entity number in the Merkle state.
	TopicNumber int64 `protobuf:"varint,1,opt,name=topic_number,json=topicNumber,proto3" json:"topic_number,omitempty"`
	// *
	// The number of messages sent to the topic.
	SequenceNumber int64 `protobuf:"varint,2,opt,name=sequence_number,json=sequenceNumber,proto3" json:"sequence_number,omitempty"`
	// *
	// The topic's consensus expiration time in seconds since the epoch.
	Expiry int64 `protobuf:"varint,3,opt,name=expiry,proto3" json:"expiry,omitempty"`
	// *
	// The number of seconds for which the topic will be automatically renewed
	// upon expiring (if it has a valid auto-renew account).
	AutoRenewPeriod int64 `protobuf:"varint,4,opt,name=auto_renew_period,json=autoRenewPeriod,proto3" json:"auto_renew_period,omitempty"`
	// *
	// The number of the account (if any) that the network will attempt to charge for the
	// topic's auto-renewal upon expiration.
	AutoRenewAccountNumber int64 `` /* 132-byte string literal not displayed */
	// *
	// Whether this topic is deleted.
	Deleted bool `protobuf:"varint,6,opt,name=deleted,proto3" json:"deleted,omitempty"`
	// *
	// When a topic is created, its running hash is initialized to 48 bytes of binary zeros.
	// For each submitted message, the topic's running hash is then updated to the output
	// of a particular SHA-384 digest whose input data include the previous running hash.
	//
	// See the TransactionReceipt.proto documentation for an exact description of the
	// data included in the SHA-384 digest used for the update.
	RunningHash []byte `protobuf:"bytes,7,opt,name=running_hash,json=runningHash,proto3" json:"running_hash,omitempty"`
	// *
	// An optional description of the topic with UTF-8 encoding up to 100 bytes.
	Memo string `protobuf:"bytes,8,opt,name=memo,proto3" json:"memo,omitempty"`
	// *
	// If present, enforces access control for updating or deleting the topic.
	// A topic without an admin key is immutable.
	AdminKey *services.Key `protobuf:"bytes,9,opt,name=admin_key,json=adminKey,proto3" json:"admin_key,omitempty"`
	// *
	// If present, enforces access control for message submission to the topic.
	SubmitKey *services.Key `protobuf:"bytes,10,opt,name=submit_key,json=submitKey,proto3" json:"submit_key,omitempty"`
	// contains filtered or unexported fields
}

* First-draft representation of a Hedera Consensus Service topic in the network Merkle tree.

As with all network entities, a topic has a unique entity number, which is usually given along with the network's shard and realm in the form of a shard.realm.number id.

A topic consists of just two pieces of data:

  1. The total number of messages sent to the topic; and,
  2. The running hash of all those messages.

It also has several metadata elements:

  1. A consensus expiration time in seconds since the epoch.
  2. (Optional) The number of an auto-renew account, in the same shard and realm as the topic, that has signed a transaction allowing the network to use its balance to automatically extend the topic's expiration time when it passes.
  3. The number of seconds the network should automatically extend the topic's expiration by, if the topic has a valid auto-renew account, and is not deleted upon expiration.
  4. A boolean marking if the topic has been deleted.
  5. A memo string whose UTF-8 encoding is at most 100 bytes.
  6. (Optional) An admin key whose signature must be active for the topic's metadata to be updated.
  7. (Optional) A submit key whose signature must be active for the topic to receive a message.

func (*Topic) Descriptor deprecated

func (*Topic) Descriptor() ([]byte, []int)

Deprecated: Use Topic.ProtoReflect.Descriptor instead.

func (*Topic) GetAdminKey

func (x *Topic) GetAdminKey() *services.Key

func (*Topic) GetAutoRenewAccountNumber

func (x *Topic) GetAutoRenewAccountNumber() int64

func (*Topic) GetAutoRenewPeriod

func (x *Topic) GetAutoRenewPeriod() int64

func (*Topic) GetDeleted

func (x *Topic) GetDeleted() bool

func (*Topic) GetExpiry

func (x *Topic) GetExpiry() int64

func (*Topic) GetMemo

func (x *Topic) GetMemo() string

func (*Topic) GetRunningHash

func (x *Topic) GetRunningHash() []byte

func (*Topic) GetSequenceNumber

func (x *Topic) GetSequenceNumber() int64

func (*Topic) GetSubmitKey

func (x *Topic) GetSubmitKey() *services.Key

func (*Topic) GetTopicNumber

func (x *Topic) GetTopicNumber() int64

func (*Topic) ProtoMessage

func (*Topic) ProtoMessage()

func (*Topic) ProtoReflect

func (x *Topic) ProtoReflect() protoreflect.Message

func (*Topic) Reset

func (x *Topic) Reset()

func (*Topic) String

func (x *Topic) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL