Skip to content

Commit

Permalink
Sync from develop for v0.16.0 tag (#59)
Browse files Browse the repository at this point in the history
* Reference node properties controlling HTS behavior

Signed-off-by: tinker-michaelj <[email protected]>

* Again clarify use of master

Signed-off-by: tinker-michaelj <[email protected]>

* Update from head of schedule-develop in hashgraph/hedera-services (#2)

Signed-off-by: tinker-michaelj <[email protected]>

* Standardize memos for non-schedule entities (#3)

* Standardize memos for non-schedule entities

Signed-off-by: tinker-michaelj <[email protected]>

* Fix typo in field number

Signed-off-by: tinker-michaelj <[email protected]>

* Use google.protobuf.StringValue for new memo fields

Signed-off-by: tinker-michaelj <[email protected]>

* Comment on deprecated memoField choice

Signed-off-by: tinker-michaelj <[email protected]>

* Port schedule txn comments (#5)

* Port schedule txn comments

Signed-off-by: tinker-michaelj <[email protected]>

* Add further comments

Signed-off-by: tinker-michaelj <[email protected]>

* Apply the same changes to hedera-protobufs repo. (#4)

Signed-off-by: ljianghedera <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* Separate messages used for balances proto under hedera/streams (#6)

* Separate messages used for balances proto under hedera/streams

Signed-off-by: tinker-michaelj <[email protected]>

* Restructure proto directories

Signed-off-by: tinker-michaelj <[email protected]>

* Change java_package for AccountBalanceFile.proto messages

Signed-off-by: tinker-michaelj <[email protected]>

* Extract TokenBalance(s) to BasicTypes

Signed-off-by: tinker-michaelj <[email protected]>

* Include decimals in queries of token/account balances and relationships (#8)

Signed-off-by: tinker-michaelj <[email protected]>

* Include Leemon's edits from Services issue #974 (#10)

Signed-off-by: tinker-michaelj <[email protected]>

* Add scheduled transaction id to TransactionReceipt + ScheduleGetInfo types (#12)

* Prepare to tag 0.12.0 release (#11)

* Reference node properties controlling HTS behavior

Signed-off-by: tinker-michaelj <[email protected]>

* Again clarify use of master

Signed-off-by: tinker-michaelj <[email protected]>

* Update from head of schedule-develop in hashgraph/hedera-services (#2)

Signed-off-by: tinker-michaelj <[email protected]>

* Standardize memos for non-schedule entities (#3)

* Standardize memos for non-schedule entities

Signed-off-by: tinker-michaelj <[email protected]>

* Fix typo in field number

Signed-off-by: tinker-michaelj <[email protected]>

* Use google.protobuf.StringValue for new memo fields

Signed-off-by: tinker-michaelj <[email protected]>

* Comment on deprecated memoField choice

Signed-off-by: tinker-michaelj <[email protected]>

* Port schedule txn comments (#5)

* Port schedule txn comments

Signed-off-by: tinker-michaelj <[email protected]>

* Add further comments

Signed-off-by: tinker-michaelj <[email protected]>

* Apply the same changes to hedera-protobufs repo. (#4)

Signed-off-by: ljianghedera <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* Separate messages used for balances proto under hedera/streams (#6)

* Separate messages used for balances proto under hedera/streams

Signed-off-by: tinker-michaelj <[email protected]>

* Restructure proto directories

Signed-off-by: tinker-michaelj <[email protected]>

* Change java_package for AccountBalanceFile.proto messages

Signed-off-by: tinker-michaelj <[email protected]>

* Extract TokenBalance(s) to BasicTypes

Signed-off-by: tinker-michaelj <[email protected]>

* Include decimals in queries of token/account balances and relationships (#8)

Signed-off-by: tinker-michaelj <[email protected]>

* Include Leemon's edits from Services issue #974 (#10)

Signed-off-by: tinker-michaelj <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* Update README.md

* Add scheduledTransactionID fields to TransactionReceipt and ScheduleGetInfo

Signed-off-by: tinker-michaelj <[email protected]>

* Update README

Signed-off-by: tinker-michaelj <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* 00017 d hcs message size (#19)

* Add response code for Hcs message size limit.

Signed-off-by: ljianghedera <[email protected]>

* Add the response code for HCS message too large.

Signed-off-by: ljianghedera <[email protected]>

* Update protobufs to satisfy revised scheduled txns spec (#15)

* Update protobufs to satisfy revised scheduled txns spec

Signed-off-by: tinker-michaelj <[email protected]>

* Improve comment readability

Signed-off-by: tinker-michaelj <[email protected]>

* Make explicit mention of scheduling.whitelist

Signed-off-by: tinker-michaelj <[email protected]>

* Incorporate reviewer feedback

Signed-off-by: tinker-michaelj <[email protected]>

* Standardize on payerAccountID

Signed-off-by: tinker-michaelj <[email protected]>

* Add scheduledTransactionID to ScheduleInfo

Signed-off-by: tinker-michaelj <[email protected]>

* Clarify effects of schedule deletion

Signed-off-by: tinker-michaelj <[email protected]>

* Include expiration time in getScheduleInfo response

Signed-off-by: tinker-michaelj <[email protected]>

* Change now-obsolete UNPARSEABLE_SCHEDULED_TRANSACTION response code to SCHEDULED_TRANSACTION_NOT_IN_WHITELIST; remove UNSCHEDULABLE_TRANSACTION

Signed-off-by: tinker-michaelj <[email protected]>

* Remove unneeded imports

Signed-off-by: tinker-michaelj <[email protected]>

* Replace deleted/executed flags with consensus timestamps

Signed-off-by: tinker-michaelj <[email protected]>

* Update info on ScheduleCreate receipt on duplicate creation

Signed-off-by: tinker-michaelj <[email protected]>

* Incorporate reviewer feedback

Signed-off-by: tinker-michaelj <[email protected]>

* Use oneof to enforce mutual exclusion of schedule deletion and execution

Signed-off-by: tinker-michaelj <[email protected]>

* Use lower_snake_case for field names in oneof to ease transition to standard naming convention

Signed-off-by: tinker-michaelj <[email protected]>

* Redirect to ResponseCode doc section from Schedule* ops

Signed-off-by: tinker-michaelj <[email protected]>

* Add ThrottleDefinitions types (#23)

* Create ThrottleDefinitions message

Signed-off-by: tinker-michaelj <[email protected]>

* Add throttle-specific response codes

Signed-off-by: tinker-michaelj <[email protected]>

* Add more general response codes for throttle defs

Signed-off-by: tinker-michaelj <[email protected]>

* Add comments to the throttle types

Signed-off-by: tinker-michaelj <[email protected]>

* Clarify some comments

Signed-off-by: tinker-michaelj <[email protected]>

* Update to milliOpsPerSec/burstPeriodMs

Signed-off-by: tinker-michaelj <[email protected]>

* Fix typo

Signed-off-by: tinker-michaelj <[email protected]>

* Be more concise

Signed-off-by: tinker-michaelj <[email protected]>

* Be explicit about milli-ops

Signed-off-by: tinker-michaelj <[email protected]>

* Emphasize only ed25519 keys are supported (#26)

Signed-off-by: tinker-michaelj <[email protected]>

* Revise address book types to 0.13.0 standard (#27)

* Update to final version of address book messages

Signed-off-by: tinker-michaelj <[email protected]>

* Align with issue 750 consensus format

Signed-off-by: tinker-michaelj <[email protected]>

* Change ServiceEndpoint types

Signed-off-by: tinker-michaelj <[email protected]>

* Match comments from issue

Signed-off-by: tinker-michaelj <[email protected]>

* Update comment

Signed-off-by: tinker-michaelj <[email protected]>

* Add details

Signed-off-by: tinker-michaelj <[email protected]>

* Specify fallback use of deprecated fields

Signed-off-by: tinker-michaelj <[email protected]>

* Minor revision

Signed-off-by: tinker-michaelj <[email protected]>

* Add full semver meta to SemanticVersion (#33)

* Add full semver meta to SemanticVersion

Signed-off-by: tinker-michaelj <[email protected]>

* Add top-level comment on SemanticVersion

Signed-off-by: tinker-michaelj <[email protected]>

* Abbreviate SemanticVersion optional fields

Signed-off-by: tinker-michaelj <[email protected]>

* Add ACCOUNT_EXPIRED_AND_PENDING_REMOVAL response code (#35)

Signed-off-by: tinker-michaelj <[email protected]>

* Feature: NFT Tokens (#37)

* feat(tokens): nfts

Signed-off-by: failfmi <[email protected]>

* feat: multiple fee data per hedera functionality; sub type distinguishing different fee data

Signed-off-by: failfmi <[email protected]>

* deprecate feedata property

Signed-off-by: Daniel Ivanov <[email protected]>

* style: rename repeated fee data field

Signed-off-by: failfmi <[email protected]>

* Error ResponseCodes

Signed-off-by: Georgi Yazovaliyski <[email protected]>

Co-authored-by: Daniel Ivanov <[email protected]>
Co-authored-by: Georgi Yazovaliyski <[email protected]>

* Sync develop with main (#38)

* Prepare for 0.13.0 tag (#28)

* Reference node properties controlling HTS behavior

Signed-off-by: tinker-michaelj <[email protected]>

* Again clarify use of master

Signed-off-by: tinker-michaelj <[email protected]>

* Update from head of schedule-develop in hashgraph/hedera-services (#2)

Signed-off-by: tinker-michaelj <[email protected]>

* Standardize memos for non-schedule entities (#3)

* Standardize memos for non-schedule entities

Signed-off-by: tinker-michaelj <[email protected]>

* Fix typo in field number

Signed-off-by: tinker-michaelj <[email protected]>

* Use google.protobuf.StringValue for new memo fields

Signed-off-by: tinker-michaelj <[email protected]>

* Comment on deprecated memoField choice

Signed-off-by: tinker-michaelj <[email protected]>

* Port schedule txn comments (#5)

* Port schedule txn comments

Signed-off-by: tinker-michaelj <[email protected]>

* Add further comments

Signed-off-by: tinker-michaelj <[email protected]>

* Apply the same changes to hedera-protobufs repo. (#4)

Signed-off-by: ljianghedera <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* Separate messages used for balances proto under hedera/streams (#6)

* Separate messages used for balances proto under hedera/streams

Signed-off-by: tinker-michaelj <[email protected]>

* Restructure proto directories

Signed-off-by: tinker-michaelj <[email protected]>

* Change java_package for AccountBalanceFile.proto messages

Signed-off-by: tinker-michaelj <[email protected]>

* Extract TokenBalance(s) to BasicTypes

Signed-off-by: tinker-michaelj <[email protected]>

* Include decimals in queries of token/account balances and relationships (#8)

Signed-off-by: tinker-michaelj <[email protected]>

* Include Leemon's edits from Services issue #974 (#10)

Signed-off-by: tinker-michaelj <[email protected]>

* Add scheduled transaction id to TransactionReceipt + ScheduleGetInfo types (#12)

* Prepare to tag 0.12.0 release (#11)

* Reference node properties controlling HTS behavior

Signed-off-by: tinker-michaelj <[email protected]>

* Again clarify use of master

Signed-off-by: tinker-michaelj <[email protected]>

* Update from head of schedule-develop in hashgraph/hedera-services (#2)

Signed-off-by: tinker-michaelj <[email protected]>

* Standardize memos for non-schedule entities (#3)

* Standardize memos for non-schedule entities

Signed-off-by: tinker-michaelj <[email protected]>

* Fix typo in field number

Signed-off-by: tinker-michaelj <[email protected]>

* Use google.protobuf.StringValue for new memo fields

Signed-off-by: tinker-michaelj <[email protected]>

* Comment on deprecated memoField choice

Signed-off-by: tinker-michaelj <[email protected]>

* Port schedule txn comments (#5)

* Port schedule txn comments

Signed-off-by: tinker-michaelj <[email protected]>

* Add further comments

Signed-off-by: tinker-michaelj <[email protected]>

* Apply the same changes to hedera-protobufs repo. (#4)

Signed-off-by: ljianghedera <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* Separate messages used for balances proto under hedera/streams (#6)

* Separate messages used for balances proto under hedera/streams

Signed-off-by: tinker-michaelj <[email protected]>

* Restructure proto directories

Signed-off-by: tinker-michaelj <[email protected]>

* Change java_package for AccountBalanceFile.proto messages

Signed-off-by: tinker-michaelj <[email protected]>

* Extract TokenBalance(s) to BasicTypes

Signed-off-by: tinker-michaelj <[email protected]>

* Include decimals in queries of token/account balances and relationships (#8)

Signed-off-by: tinker-michaelj <[email protected]>

* Include Leemon's edits from Services issue #974 (#10)

Signed-off-by: tinker-michaelj <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* Update README.md

* Add scheduledTransactionID fields to TransactionReceipt and ScheduleGetInfo

Signed-off-by: tinker-michaelj <[email protected]>

* Update README

Signed-off-by: tinker-michaelj <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* 00017 d hcs message size (#19)

* Add response code for Hcs message size limit.

Signed-off-by: ljianghedera <[email protected]>

* Add the response code for HCS message too large.

Signed-off-by: ljianghedera <[email protected]>

* Update protobufs to satisfy revised scheduled txns spec (#15)

* Update protobufs to satisfy revised scheduled txns spec

Signed-off-by: tinker-michaelj <[email protected]>

* Improve comment readability

Signed-off-by: tinker-michaelj <[email protected]>

* Make explicit mention of scheduling.whitelist

Signed-off-by: tinker-michaelj <[email protected]>

* Incorporate reviewer feedback

Signed-off-by: tinker-michaelj <[email protected]>

* Standardize on payerAccountID

Signed-off-by: tinker-michaelj <[email protected]>

* Add scheduledTransactionID to ScheduleInfo

Signed-off-by: tinker-michaelj <[email protected]>

* Clarify effects of schedule deletion

Signed-off-by: tinker-michaelj <[email protected]>

* Include expiration time in getScheduleInfo response

Signed-off-by: tinker-michaelj <[email protected]>

* Change now-obsolete UNPARSEABLE_SCHEDULED_TRANSACTION response code to SCHEDULED_TRANSACTION_NOT_IN_WHITELIST; remove UNSCHEDULABLE_TRANSACTION

Signed-off-by: tinker-michaelj <[email protected]>

* Remove unneeded imports

Signed-off-by: tinker-michaelj <[email protected]>

* Replace deleted/executed flags with consensus timestamps

Signed-off-by: tinker-michaelj <[email protected]>

* Update info on ScheduleCreate receipt on duplicate creation

Signed-off-by: tinker-michaelj <[email protected]>

* Incorporate reviewer feedback

Signed-off-by: tinker-michaelj <[email protected]>

* Use oneof to enforce mutual exclusion of schedule deletion and execution

Signed-off-by: tinker-michaelj <[email protected]>

* Use lower_snake_case for field names in oneof to ease transition to standard naming convention

Signed-off-by: tinker-michaelj <[email protected]>

* Redirect to ResponseCode doc section from Schedule* ops

Signed-off-by: tinker-michaelj <[email protected]>

* Add ThrottleDefinitions types (#23)

* Create ThrottleDefinitions message

Signed-off-by: tinker-michaelj <[email protected]>

* Add throttle-specific response codes

Signed-off-by: tinker-michaelj <[email protected]>

* Add more general response codes for throttle defs

Signed-off-by: tinker-michaelj <[email protected]>

* Add comments to the throttle types

Signed-off-by: tinker-michaelj <[email protected]>

* Clarify some comments

Signed-off-by: tinker-michaelj <[email protected]>

* Update to milliOpsPerSec/burstPeriodMs

Signed-off-by: tinker-michaelj <[email protected]>

* Fix typo

Signed-off-by: tinker-michaelj <[email protected]>

* Be more concise

Signed-off-by: tinker-michaelj <[email protected]>

* Be explicit about milli-ops

Signed-off-by: tinker-michaelj <[email protected]>

* Emphasize only ed25519 keys are supported (#26)

Signed-off-by: tinker-michaelj <[email protected]>

* Revise address book types to 0.13.0 standard (#27)

* Update to final version of address book messages

Signed-off-by: tinker-michaelj <[email protected]>

* Align with issue 750 consensus format

Signed-off-by: tinker-michaelj <[email protected]>

* Change ServiceEndpoint types

Signed-off-by: tinker-michaelj <[email protected]>

* Match comments from issue

Signed-off-by: tinker-michaelj <[email protected]>

* Update comment

Signed-off-by: tinker-michaelj <[email protected]>

* Add details

Signed-off-by: tinker-michaelj <[email protected]>

* Specify fallback use of deprecated fields

Signed-off-by: tinker-michaelj <[email protected]>

* Minor revision

Signed-off-by: tinker-michaelj <[email protected]>

Co-authored-by: ljianghedera <[email protected]>
Co-authored-by: ljianghedera <[email protected]>

* Key list (#34)

* Update BasicTypes.proto

* Update BasicTypes.proto

* Update FileDelete.proto

* Update FileCreate.proto

* Update FileAppend.proto

* Update FileUpdate.proto

* Update BasicTypes.proto

* Update FileCreate.proto

* Update BasicTypes.proto

* Update FileCreate.proto

* Update FileUpdate.proto

* Update FileAppend.proto

* Update FileDelete.proto

* Update BasicTypes.proto

* Update BasicTypes.proto

* Update BasicTypes.proto

* Update BasicTypes.proto

* Update BasicTypes.proto

* Update FileAppend.proto

* Update FileCreate.proto

* Update FileDelete.proto

* Update FileUpdate.proto

* Update FileUpdate.proto

* Update FileUpdate.proto

* Update BasicTypes.proto

* Update BasicTypes.proto

* Update BasicTypes.proto

* Update FileCreate.proto

Co-authored-by: ljianghedera <[email protected]>
Co-authored-by: ljianghedera <[email protected]>
Co-authored-by: SimiHunjan <[email protected]>

* HIP 18 (#42)

* Sync to main in preparation for 0.15.0 tag (#39)

* Reference node properties controlling HTS behavior

Signed-off-by: tinker-michaelj <[email protected]>

* Again clarify use of master

Signed-off-by: tinker-michaelj <[email protected]>

* Update from head of schedule-develop in hashgraph/hedera-services (#2)

Signed-off-by: tinker-michaelj <[email protected]>

* Standardize memos for non-schedule entities (#3)

* Standardize memos for non-schedule entities

Signed-off-by: tinker-michaelj <[email protected]>

* Fix typo in field number

Signed-off-by: tinker-michaelj <[email protected]>

* Use google.protobuf.StringValue for new memo fields

Signed-off-by: tinker-michaelj <[email protected]>

* Comment on deprecated memoField choice

Signed-off-by: tinker-michaelj <[email protected]>

* Port schedule txn comments (#5)

* Port schedule txn comments

Signed-off-by: tinker-michaelj <[email protected]>

* Add further comments

Signed-off-by: tinker-michaelj <[email protected]>

* Apply the same changes to hedera-protobufs repo. (#4)

Signed-off-by: ljianghedera <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* Separate messages used for balances proto under hedera/streams (#6)

* Separate messages used for balances proto under hedera/streams

Signed-off-by: tinker-michaelj <[email protected]>

* Restructure proto directories

Signed-off-by: tinker-michaelj <[email protected]>

* Change java_package for AccountBalanceFile.proto messages

Signed-off-by: tinker-michaelj <[email protected]>

* Extract TokenBalance(s) to BasicTypes

Signed-off-by: tinker-michaelj <[email protected]>

* Include decimals in queries of token/account balances and relationships (#8)

Signed-off-by: tinker-michaelj <[email protected]>

* Include Leemon's edits from Services issue #974 (#10)

Signed-off-by: tinker-michaelj <[email protected]>

* Add scheduled transaction id to TransactionReceipt + ScheduleGetInfo types (#12)

* Prepare to tag 0.12.0 release (#11)

* Reference node properties controlling HTS behavior

Signed-off-by: tinker-michaelj <[email protected]>

* Again clarify use of master

Signed-off-by: tinker-michaelj <[email protected]>

* Update from head of schedule-develop in hashgraph/hedera-services (#2)

Signed-off-by: tinker-michaelj <[email protected]>

* Standardize memos for non-schedule entities (#3)

* Standardize memos for non-schedule entities

Signed-off-by: tinker-michaelj <[email protected]>

* Fix typo in field number

Signed-off-by: tinker-michaelj <[email protected]>

* Use google.protobuf.StringValue for new memo fields

Signed-off-by: tinker-michaelj <[email protected]>

* Comment on deprecated memoField choice

Signed-off-by: tinker-michaelj <[email protected]>

* Port schedule txn comments (#5)

* Port schedule txn comments

Signed-off-by: tinker-michaelj <[email protected]>

* Add further comments

Signed-off-by: tinker-michaelj <[email protected]>

* Apply the same changes to hedera-protobufs repo. (#4)

Signed-off-by: ljianghedera <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* Separate messages used for balances proto under hedera/streams (#6)

* Separate messages used for balances proto under hedera/streams

Signed-off-by: tinker-michaelj <[email protected]>

* Restructure proto directories

Signed-off-by: tinker-michaelj <[email protected]>

* Change java_package for AccountBalanceFile.proto messages

Signed-off-by: tinker-michaelj <[email protected]>

* Extract TokenBalance(s) to BasicTypes

Signed-off-by: tinker-michaelj <[email protected]>

* Include decimals in queries of token/account balances and relationships (#8)

Signed-off-by: tinker-michaelj <[email protected]>

* Include Leemon's edits from Services issue #974 (#10)

Signed-off-by: tinker-michaelj <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* Update README.md

* Add scheduledTransactionID fields to TransactionReceipt and ScheduleGetInfo

Signed-off-by: tinker-michaelj <[email protected]>

* Update README

Signed-off-by: tinker-michaelj <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* 00017 d hcs message size (#19)

* Add response code for Hcs message size limit.

Signed-off-by: ljianghedera <[email protected]>

* Add the response code for HCS message too large.

Signed-off-by: ljianghedera <[email protected]>

* Update protobufs to satisfy revised scheduled txns spec (#15)

* Update protobufs to satisfy revised scheduled txns spec

Signed-off-by: tinker-michaelj <[email protected]>

* Improve comment readability

Signed-off-by: tinker-michaelj <[email protected]>

* Make explicit mention of scheduling.whitelist

Signed-off-by: tinker-michaelj <[email protected]>

* Incorporate reviewer feedback

Signed-off-by: tinker-michaelj <[email protected]>

* Standardize on payerAccountID

Signed-off-by: tinker-michaelj <[email protected]>

* Add scheduledTransactionID to ScheduleInfo

Signed-off-by: tinker-michaelj <[email protected]>

* Clarify effects of schedule deletion

Signed-off-by: tinker-michaelj <[email protected]>

* Include expiration time in getScheduleInfo response

Signed-off-by: tinker-michaelj <[email protected]>

* Change now-obsolete UNPARSEABLE_SCHEDULED_TRANSACTION response code to SCHEDULED_TRANSACTION_NOT_IN_WHITELIST; remove UNSCHEDULABLE_TRANSACTION

Signed-off-by: tinker-michaelj <[email protected]>

* Remove unneeded imports

Signed-off-by: tinker-michaelj <[email protected]>

* Replace deleted/executed flags with consensus timestamps

Signed-off-by: tinker-michaelj <[email protected]>

* Update info on ScheduleCreate receipt on duplicate creation

Signed-off-by: tinker-michaelj <[email protected]>

* Incorporate reviewer feedback

Signed-off-by: tinker-michaelj <[email protected]>

* Use oneof to enforce mutual exclusion of schedule deletion and execution

Signed-off-by: tinker-michaelj <[email protected]>

* Use lower_snake_case for field names in oneof to ease transition to standard naming convention

Signed-off-by: tinker-michaelj <[email protected]>

* Redirect to ResponseCode doc section from Schedule* ops

Signed-off-by: tinker-michaelj <[email protected]>

* Add ThrottleDefinitions types (#23)

* Create ThrottleDefinitions message

Signed-off-by: tinker-michaelj <[email protected]>

* Add throttle-specific response codes

Signed-off-by: tinker-michaelj <[email protected]>

* Add more general response codes for throttle defs

Signed-off-by: tinker-michaelj <[email protected]>

* Add comments to the throttle types

Signed-off-by: tinker-michaelj <[email protected]>

* Clarify some comments

Signed-off-by: tinker-michaelj <[email protected]>

* Update to milliOpsPerSec/burstPeriodMs

Signed-off-by: tinker-michaelj <[email protected]>

* Fix typo

Signed-off-by: tinker-michaelj <[email protected]>

* Be more concise

Signed-off-by: tinker-michaelj <[email protected]>

* Be explicit about milli-ops

Signed-off-by: tinker-michaelj <[email protected]>

* Emphasize only ed25519 keys are supported (#26)

Signed-off-by: tinker-michaelj <[email protected]>

* Revise address book types to 0.13.0 standard (#27)

* Update to final version of address book messages

Signed-off-by: tinker-michaelj <[email protected]>

* Align with issue 750 consensus format

Signed-off-by: tinker-michaelj <[email protected]>

* Change ServiceEndpoint types

Signed-off-by: tinker-michaelj <[email protected]>

* Match comments from issue

Signed-off-by: tinker-michaelj <[email protected]>

* Update comment

Signed-off-by: tinker-michaelj <[email protected]>

* Add details

Signed-off-by: tinker-michaelj <[email protected]>

* Specify fallback use of deprecated fields

Signed-off-by: tinker-michaelj <[email protected]>

* Minor revision

Signed-off-by: tinker-michaelj <[email protected]>

* Add full semver meta to SemanticVersion (#33)

* Add full semver meta to SemanticVersion

Signed-off-by: tinker-michaelj <[email protected]>

* Add top-level comment on SemanticVersion

Signed-off-by: tinker-michaelj <[email protected]>

* Abbreviate SemanticVersion optional fields

Signed-off-by: tinker-michaelj <[email protected]>

* Add ACCOUNT_EXPIRED_AND_PENDING_REMOVAL response code (#35)

Signed-off-by: tinker-michaelj <[email protected]>

* Feature: NFT Tokens (#37)

* feat(tokens): nfts

Signed-off-by: failfmi <[email protected]>

* feat: multiple fee data per hedera functionality; sub type distinguishing different fee data

Signed-off-by: failfmi <[email protected]>

* deprecate feedata property

Signed-off-by: Daniel Ivanov <[email protected]>

* style: rename repeated fee data field

Signed-off-by: failfmi <[email protected]>

* Error ResponseCodes

Signed-off-by: Georgi Yazovaliyski <[email protected]>

Co-authored-by: Daniel Ivanov <[email protected]>
Co-authored-by: Georgi Yazovaliyski <[email protected]>

* Sync develop with main (#38)

* Prepare for 0.13.0 tag (#28)

* Reference node properties controlling HTS behavior

Signed-off-by: tinker-michaelj <[email protected]>

* Again clarify use of master

Signed-off-by: tinker-michaelj <[email protected]>

* Update from head of schedule-develop in hashgraph/hedera-services (#2)

Signed-off-by: tinker-michaelj <[email protected]>

* Standardize memos for non-schedule entities (#3)

* Standardize memos for non-schedule entities

Signed-off-by: tinker-michaelj <[email protected]>

* Fix typo in field number

Signed-off-by: tinker-michaelj <[email protected]>

* Use google.protobuf.StringValue for new memo fields

Signed-off-by: tinker-michaelj <[email protected]>

* Comment on deprecated memoField choice

Signed-off-by: tinker-michaelj <[email protected]>

* Port schedule txn comments (#5)

* Port schedule txn comments

Signed-off-by: tinker-michaelj <[email protected]>

* Add further comments

Signed-off-by: tinker-michaelj <[email protected]>

* Apply the same changes to hedera-protobufs repo. (#4)

Signed-off-by: ljianghedera <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* Separate messages used for balances proto under hedera/streams (#6)

* Separate messages used for balances proto under hedera/streams

Signed-off-by: tinker-michaelj <[email protected]>

* Restructure proto directories

Signed-off-by: tinker-michaelj <[email protected]>

* Change java_package for AccountBalanceFile.proto messages

Signed-off-by: tinker-michaelj <[email protected]>

* Extract TokenBalance(s) to BasicTypes

Signed-off-by: tinker-michaelj <[email protected]>

* Include decimals in queries of token/account balances and relationships (#8)

Signed-off-by: tinker-michaelj <[email protected]>

* Include Leemon's edits from Services issue #974 (#10)

Signed-off-by: tinker-michaelj <[email protected]>

* Add scheduled transaction id to TransactionReceipt + ScheduleGetInfo types (#12)

* Prepare to tag 0.12.0 release (#11)

* Reference node properties controlling HTS behavior

Signed-off-by: tinker-michaelj <[email protected]>

* Again clarify use of master

Signed-off-by: tinker-michaelj <[email protected]>

* Update from head of schedule-develop in hashgraph/hedera-services (#2)

Signed-off-by: tinker-michaelj <[email protected]>

* Standardize memos for non-schedule entities (#3)

* Standardize memos for non-schedule entities

Signed-off-by: tinker-michaelj <[email protected]>

* Fix typo in field number

Signed-off-by: tinker-michaelj <[email protected]>

* Use google.protobuf.StringValue for new memo fields

Signed-off-by: tinker-michaelj <[email protected]>

* Comment on deprecated memoField choice

Signed-off-by: tinker-michaelj <[email protected]>

* Port schedule txn comments (#5)

* Port schedule txn comments

Signed-off-by: tinker-michaelj <[email protected]>

* Add further comments

Signed-off-by: tinker-michaelj <[email protected]>

* Apply the same changes to hedera-protobufs repo. (#4)

Signed-off-by: ljianghedera <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* Separate messages used for balances proto under hedera/streams (#6)

* Separate messages used for balances proto under hedera/streams

Signed-off-by: tinker-michaelj <[email protected]>

* Restructure proto directories

Signed-off-by: tinker-michaelj <[email protected]>

* Change java_package for AccountBalanceFile.proto messages

Signed-off-by: tinker-michaelj <[email protected]>

* Extract TokenBalance(s) to BasicTypes

Signed-off-by: tinker-michaelj <[email protected]>

* Include decimals in queries of token/account balances and relationships (#8)

Signed-off-by: tinker-michaelj <[email protected]>

* Include Leemon's edits from Services issue #974 (#10)

Signed-off-by: tinker-michaelj <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* Update README.md

* Add scheduledTransactionID fields to TransactionReceipt and ScheduleGetInfo

Signed-off-by: tinker-michaelj <[email protected]>

* Update README

Signed-off-by: tinker-michaelj <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* 00017 d hcs message size (#19)

* Add response code for Hcs message size limit.

Signed-off-by: ljianghedera <[email protected]>

* Add the response code for HCS message too large.

Signed-off-by: ljianghedera <[email protected]>

* Update protobufs to satisfy revised scheduled txns spec (#15)

* Update protobufs to satisfy revised scheduled txns spec

Signed-off-by: tinker-michaelj <[email protected]>

* Improve comment readability

Signed-off-by: tinker-michaelj <[email protected]>

* Make explicit mention of scheduling.whitelist

Signed-off-by: tinker-michaelj <[email protected]>

* Incorporate reviewer feedback

Signed-off-by: tinker-michaelj <[email protected]>

* Standardize on payerAccountID

Signed-off-by: tinker-michaelj <[email protected]>

* Add scheduledTransactionID to ScheduleInfo

Signed-off-by: tinker-michaelj <[email protected]>

* Clarify effects of schedule deletion

Signed-off-by: tinker-michaelj <[email protected]>

* Include expiration time in getScheduleInfo response

Signed-off-by: tinker-michaelj <[email protected]>

* Change now-obsolete UNPARSEABLE_SCHEDULED_TRANSACTION response code to SCHEDULED_TRANSACTION_NOT_IN_WHITELIST; remove UNSCHEDULABLE_TRANSACTION

Signed-off-by: tinker-michaelj <[email protected]>

* Remove unneeded imports

Signed-off-by: tinker-michaelj <[email protected]>

* Replace deleted/executed flags with consensus timestamps

Signed-off-by: tinker-michaelj <[email protected]>

* Update info on ScheduleCreate receipt on duplicate creation

Signed-off-by: tinker-michaelj <[email protected]>

* Incorporate reviewer feedback

Signed-off-by: tinker-michaelj <[email protected]>

* Use oneof to enforce mutual exclusion of schedule deletion and execution

Signed-off-by: tinker-michaelj <[email protected]>

* Use lower_snake_case for field names in oneof to ease transition to standard naming convention

Signed-off-by: tinker-michaelj <[email protected]>

* Redirect to ResponseCode doc section from Schedule* ops

Signed-off-by: tinker-michaelj <[email protected]>

* Add ThrottleDefinitions types (#23)

* Create ThrottleDefinitions message

Signed-off-by: tinker-michaelj <[email protected]>

* Add throttle-specific response codes

Signed-off-by: tinker-michaelj <[email protected]>

* Add more general response codes for throttle defs

Signed-off-by: tinker-michaelj <[email protected]>

* Add comments to the throttle types

Signed-off-by: tinker-michaelj <[email protected]>

* Clarify some comments

Signed-off-by: tinker-michaelj <[email protected]>

* Update to milliOpsPerSec/burstPeriodMs

Signed-off-by: tinker-michaelj <[email protected]>

* Fix typo

Signed-off-by: tinker-michaelj <[email protected]>

* Be more concise

Signed-off-by: tinker-michaelj <[email protected]>

* Be explicit about milli-ops

Signed-off-by: tinker-michaelj <[email protected]>

* Emphasize only ed25519 keys are supported (#26)

Signed-off-by: tinker-michaelj <[email protected]>

* Revise address book types to 0.13.0 standard (#27)

* Update to final version of address book messages

Signed-off-by: tinker-michaelj <[email protected]>

* Align with issue 750 consensus format

Signed-off-by: tinker-michaelj <[email protected]>

* Change ServiceEndpoint types

Signed-off-by: tinker-michaelj <[email protected]>

* Match comments from issue

Signed-off-by: tinker-michaelj <[email protected]>

* Update comment

Signed-off-by: tinker-michaelj <[email protected]>

* Add details

Signed-off-by: tinker-michaelj <[email protected]>

* Specify fallback use of deprecated fields

Signed-off-by: tinker-michaelj <[email protected]>

* Minor revision

Signed-off-by: tinker-michaelj <[email protected]>

Co-authored-by: ljianghedera <[email protected]>
Co-authored-by: ljianghedera <[email protected]>

* Key list (#34)

* Update BasicTypes.proto

* Update BasicTypes.proto

* Update FileDelete.proto

* Update FileCreate.proto

* Update FileAppend.proto

* Update FileUpdate.proto

* Update BasicTypes.proto

* Update FileCreate.proto

* Update BasicTypes.proto

* Update FileCreate.proto

* Update FileUpdate.proto

* Update FileAppend.proto

* Update FileDelete.proto

* Update BasicTypes.proto

* Update BasicTypes.proto

* Update BasicTypes.proto

* Update BasicTypes.proto

* Update BasicTypes.proto

* Update FileAppend.proto

* Update FileCreate.proto

* Update FileDelete.proto

* Update FileUpdate.proto

* Update FileUpdate.proto

* Update FileUpdate.proto

* Update BasicTypes.proto

* Update BasicTypes.proto

* Update BasicTypes.proto

* Update FileCreate.proto

Co-authored-by: ljianghedera <[email protected]>
Co-authored-by: ljianghedera <[email protected]>
Co-authored-by: SimiHunjan <[email protected]>

Co-authored-by: ljianghedera <[email protected]>
Co-authored-by: ljianghedera <[email protected]>
Co-authored-by: failfmi <[email protected]>
Co-authored-by: Daniel Ivanov <[email protected]>
Co-authored-by: Georgi Yazovaliyski <[email protected]>
Co-authored-by: SimiHunjan <[email protected]>

* added messages for custom token fee type and custom hbar fee type

Signed-off-by: anighanta <[email protected]>

* 041- add response code RECEIVER_SIG_REQUIRED

Signed-off-by: anighanta <[email protected]>

* add a Fraction type to denote percentages more elegently

Signed-off-by: anighanta <[email protected]>

* typo fix

Signed-off-by: anighanta <[email protected]>

* Encapsulate TokenFee and HbarFee in a single message

Signed-off-by: anighanta <[email protected]>

* Define fixed and fractional fee to avoid illegal combinations

Signed-off-by: anighanta <[email protected]>

* fix typo

Signed-off-by: anighanta <[email protected]>

* add missing import and typo fix

Signed-off-by: anighanta <[email protected]>

* added description to the the fields and renamed recevingAccountId to feeCollector

Signed-off-by: anighanta <[email protected]>

* Splitting the CustomFees out in a separate class.

Signed-off-by: Quan Nguyen <[email protected]>

* Consolidate all the CustomFees into one type of message for using in report as well.

Signed-off-by: Quan Nguyen <[email protected]>

* Add some comments and the CustomFeeCharged message + imports

Signed-off-by: tinker-michaelj <[email protected]>

* added customFeesKey to TokenCreate, TokenGetInfo, TokenUpdate

Signed-off-by: abhishek-hedera <[email protected]>

* add a few ResponseCodes

Signed-off-by: Neeharika-Sompalli <[email protected]>

* Added missing comments for CryptoTransfer message.

Signed-off-by: ljianghedera <[email protected]>

* Add TOKEN_MAX_SUPPLY_REACHED

Signed-off-by: tinker-michaelj <[email protected]>

* Add SENDER_DOES_NOT_OWN_NFT_SERIAL_NO

Signed-off-by: tinker-michaelj <[email protected]>

* Include CUSTOM_FEE_NOT_FULLY_SPECIFIED

Signed-off-by: tinker-michaelj <[email protected]>

* Add INVALID_CUSTOM_FEE_KEY and TOKEN_HAS_NO_CUSTOM_FEE_KEY

Signed-off-by: tinker-michaelj <[email protected]>

* Address reviewer comments

Signed-off-by: tinker-michaelj <[email protected]>

* Reduce wordiness

Signed-off-by: tinker-michaelj <[email protected]>

* Reduce wordiness

Signed-off-by: tinker-michaelj <[email protected]>

* Clean up wording

Signed-off-by: tinker-michaelj <[email protected]>

* Remove unneeded import

Signed-off-by: tinker-michaelj <[email protected]>

* Clean up wording

Signed-off-by: tinker-michaelj <[email protected]>

* Fix TokenGetInfo

Signed-off-by: tinker-michaelj <[email protected]>

* Remove custom fee key response codes

Signed-off-by: tinker-michaelj <[email protected]>

* Tweak response code names

Signed-off-by: tinker-michaelj <[email protected]>

* Change all sint64 to int64

Signed-off-by: tinker-michaelj <[email protected]>

* Add CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE

Signed-off-by: tinker-michaelj <[email protected]>

* Clarify custom_fees in TokenUpdate. Add INVALID_CUSTOM_FRACTIONAL_FEES_SUM response code.

Signed-off-by: Quan Nguyen <[email protected]>

Co-authored-by: Michael Tinker <[email protected]>
Co-authored-by: ljianghedera <[email protected]>
Co-authored-by: ljianghedera <[email protected]>
Co-authored-by: failfmi <[email protected]>
Co-authored-by: Daniel Ivanov <[email protected]>
Co-authored-by: Georgi Yazovaliyski <[email protected]>
Co-authored-by: SimiHunjan <[email protected]>
Co-authored-by: Quan Nguyen <[email protected]>
Co-authored-by: abhishek-hedera <[email protected]>
Co-authored-by: Neeharika-Sompalli <[email protected]>

* re-add deprecated fields to Transaction (#29)

previously deprecated fields are still needed to be able to historically parse valid transactions

* HIP-18 add missing response code (#46)

* add FRACTIONAL_FEES_MIN_AMOUNT_GREATER_THAN_MAX_AMOUNT

Signed-off-by: Neeharika-Sompalli <[email protected]>

* fix typo

Signed-off-by: Neeharika-Sompalli <[email protected]>

* Suggested wording.

Signed-off-by: Quan Nguyen <[email protected]>

Co-authored-by: Quan Nguyen <[email protected]>

* Rename TokenGetAccountNftInfo + add new Response code (#44)

* feat(tokens): nfts

Signed-off-by: failfmi <[email protected]>

* feat: multiple fee data per hedera functionality; sub type distinguishing different fee data

Signed-off-by: failfmi <[email protected]>

* deprecate feedata property

Signed-off-by: Daniel Ivanov <[email protected]>

* style: rename repeated fee data field

Signed-off-by: failfmi <[email protected]>

* Error ResponseCodes

Signed-off-by: Georgi Yazovaliyski <[email protected]>

* Modifications Catch Up

Signed-off-by: Georgi Yazovaliyski <[email protected]>

* Documentation Modification

Signed-off-by: Georgi Yazovaliyski <[email protected]>

* revert unnecessary changes

Signed-off-by: Daniel Ivanov <[email protected]>

* remove leftover file

Signed-off-by: Daniel Ivanov <[email protected]>

* resolve conflicts

Signed-off-by: Daniel Ivanov <[email protected]>

* Property renaming

Signed-off-by: Georgi Yazovaliyski <[email protected]>

Co-authored-by: failfmi <[email protected]>
Co-authored-by: Georgi Yazovaliyski <[email protected]>

* Add TokenFeeScheduleUpdate op to allow switch back to fee_schedule_key (#47)

* Add TokenFeeScheduleUpdate op to allow switch back to fee_schedule_key

Signed-off-by: tinker-michaelj <[email protected]>

* Add missing file

Signed-off-by: tinker-michaelj <[email protected]>

* Reviewer comments

Signed-off-by: tinker-michaelj <[email protected]>

* Snakecase

Signed-off-by: tinker-michaelj <[email protected]>

* Add more responseCodes (#49)

* added response codes for if we a denominatig token type is a NFT and one for when and NFT has a fractional fee in its feeSchedule

Signed-off-by: anighanta <[email protected]>

* Add response code for invalid fee schedule key.

Signed-off-by: ljianghedera <[email protected]>

* Renamed the token fee schedule key respond code name.

Signed-off-by: ljianghedera <[email protected]>

* Standardize comments in new response codes

Signed-off-by: tinker-michaelj <[email protected]>

Co-authored-by: ljianghedera <[email protected]>
Co-authored-by: tinker-michaelj <[email protected]>

* Include three response codes for v0.16.0-alpha.1 tag (#52)

Signed-off-by: tinker-michaelj <[email protected]>

* Response codes for previewnet bugs (#54)

* Add ACCOUNT_STILL_OWNS_NFTS and TREASURY_MUST_OWN_BURNED_NFT

Signed-off-by: tinker-michaelj <[email protected]>

* Add ACCOUNT_DOES_NOT_OWN_WIPED_NFT and TOKEN_TRANSFERS_LIST_ONLY_USABLE_WITH_FUNGIBLE_COMMON

Signed-off-by: tinker-michaelj <[email protected]>

* Rename TOKEN_TRANSFERS_LIST_ONLY_USABLE_WITH_FUNGIBLE_COMMON to be more
accurate

Signed-off-by: tinker-michaelj <[email protected]>

* fixed typo (#55)

Signed-off-by: SimiHunjan <[email protected]>

* Nfts: Documentation Update (#53)

* Sync to main in preparation for 0.15.0 tag (#39)

* Reference node properties controlling HTS behavior

Signed-off-by: tinker-michaelj <[email protected]>

* Again clarify use of master

Signed-off-by: tinker-michaelj <[email protected]>

* Update from head of schedule-develop in hashgraph/hedera-services (#2)

Signed-off-by: tinker-michaelj <[email protected]>

* Standardize memos for non-schedule entities (#3)

* Standardize memos for non-schedule entities

Signed-off-by: tinker-michaelj <[email protected]>

* Fix typo in field number

Signed-off-by: tinker-michaelj <[email protected]>

* Use google.protobuf.StringValue for new memo fields

Signed-off-by: tinker-michaelj <[email protected]>

* Comment on deprecated memoField choice

Signed-off-by: tinker-michaelj <[email protected]>

* Port schedule txn comments (#5)

* Port schedule txn comments

Signed-off-by: tinker-michaelj <[email protected]>

* Add further comments

Signed-off-by: tinker-michaelj <[email protected]>

* Apply the same changes to hedera-protobufs repo. (#4)

Signed-off-by: ljianghedera <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* Separate messages used for balances proto under hedera/streams (#6)

* Separate messages used for balances proto under hedera/streams

Signed-off-by: tinker-michaelj <[email protected]>

* Restructure proto directories

Signed-off-by: tinker-michaelj <[email protected]>

* Change java_package for AccountBalanceFile.proto messages

Signed-off-by: tinker-michaelj <[email protected]>

* Extract TokenBalance(s) to BasicTypes

Signed-off-by: tinker-michaelj <[email protected]>

* Include decimals in queries of token/account balances and relationships (#8)

Signed-off-by: tinker-michaelj <[email protected]>

* Include Leemon's edits from Services issue #974 (#10)

Signed-off-by: tinker-michaelj <[email protected]>

* Add scheduled transaction id to TransactionReceipt + ScheduleGetInfo types (#12)

* Prepare to tag 0.12.0 release (#11)

* Reference node properties controlling HTS behavior

Signed-off-by: tinker-michaelj <[email protected]>

* Again clarify use of master

Signed-off-by: tinker-michaelj <[email protected]>

* Update from head of schedule-develop in hashgraph/hedera-services (#2)

Signed-off-by: tinker-michaelj <[email protected]>

* Standardize memos for non-schedule entities (#3)

* Standardize memos for non-schedule entities

Signed-off-by: tinker-michaelj <[email protected]>

* Fix typo in field number

Signed-off-by: tinker-michaelj <[email protected]>

* Use google.protobuf.StringValue for new memo fields

Signed-off-by: tinker-michaelj <[email protected]>

* Comment on deprecated memoField choice

Signed-off-by: tinker-michaelj <[email protected]>

* Port schedule txn comments (#5)

* Port schedule txn comments

Signed-off-by: tinker-michaelj <[email protected]>

* Add further comments

Signed-off-by: tinker-michaelj <[email protected]>

* Apply the same changes to hedera-protobufs repo. (#4)

Signed-off-by: ljianghedera <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* Separate messages used for balances proto under hedera/streams (#6)

* Separate messages used for balances proto under hedera/streams

Signed-off-by: tinker-michaelj <[email protected]>

* Restructure proto directories

Signed-off-by: tinker-michaelj <[email protected]>

* Change java_package for AccountBalanceFile.proto messages

Signed-off-by: tinker-michaelj <[email protected]>

* Extract TokenBalance(s) to BasicTypes

Signed-off-by: tinker-michaelj <[email protected]>

* Include decimals in queries of token/account balances and relationships (#8)

Signed-off-by: tinker-michaelj <[email protected]>

* Include Leemon's edits from Services issue #974 (#10)

Signed-off-by: tinker-michaelj <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* Update README.md

* Add scheduledTransactionID fields to TransactionReceipt and ScheduleGetInfo

Signed-off-by: tinker-michaelj <[email protected]>

* Update README

Signed-off-by: tinker-michaelj <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* 00017 d hcs message size (#19)

* Add response code for Hcs message size limit.

Signed-off-by: ljianghedera <[email protected]>

* Add the response code for HCS message too large.

Signed-off-by: ljianghedera <[email protected]>

* Update protobufs to satisfy revised scheduled txns spec (#15)

* Update protobufs to satisfy revised scheduled txns spec

Signed-off-by: tinker-michaelj <[email protected]>

* Improve comment readability

Signed-off-by: tinker-michaelj <[email protected]>

* Make explicit mention of scheduling.whitelist

Signed-off-by: tinker-michaelj <[email protected]>

* Incorporate reviewer feedback

Signed-off-by: tinker-michaelj <[email protected]>

* Standardize on payerAccountID

Signed-off-by: tinker-michaelj <[email protected]>

* Add scheduledTransactionID to ScheduleInfo

Signed-off-by: tinker-michaelj <[email protected]>

* Clarify effects of schedule deletion

Signed-off-by: tinker-michaelj <[email protected]>

* Include expiration time in getScheduleInfo response

Signed-off-by: tinker-michaelj <[email protected]>

* Change now-obsolete UNPARSEABLE_SCHEDULED_TRANSACTION response code to SCHEDULED_TRANSACTION_NOT_IN_WHITELIST; remove UNSCHEDULABLE_TRANSACTION

Signed-off-by: tinker-michaelj <[email protected]>

* Remove unneeded imports

Signed-off-by: tinker-michaelj <[email protected]>

* Replace deleted/executed flags with consensus timestamps

Signed-off-by: tinker-michaelj <[email protected]>

* Update info on ScheduleCreate receipt on duplicate creation

Signed-off-by: tinker-michaelj <[email protected]>

* Incorporate reviewer feedback

Signed-off-by: tinker-michaelj <[email protected]>

* Use oneof to enforce mutual exclusion of schedule deletion and execution

Signed-off-by: tinker-michaelj <[email protected]>

* Use lower_snake_case for field names in oneof to ease transition to standard naming convention

Signed-off-by: tinker-michaelj <[email protected]>

* Redirect to ResponseCode doc section from Schedule* ops

Signed-off-by: tinker-michaelj <[email protected]>

* Add ThrottleDefinitions types (#23)

* Create ThrottleDefinitions message

Signed-off-by: tinker-michaelj <[email protected]>

* Add throttle-specific response codes

Signed-off-by: tinker-michaelj <[email protected]>

* Add more general response codes for throttle defs

Signed-off-by: tinker-michaelj <[email protected]>

* Add comments to the throttle types

Signed-off-by: tinker-michaelj <[email protected]>

* Clarify some comments

Signed-off-by: tinker-michaelj <[email protected]>

* Update to milliOpsPerSec/burstPeriodMs

Signed-off-by: tinker-michaelj <[email protected]>

* Fix typo

Signed-off-by: tinker-michaelj <[email protected]>

* Be more concise

Signed-off-by: tinker-michaelj <[email protected]>

* Be explicit about milli-ops

Signed-off-by: tinker-michaelj <[email protected]>

* Emphasize only ed25519 keys are supported (#26)

Signed-off-by: tinker-michaelj <[email protected]>

* Revise address book types to 0.13.0 standard (#27)

* Update to final version of address book messages

Signed-off-by: tinker-michaelj <[email protected]>

* Align with issue 750 consensus format

Signed-off-by: tinker-michaelj <[email protected]>

* Change ServiceEndpoint types

Signed-off-by: tinker-michaelj <[email protected]>

* Match comments from issue

Signed-off-by: tinker-michaelj <[email protected]>

* Update comment

Signed-off-by: tinker-michaelj <[email protected]>

* Add details

Signed-off-by: tinker-michaelj <[email protected]>

* Specify fallback use of deprecated fields

Signed-off-by: tinker-michaelj <[email protected]>

* Minor revision

Signed-off-by: tinker-michaelj <[email protected]>

* Add full semver meta to SemanticVersion (#33)

* Add full semver meta to SemanticVersion

Signed-off-by: tinker-michaelj <[email protected]>

* Add top-level comment on SemanticVersion

Signed-off-by: tinker-michaelj <[email protected]>

* Abbreviate SemanticVersion optional fields

Signed-off-by: tinker-michaelj <[email protected]>

* Add ACCOUNT_EXPIRED_AND_PENDING_REMOVAL response code (#35)

Signed-off-by: tinker-michaelj <[email protected]>

* Feature: NFT Tokens (#37)

* feat(tokens): nfts

Signed-off-by: failfmi <[email protected]>

* feat: multiple fee data per hedera functionality; sub type distinguishing different fee data

Signed-off-by: failfmi <[email protected]>

* deprecate feedata property

Signed-off-by: Daniel Ivanov <[email protected]>

* style: rename repeated fee data field

Signed-off-by: failfmi <[email protected]>

* Error ResponseCodes

Signed-off-by: Georgi Yazovaliyski <[email protected]>

Co-authored-by: Daniel Ivanov <[email protected]>
Co-authored-by: Georgi Yazovaliyski <[email protected]>

* Sync develop with main (#38)

* Prepare for 0.13.0 tag (#28)

* Reference node properties controlling HTS behavior

Signed-off-by: tinker-michaelj <[email protected]>

* Again clarify use of master

Signed-off-by: tinker-michaelj <[email protected]>

* Update from head of schedule-develop in hashgraph/hedera-services (#2)

Signed-off-by: tinker-michaelj <[email protected]>

* Standardize memos for non-schedule entities (#3)

* Standardize memos for non-schedule entities

Signed-off-by: tinker-michaelj <[email protected]>

* Fix typo in field number

Signed-off-by: tinker-michaelj <[email protected]>

* Use google.protobuf.StringValue for new memo fields

Signed-off-by: tinker-michaelj <[email protected]>

* Comment on deprecated memoField choice

Signed-off-by: tinker-michaelj <[email protected]>

* Port schedule txn comments (#5)

* Port schedule txn comments

Signed-off-by: tinker-michaelj <[email protected]>

* Add further comments

Signed-off-by: tinker-michaelj <[email protected]>

* Apply the same changes to hedera-protobufs repo. (#4)

Signed-off-by: ljianghedera <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* Separate messages used for balances proto under hedera/streams (#6)

* Separate messages used for balances proto under hedera/streams

Signed-off-by: tinker-michaelj <[email protected]>

* Restructure proto directories

Signed-off-by: tinker-michaelj <[email protected]>

* Change java_package for AccountBalanceFile.proto messages

Signed-off-by: tinker-michaelj <[email protected]>

* Extract TokenBalance(s) to BasicTypes

Signed-off-by: tinker-michaelj <[email protected]>

* Include decimals in queries of token/account balances and relationships (#8)

Signed-off-by: tinker-michaelj <[email protected]>

* Include Leemon's edits from Services issue #974 (#10)

Signed-off-by: tinker-michaelj <[email protected]>

* Add scheduled transaction id to TransactionReceipt + ScheduleGetInfo types (#12)

* Prepare to tag 0.12.0 release (#11)

* Reference node properties controlling HTS behavior

Signed-off-by: tinker-michaelj <[email protected]>

* Again clarify use of master

Signed-off-by: tinker-michaelj <[email protected]>

* Update from head of schedule-develop in hashgraph/hedera-services (#2)

Signed-off-by: tinker-michaelj <[email protected]>

* Standardize memos for non-schedule entities (#3)

* Standardize memos for non-schedule entities

Signed-off-by: tinker-michaelj <[email protected]>

* Fix typo in field number

Signed-off-by: tinker-michaelj <[email protected]>

* Use google.protobuf.StringValue for new memo fields

Signed-off-by: tinker-michaelj <[email protected]>

* Comment on deprecated memoField choice

Signed-off-by: tinker-michaelj <[email protected]>

* Port schedule txn comments (#5)

* Port schedule txn comments

Signed-off-by: tinker-michaelj <[email protected]>

* Add further comments

Signed-off-by: tinker-michaelj <[email protected]>

* Apply the same changes to hedera-protobufs repo. (#4)

Signed-off-by: ljianghedera <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* Separate messages used for balances proto under hedera/streams (#6)

* Separate messages used for balances proto under hedera/streams

Signed-off-by: tinker-michaelj <[email protected]>

* Restructure proto directories

Signed-off-by: tinker-michaelj <[email protected]>

* Change java_package for AccountBalanceFile.proto messages

Signed-off-by: tinker-michaelj <[email protected]>

* Extract TokenBalance(s) to BasicTypes

Signed-off-by: tinker-michaelj <[email protected]>

* Include decimals in queries of token/account balances and relationships (#8)

Signed-off-by: tinker-michaelj <[email protected]>

* Include Leemon's edits from Services issue #974 (#10)

Signed-off-by: tinker-michaelj <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* Update README.md

* Add scheduledTransactionID fields to TransactionReceipt and ScheduleGetInfo

Signed-off-by: tinker-michaelj <[email protected]>

* Update README

Signed-off-by: tinker-michaelj <[email protected]>

Co-authored-by: ljianghedera <[email protected]>

* 00017 d hcs message size (#19)

* Add response code for Hcs message size limit.

Signed-off-by: ljianghedera <[email protected]>

* Add the response code for HCS message too large.

Signed-off-by: ljianghedera <[email protected]>

* Update protobufs to satisfy revised scheduled txns spec (#15)

* Update protobufs to satisfy revised scheduled txns spec

Signed-off-by: tinker-michaelj <[email protected]>

* Improve comment readability

Signed-off-by: tinker-michaelj <[email protected]>

* Make explicit mention of scheduling.whitelist

Signed-off-by: tinker-michaelj <[email protected]>

* Incorporate reviewer feedback

Signed-off-by: tinker-michaelj <[email protected]>

* Standardize on payerAccountID

Signed-off-by: tinker-michaelj <[email protected]>

* Add scheduledTransactionID to ScheduleInfo

Signed-off-by: tinker-michaelj <[email protected]>

* Clarify effects of schedule deletion

Signed-off-by: tinker-michaelj <[email protected]>

* Include expiration time in getScheduleInfo response

Signed-off-by: tinker-michaelj <[email protected]>

* Change now-obsolete UNPARSEABLE_SCHEDULED_TRANSACTION response code to SCHEDULED_TRANSACTION_NOT_IN_WHITELIST; remove UNSCHEDULABLE_TRANSACTION

Signed-off-by: tinker-michaelj <[email protected]>

* Remove unneeded imports

Signed-off-by: tinker-michaelj <[email protected]>

* Replace deleted/executed flags with consensus timestamps

Signed-off-by: tinker-michaelj <[email protected]>

* Update info on ScheduleCreate receipt on duplicate creation

Signed-off-by: tinker-michaelj <[email protected]>

* Incorporate reviewer feedback

Signed-off-by: tinker-michaelj <[email protected]>

* Use oneof to enforce mutual exclusion of schedule deletion and execution

Signed-off-by: tinker-michaelj <[email protected]>

* Use lower_snake_case for field names in oneof to ease transition to standard naming convention

Signed-off-by: tinker-michaelj <[email protected]>

* Redirect to ResponseCode doc section from Schedule* ops

Signed-off-by: tinker-michaelj <[email protected]>

* Add ThrottleDefinitions types (#23)

* Create ThrottleDefinitions message

Signed-off-by: tinker-michaelj <[email protected]>

* Add throttle-specific response codes

Signed-off-by: tinker-michaelj <[email protected]>

* Add more general response codes for throttle defs

Signed-off-by: tinker-michaelj <[email protected]>

* Add comments to the throttle types

Signed-off-by: tinker-michaelj <[email protected]>

* Clarify some comments

Signed-off-by: tinker-michaelj <[email protected]>

* Update to milliOpsPerSec/burstPeriodMs

Signed-off-by: tinker-michaelj <[email protected]>

* Fix typo

Signed-off-by: tinker-michaelj <[email protected]>

* Be more concise

Signed-off-by: tinker-michaelj <[email protected]>

* Be explicit about milli-ops

Signed-off-by: tinker-michaelj <[email protected]>

* Emphasize only ed25519 keys are supported (#26)

Signed-off-by: tinker-michaelj <[email protected]>

* Revise address book types to 0.13.0 standard (#27)

* Update to final version of address book messages

Signed-off-by: tinker-michaelj <[email protected]>

* Align with issue 750 consensus format

Signed-off-by: tinker-michaelj <[email protected]>

* Change ServiceEndpoint types

Signed-off-by: tinker-michaelj <[email protected]>

* Match comments from issue

Signed-off-by: tinker-michaelj <[email protected]>

* Update comment

Signed-off-by: tinker-michaelj <[email protected]>

* Add details

Signed-off-by: tinker-michaelj <michael.ti…
  • Loading branch information
13 people authored Jul 21, 2021
1 parent 5d27ea4 commit 131c44e
Show file tree
Hide file tree
Showing 21 changed files with 252 additions and 27 deletions.
31 changes: 23 additions & 8 deletions services/BasicTypes.proto
Original file line number Diff line number Diff line change
Expand Up @@ -85,7 +85,7 @@ message TransferList {
repeated AccountAmount accountAmounts = 1; // Multiple list of AccountAmount pairs, each of which has an account and an amount to transfer into it (positive) or out of it (negative)
}

/* A sender account, a receiver account, and the serial number of an NFT of a Token with NON_FUNGIBLE_UNIQUE type. */
/* A sender account, a receiver account, and the serial number of an NFT of a Token with NON_FUNGIBLE_UNIQUE type. When minting NFTs the sender will be the default AccountID instance (0.0.0) and when burning NFTs, the receiver will be the default AccountID instance. */
message NftTransfer {
AccountID senderAccountID = 1; // The accountID of the sender
AccountID receiverAccountID = 2; // The accountID of the receiver
Expand All @@ -99,6 +99,12 @@ message TokenTransferList {
repeated NftTransfer nftTransfers = 3; // Applicable to tokens of type NON_FUNGIBLE_UNIQUE. Multiple list of NftTransfers, each of which has a sender and receiver account, including the serial number of the NFT
}

/* A rational number, used to set the amount of a value transfer to collect as a custom fee */
message Fraction {
int64 numerator = 1; // The rational's numerator
int64 denominator = 2; // The rational's denominator; a zero value will result in FRACTION_DIVIDES_BY_ZERO
}

/* Unique identifier for a topic (used by the consensus service) */
message TopicID {
int64 shardNum = 1; // The shard number (nonnegative)
Expand Down Expand Up @@ -138,15 +144,23 @@ enum TokenType {
NON_FUNGIBLE_UNIQUE = 1;
}


/**
* Possible FeeData Object SubTypes. Supplementary to the main HederaFunctionality Type.
* When not explicitly specified, DEFAULT is used.
* Allows a set of resource prices to be scoped to a certain type of a HAPI operation.
*
* For example, the resource prices for a TokenMint operation are different between
* minting fungible and non-fungible tokens. This enum allows us to "mark" a set of
* prices as applying to one or the other.
*
* Similarly, the resource prices for a basic TokenCreate without a custom fee schedule
* yield a total price of $1. The resource prices for a TokenCreate with a custom fee
* schedule are different and yield a total base price of $2.
*/
enum SubType {
DEFAULT = 0;
TOKEN_FUNGIBLE_COMMON = 1;
TOKEN_NON_FUNGIBLE_UNIQUE = 2;
DEFAULT = 0; // The resource prices have no special scope
TOKEN_FUNGIBLE_COMMON = 1; // The resource prices are scoped to an operation on a fungible common token
TOKEN_NON_FUNGIBLE_UNIQUE = 2; // The resource prices are scoped to an operation on a non-fungible unique token
TOKEN_FUNGIBLE_COMMON_WITH_CUSTOM_FEES = 3; // The resource prices are scoped to an operation on a fungible common token with a custom fee schedule
TOKEN_NON_FUNGIBLE_UNIQUE_WITH_CUSTOM_FEES = 4; // The resource prices are scoped to an operation on a non-fungible unique token with a custom fee schedule
}

/**
Expand Down Expand Up @@ -328,9 +342,10 @@ enum HederaFunctionality {
ScheduleDelete = 71; // Delete Scheduled Transaction
ScheduleSign = 72; // Sign Scheduled Transaction
ScheduleGetInfo = 73; // Get Scheduled Transaction Information
TokenGetAccountNftInfo = 74; // Get Token Account Nft Information
TokenGetAccountNftInfos = 74; // Get Token Account Nft Information
TokenGetNftInfo = 75; // Get Token Nft Information
TokenGetNftInfos = 76; // Get Token Nft List Information
TokenFeeScheduleUpdate = 77; // Update a token's custom fee schedule, if permissible
}

/*
Expand Down
6 changes: 3 additions & 3 deletions services/CryptoTransfer.proto
Original file line number Diff line number Diff line change
Expand Up @@ -27,10 +27,10 @@ option java_multiple_files = true;

import "BasicTypes.proto";

/* Transfer cryptocurrency from some accounts to other accounts. The accounts list can contain up to 10 accounts. The amounts list must be the same length as the accounts list. Each negative amount is withdrawn from the corresponding account (a sender), and each positive one is added to the corresponding account (a receiver). The amounts list must sum to zero. Each amount is a number of tinyBars (there are 100,000,000 tinyBars in one Hbar).
/* Transfers cryptocurrency among two or more accounts by making the desired adjustments to their balances. Each transfer list can specify up to 10 adjustments. Each negative amount is withdrawn from the corresponding account (a sender), and each positive one is added to the corresponding account (a receiver). The amounts list must sum to zero. Each amount is a number of tinybars (there are 100,000,000 tinybars in one hbar).
If any sender account fails to have sufficient hbars, then the entire transaction fails, and none of those transfers occur, though the transaction fee is still charged. This transaction must be signed by the keys for all the sending accounts, and for any receiving accounts that have receiverSigRequired == true. The signatures are in the same order as the accounts, skipping those accounts that don't need a signature.
*/
message CryptoTransferTransactionBody {
TransferList transfers = 1;
repeated TokenTransferList tokenTransfers = 2;
TransferList transfers = 1; // The desired hbar balance adjustments
repeated TokenTransferList tokenTransfers = 2; // The desired token unit balance adjustments; if any custom fees are assessed, the ledger will try to deduct them from the payer of this CryptoTransfer, resolving the transaction to INSUFFICIENT_PAYER_BALANCE_FOR_CUSTOM_FEE if this is not possible
}
62 changes: 62 additions & 0 deletions services/CustomFees.proto
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
syntax = "proto3";

package proto;

/*-
* ‌
* Hedera Network Services Protobuf
* ​
* Copyright (C) 2018 - 2021 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.
* ‍
*/

option java_package = "com.hederahashgraph.api.proto.java";
option java_multiple_files = true;

import "BasicTypes.proto";

/* A fraction of the transferred units of a token to assess as a fee. The amount assessed
will never be less than the given minimum_amount, and never greater than the given maximum_amount.
The denomination is always units of the token to which this fractional fee is attached. */
message FractionalFee {
Fraction fractional_amount = 1; // The fraction of the transferred units to assess as a fee
int64 minimum_amount = 2; // The minimum amount to assess
int64 maximum_amount = 3; // The maximum amount to assess (zero implies no maximum)
}

/* A fixed number of units (hbar or token) to assess as a fee during a CryptoTransfer
that transfers units of the token to which this fixed fee is attached. */
message FixedFee {
int64 amount = 1; // The number of units to assess as a fee
TokenID denominating_token_id = 2; // The denomination of the fee; taken as hbar if left unset and, in a TokenCreate, taken as the id of the newly created token if set to the sentinel value of 0.0.0
}

/* A transfer fee to assess during a CryptoTransfer that transfers units of the token
to which the fee is attached. A custom fee may be either fixed or fractional, and must specify
a fee collector account to receive the assessed fees. Only positive fees may be assessed. */
message CustomFee {
oneof fee {
FixedFee fixed_fee = 1; // Fixed fee to be charged
FractionalFee fractional_fee = 2; // Fractional fee to be charged
}
AccountID fee_collector_account_id = 3; // The account to receive the custom fee
}

/* A custom transfer fee that was assessed during handling of a CryptoTransfer. */
message AssessedCustomFee {
int64 amount = 1; // The number of units assessed for the fee
TokenID token_id = 2; // The denomination of the fee; taken as hbar if left unset
AccountID fee_collector_account_id = 3; // The account to receive the assessed fee
}
4 changes: 2 additions & 2 deletions services/Query.proto
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ import "NetworkGetVersionInfo.proto";
import "TokenGetInfo.proto";
import "ScheduleGetInfo.proto";

import "TokenGetAccountNftInfo.proto";
import "TokenGetAccountNftInfos.proto";
import "TokenGetNftInfo.proto";
import "TokenGetNftInfos.proto";

Expand Down Expand Up @@ -86,7 +86,7 @@ message Query {

ScheduleGetInfoQuery scheduleGetInfo = 53; // Get all information about a scheduled entity

TokenGetAccountNftInfoQuery tokenGetAccountNftInfo = 54; // Get a list of NFTs associated with the account
TokenGetAccountNftInfosQuery tokenGetAccountNftInfos = 54; // Get a list of NFTs associated with the account
TokenGetNftInfoQuery tokenGetNftInfo = 55; // Get all information about a NFT
TokenGetNftInfosQuery tokenGetNftInfos = 56; // Get a list of NFTs for the token
}
Expand Down
4 changes: 2 additions & 2 deletions services/Response.proto
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ import "ConsensusGetTopicInfo.proto";

import "NetworkGetVersionInfo.proto";

import "TokenGetAccountNftInfo.proto";
import "TokenGetAccountNftInfos.proto";
import "TokenGetInfo.proto";
import "TokenGetNftInfo.proto";
import "TokenGetNftInfos.proto";
Expand Down Expand Up @@ -90,7 +90,7 @@ message Response {

ScheduleGetInfoResponse scheduleGetInfo = 153; // Get all information about a schedule entity

TokenGetAccountNftInfoResponse tokenGetAccountNftInfo = 154; // A list of the NFTs associated with the account
TokenGetAccountNftInfosResponse tokenGetAccountNftInfos = 154; // A list of the NFTs associated with the account
TokenGetNftInfoResponse tokenGetNftInfo = 155; // All information about an NFT
TokenGetNftInfosResponse tokenGetNftInfos = 156; // A list of the NFTs for the token
}
Expand Down
33 changes: 32 additions & 1 deletion services/ResponseCode.proto
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,8 @@ enum ResponseCodeEnum {
EXPIRATION_REDUCTION_NOT_ALLOWED = 110; // The expiration date/time on a smart contract may not be reduced
MAX_GAS_LIMIT_EXCEEDED = 111; //Gas exceeded currently allowable gas limit per transaction
MAX_FILE_SIZE_EXCEEDED = 112; // File size exceeded the currently allowable limit
RECEIVER_SIG_REQUIRED = 113; // When a valid signature is not provided for operations on account with receiverSigRequired=true

INVALID_TOPIC_ID = 150; // The Topic ID specified is not in the system.
INVALID_ADMIN_KEY = 155; // A provided admin key was invalid.
INVALID_SUBMIT_KEY = 156; // A provided submit key was invalid.
Expand Down Expand Up @@ -236,5 +238,34 @@ enum ResponseCodeEnum {
INVALID_NFT_ID = 226; // Invalid nft id
METADATA_TOO_LONG = 227; // Nft metadata is too long
BATCH_SIZE_LIMIT_EXCEEDED = 228; // Repeated operations count exceeds the limit
QUERY_RANGE_LIMIT_EXCEEDED = 229; // The range of data to be gathered exceeds the limit
INVALID_QUERY_RANGE = 229; // The range of data to be gathered is out of the set boundaries
FRACTION_DIVIDES_BY_ZERO = 230; // A custom fractional fee set a denominator of zero
INSUFFICIENT_PAYER_BALANCE_FOR_CUSTOM_FEE = 231; // The transaction payer could not afford a custom fee
CUSTOM_FEES_LIST_TOO_LONG = 232; // More than 10 custom fees were specified
INVALID_CUSTOM_FEE_COLLECTOR = 233; // Any of the feeCollector accounts for customFees is invalid
INVALID_TOKEN_ID_IN_CUSTOM_FEES = 234; // Any of the token Ids in customFees is invalid
TOKEN_NOT_ASSOCIATED_TO_FEE_COLLECTOR = 235; // Any of the token Ids in customFees are not associated to feeCollector
TOKEN_MAX_SUPPLY_REACHED = 236; // A token cannot have more units minted due to its configured supply ceiling
SENDER_DOES_NOT_OWN_NFT_SERIAL_NO = 237; // The transaction attempted to move an NFT serial number from an account other than its owner
CUSTOM_FEE_NOT_FULLY_SPECIFIED = 238; // A custom fee schedule entry did not specify either a fixed or fractional fee
CUSTOM_FEE_MUST_BE_POSITIVE = 239; // Only positive fees may be assessed at this time
TOKEN_HAS_NO_FEE_SCHEDULE_KEY = 240; // Fee schedule key is not set on token
CUSTOM_FEE_OUTSIDE_NUMERIC_RANGE = 241; // A fractional custom fee exceeded the range of a 64-bit signed integer
INVALID_CUSTOM_FRACTIONAL_FEES_SUM = 242; // The sum of all custom fractional fees must be strictly less than 1
FRACTIONAL_FEE_MAX_AMOUNT_LESS_THAN_MIN_AMOUNT = 243; // Each fractional custom fee must have its maximum_amount, if specified, at least its minimum_amount
CUSTOM_SCHEDULE_ALREADY_HAS_NO_FEES = 244; // A fee schedule update tried to clear the custom fees from a token whose fee schedule was already empty
CUSTOM_FEE_DENOMINATION_MUST_BE_FUNGIBLE_COMMON = 245; // Only tokens of type FUNGIBLE_COMMON can be used to as fee schedule denominations
CUSTOM_FRACTIONAL_FEE_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON = 246; // Only tokens of type FUNGIBLE_COMMON can have fractional fees
INVALID_CUSTOM_FEE_SCHEDULE_KEY = 247; // The provided custom fee schedule key was invalid
INVALID_TOKEN_MINT_METADATA = 248; // The requested token mint metadata was invalid
INVALID_TOKEN_BURN_METADATA = 249; // The requested token burn metadata was invalid
CURRENT_TREASURY_STILL_OWNS_NFTS = 250; // The treasury for a unique token cannot be changed until it owns no NFTs
ACCOUNT_STILL_OWNS_NFTS = 251; // An account cannot be dissociated from a unique token if it owns NFTs for the token
TREASURY_MUST_OWN_BURNED_NFT = 252; // A NFT can only be burned when owned by the unique token's treasury
ACCOUNT_DOES_NOT_OWN_WIPED_NFT = 253; // An account did not own the NFT to be wiped
ACCOUNT_AMOUNT_TRANSFERS_ONLY_ALLOWED_FOR_FUNGIBLE_COMMON = 254; // An AccountAmount token transfers list referenced a token type other than FUNGIBLE_COMMON
MAX_NFTS_IN_PRICE_REGIME_HAVE_BEEN_MINTED = 255; // All the NFTs allowed in the current price regime have already been minted
PAYER_ACCOUNT_DELETED = 256; // The payer account has been marked as deleted
CUSTOM_FEE_CHARGING_EXCEEDED_MAX_RECURSION_DEPTH = 257; // The reference chain of custom fees for a transferred token exceeded the maximum length of 2
CUSTOM_FEE_CHARGING_EXCEEDED_MAX_ACCOUNT_AMOUNTS = 258; // More than 20 balance adjustments were to satisfy a CryptoTransfer and its implied custom fee payments
}
10 changes: 8 additions & 2 deletions services/TokenBurn.proto
Original file line number Diff line number Diff line change
Expand Up @@ -32,9 +32,15 @@ Burns tokens from the Token's treasury Account. If no Supply Key is defined, the
The operation decreases the Total Supply of the Token. Total supply cannot go below zero.
The amount provided must be in the lowest denomination possible. Example:
Token A has 2 decimals. In order to burn 100 tokens, one must provide amount of 10000. In order to burn 100.55 tokens, one must provide amount of 10055.
*/
For non fungible tokens the transaction body accepts serialNumbers list of integers as a parameter.
If neither the amount nor the serialNumbers get filled, a INVALID_TOKEN_BURN_AMOUNT response code will be returned.
If both amount and serialNumbers get filled, a INVALID_TRANSACTION_BODY response code will be returned.
If the serialNumbers' list count is greater than the batch size limit global dynamic property, a BATCH_SIZE_LIMIT_EXCEEDED response code will be returned.
If the serialNumbers list contains a non-positive integer as a serial number, a INVALID_NFT_ID response code will be returned.
*/
message TokenBurnTransactionBody {
TokenID token = 1; // The token for which to burn tokens. If token does not exist, transaction results in INVALID_TOKEN_ID
uint64 amount = 2; // Applicable to tokens of type FUNGIBLE_COMMON. The amount to burn from the Treasury Account. Amount must be a positive non-zero number, not bigger than the token balance of the treasury account (0; balance], represented in the lowest denomination.
repeated int64 serialNumbers = 3; // Applicable to tokens of type NON_FUNGIBLE_UNIQUE. The list of serial numbers to be burned.
}
}
17 changes: 16 additions & 1 deletion services/TokenCreate.proto
Original file line number Diff line number Diff line change
Expand Up @@ -27,19 +27,32 @@ option java_multiple_files = true;

import "Duration.proto";
import "BasicTypes.proto";
import "CustomFees.proto";
import "Timestamp.proto";

/*
Create a new token. After the token is created, the Token ID for it is in the receipt.
The specified Treasury Account is receiving the initial supply of tokens as-well as the tokens from the Token Mint operation once executed. The balance of the treasury account is decreased when the Token Burn operation is executed.
The <tt>initialSupply</tt> is the initial supply of the smallest parts of a token (like a tinybar, not an hbar). These are the smallest units of the token which may be transferred.
The <tt>initialSupply</tt> is the initial supply of the smallest parts of a token (like a tinybar, not an hbar). These are the smallest units of the token which may be transferred.
The supply can change over time. If the total supply at some moment is <i>S</i> parts of tokens, and the token is using <i>D</i> decimals, then <i>S</i> must be less than or equal to 2<sup>63</sup>-1, which is 9,223,372,036,854,775,807. The number of whole tokens (not parts) will be <i>S / 10<sup>D</sup></i>.
If decimals is 8 or 11, then the number of whole tokens can be at most a few billions or millions, respectively. For example, it could match Bitcoin (21 million whole tokens with 8 decimals) or hbars (50 billion whole tokens with 8 decimals). It could even match Bitcoin with milli-satoshis (21 million whole tokens with 11 decimals).
Note that a created token is <i>immutable</i> if the <tt>adminKey</tt> is omitted. No property of an immutable token can ever change, with the sole exception of its expiry. Anyone can pay to extend the expiry time of an immutable token.
A token can be either <i>FUNGIBLE_COMMON</i> or <i>NON_FUNGIBLE_UNIQUE</i>, based on its <i>TokenType</i>. If it has been omitted, <i>FUNGIBLE_COMMON</i> type is used.
A token can have either <i>INFINITE</i> or <i>FINITE</i> supply type, based on its <i>TokenType</i>. If it has been omitted, <i>INFINITE</i> type is used.
If a <i>FUNGIBLE</i> TokenType is used, <i>initialSupply</i> should explicitly be set to a non-negative. If not, the transaction will resolve to INVALID_TOKEN_INITIAL_SUPPLY.
If a <i>NON_FUNGIBLE_UNIQUE</i> TokenType is used, <i>initialSupply</i> should explicitly be set to 0. If not, the transaction will resolve to INVALID_TOKEN_INITIAL_SUPPLY.
If an <i>INFINITE</i> TokenSupplyType is used, <i>maxSupply</i> should explicitly be set to 0. If it is not 0, the transaction will resolve to INVALID_TOKEN_MAX_SUPPLY.
If a <i>FINITE</i> TokenSupplyType is used, <i>maxSupply</i> should be explicitly set to a non-negative value. If it is not, the transaction will resolve to INVALID_TOKEN_MAX_SUPPLY.
*/
message TokenCreateTransactionBody {
string name = 1; // The publicly visible name of the token, limited to a UTF-8 encoding of length <tt>tokens.maxSymbolUtf8Bytes</tt>.
Expand All @@ -60,4 +73,6 @@ message TokenCreateTransactionBody {
TokenType tokenType = 17; // IWA compatibility. Specifies the token type. Defaults to FUNGIBLE_COMMON
TokenSupplyType supplyType = 18; // IWA compatibility. Specified the token supply type. Defaults to INFINITE
int64 maxSupply = 19; // IWA Compatibility. Depends on TokenSupplyType. For tokens of type FUNGIBLE_COMMON - the maximum number of tokens that can be in circulation. For tokens of type NON_FUNGIBLE_UNIQUE - the maximum number of NFTs (serial numbers) that can be minted. This field can never be changed!
Key fee_schedule_key = 20; // The key which can change the token's custom fee schedule; must sign a TokenFeeScheduleUpdate transaction
repeated CustomFee custom_fees = 21; // The custom fees to be assessed during a CryptoTransfer that transfers units of this token
}
Loading

0 comments on commit 131c44e

Please sign in to comment.