Table of Contents

Class AccountInfo

Namespace
Concordium.Grpc.V2
Assembly
Concordium.Sdk.dll

Information about the account at a particular point in time.

public sealed class AccountInfo : IMessage<AccountInfo>, IEquatable<AccountInfo>, IDeepCloneable<AccountInfo>, IBufferMessage, IMessage
Inheritance
AccountInfo
Implements
IMessage<AccountInfo>
IDeepCloneable<AccountInfo>
IBufferMessage
IMessage
Inherited Members

Constructors

AccountInfo()

public AccountInfo()

AccountInfo(AccountInfo)

public AccountInfo(AccountInfo other)

Parameters

other AccountInfo

Fields

AddressFieldNumber

Field number for the "address" field.

public const int AddressFieldNumber = 10

Field Value

int

AmountFieldNumber

Field number for the "amount" field.

public const int AmountFieldNumber = 2

Field Value

int

AvailableBalanceFieldNumber

Field number for the "available_balance" field.

public const int AvailableBalanceFieldNumber = 12

Field Value

int

CooldownsFieldNumber

Field number for the "cooldowns" field.

public const int CooldownsFieldNumber = 11

Field Value

int

CredsFieldNumber

Field number for the "creds" field.

public const int CredsFieldNumber = 4

Field Value

int

EncryptedBalanceFieldNumber

Field number for the "encrypted_balance" field.

public const int EncryptedBalanceFieldNumber = 6

Field Value

int

EncryptionKeyFieldNumber

Field number for the "encryption_key" field.

public const int EncryptionKeyFieldNumber = 7

Field Value

int

IndexFieldNumber

Field number for the "index" field.

public const int IndexFieldNumber = 8

Field Value

int

ScheduleFieldNumber

Field number for the "schedule" field.

public const int ScheduleFieldNumber = 3

Field Value

int

SequenceNumberFieldNumber

Field number for the "sequence_number" field.

public const int SequenceNumberFieldNumber = 1

Field Value

int

StakeFieldNumber

Field number for the "stake" field.

public const int StakeFieldNumber = 9

Field Value

int

ThresholdFieldNumber

Field number for the "threshold" field.

public const int ThresholdFieldNumber = 5

Field Value

int

Properties

Address

Canonical address of the account. This is derived from the first credential that created the account.

public AccountAddress Address { get; set; }

Property Value

AccountAddress

Amount

Current (unencrypted) balance of the account.

public Amount Amount { get; set; }

Property Value

Amount

AvailableBalance

The available (unencrypted) balance of the account (i.e. that can be transferred or used to pay for transactions). This is the balance minus the locked amount. The locked amount is the maximum of the amount in the release schedule and the total amount that is actively staked or in cooldown (inactive stake). This was introduced in node version 7.0.

public Amount AvailableBalance { get; set; }

Property Value

Amount

Cooldowns

The stake on the account that is in cooldown. There can be multiple amounts in cooldown that expire at different times. This was introduced in protocol version 7, and so is not present in earlier protocol versions.

public RepeatedField<Cooldown> Cooldowns { get; }

Property Value

RepeatedField<Cooldown>

Creds

Map of all currently active credentials on the account. This includes public keys that can sign for the given credentials, as well as any revealed attributes. This map always contains a credential with index 0.

public MapField<uint, AccountCredential> Creds { get; }

Property Value

MapField<uint, AccountCredential>

Descriptor

public static MessageDescriptor Descriptor { get; }

Property Value

MessageDescriptor

EncryptedBalance

The encrypted balance of the account.

public EncryptedBalance EncryptedBalance { get; set; }

Property Value

EncryptedBalance

EncryptionKey

The public key for sending encrypted balances to the account.

public EncryptionKey EncryptionKey { get; set; }

Property Value

EncryptionKey

Index

Internal index of the account. Accounts on the chain get sequential indices. These should generally not be used outside of the chain, the account address is meant to be used to refer to accounts, however the account index serves the role of the baker id, if the account is a baker. Hence it is exposed here as well.

public AccountIndex Index { get; set; }

Property Value

AccountIndex

Parser

public static MessageParser<AccountInfo> Parser { get; }

Property Value

MessageParser<AccountInfo>

Schedule

Release schedule for any locked up amount. This could be an empty release schedule.

public ReleaseSchedule Schedule { get; set; }

Property Value

ReleaseSchedule

SequenceNumber

Next sequence number to be used for transactions signed from this account.

public SequenceNumber SequenceNumber { get; set; }

Property Value

SequenceNumber

Stake

Present if the account is a baker or delegator. In that case it is the information about the baker or delegator.

public AccountStakingInfo Stake { get; set; }

Property Value

AccountStakingInfo

Threshold

Lower bound on how many credentials must sign any given transaction from this account.

public AccountThreshold Threshold { get; set; }

Property Value

AccountThreshold

Methods

CalculateSize()

Calculates the size of this message in Protocol Buffer wire format, in bytes.

public int CalculateSize()

Returns

int

The number of bytes required to write this message to a coded output stream.

Clone()

Creates a deep clone of this object.

public AccountInfo Clone()

Returns

AccountInfo

A deep clone of this object.

Equals(AccountInfo)

Indicates whether the current object is equal to another object of the same type.

public bool Equals(AccountInfo other)

Parameters

other AccountInfo

An object to compare with this object.

Returns

bool

true if the current object is equal to the other parameter; otherwise, false.

Equals(object)

Determines whether the specified object is equal to the current object.

public override bool Equals(object other)

Parameters

other object

Returns

bool

true if the specified object is equal to the current object; otherwise, false.

GetHashCode()

Serves as the default hash function.

public override int GetHashCode()

Returns

int

A hash code for the current object.

MergeFrom(AccountInfo)

Merges the given message into this one.

public void MergeFrom(AccountInfo other)

Parameters

other AccountInfo

Remarks

See the user guide for precise merge semantics.

MergeFrom(CodedInputStream)

Merges the data from the specified coded input stream with the current message.

public void MergeFrom(CodedInputStream input)

Parameters

input CodedInputStream

Remarks

See the user guide for precise merge semantics.

ToString()

Returns a string that represents the current object.

public override string ToString()

Returns

string

A string that represents the current object.

WriteTo(CodedOutputStream)

Writes the data to the given coded output stream.

public void WriteTo(CodedOutputStream output)

Parameters

output CodedOutputStream

Coded output stream to write the data to. Must not be null.