Skip to content

Commit

Permalink
feat: Added requireNotFrozen to transaction, added requireNotFrozen t…
Browse files Browse the repository at this point in the history
…o all the setters
  • Loading branch information
andrix10 committed Oct 23, 2020
1 parent 5fb3075 commit 332c7d2
Show file tree
Hide file tree
Showing 35 changed files with 301 additions and 13 deletions.
11 changes: 11 additions & 0 deletions account_create_transaction.go
Original file line number Diff line number Diff line change
Expand Up @@ -43,12 +43,14 @@ func NewAccountCreateTransaction() *AccountCreateTransaction {
// SetKey sets the key that must sign each transfer out of the account. If RecieverSignatureRequired is true, then it
// must also sign any transfer into the account.
func (transaction *AccountCreateTransaction) SetKey(publicKey PublicKey) *AccountCreateTransaction {
transaction.requireNotFrozen()
transaction.pb.Key = publicKey.toProtoKey()
return transaction
}

// SetInitialBalance sets the initial number of Hbar to put into the account
func (transaction *AccountCreateTransaction) SetInitialBalance(initialBalance Hbar) *AccountCreateTransaction {
transaction.requireNotFrozen()
transaction.pb.InitialBalance = uint64(initialBalance.AsTinybar())
return transaction
}
Expand All @@ -60,6 +62,7 @@ func (transaction *AccountCreateTransaction) SetInitialBalance(initialBalance Hb
// hbars are used to extend its expiration as long as possible. If it is has a zero balance when it expires,
// then it is deleted.
func (transaction *AccountCreateTransaction) SetAutoRenewPeriod(autoRenewPeriod time.Duration) *AccountCreateTransaction {
transaction.requireNotFrozen()
transaction.pb.AutoRenewPeriod = durationToProtobuf(autoRenewPeriod)
return transaction
}
Expand All @@ -69,6 +72,7 @@ func (transaction *AccountCreateTransaction) SetAutoRenewPeriod(autoRenewPeriod
//
// Deprecated: No longer used by Hedera
func (transaction *AccountCreateTransaction) SetSendRecordThreshold(recordThreshold Hbar) *AccountCreateTransaction {
transaction.requireNotFrozen()
transaction.pb.SendRecordThreshold = uint64(recordThreshold.AsTinybar())
return transaction
}
Expand All @@ -78,6 +82,7 @@ func (transaction *AccountCreateTransaction) SetSendRecordThreshold(recordThresh
//
// Deprecated: No longer used by Hedera
func (transaction *AccountCreateTransaction) SetReceiveRecordThreshold(recordThreshold Hbar) *AccountCreateTransaction {
transaction.requireNotFrozen()
transaction.pb.ReceiveRecordThreshold = uint64(recordThreshold.AsTinybar())
return transaction
}
Expand All @@ -87,6 +92,7 @@ func (transaction *AccountCreateTransaction) SetReceiveRecordThreshold(recordThr
// chosen by the network, but without earning payments. If the proxyAccountID account refuses to accept proxy staking ,
// or if it is not currently running a node, then it will behave as if proxyAccountID was not set.
func (transaction *AccountCreateTransaction) SetProxyAccountID(id AccountID) *AccountCreateTransaction {
transaction.requireNotFrozen()
transaction.pb.ProxyAccountID = id.toProtobuf()
return transaction
}
Expand Down Expand Up @@ -240,6 +246,7 @@ func (transaction *AccountCreateTransaction) GetMaxTransactionFee() Hbar {

// SetMaxTransactionFee sets the max transaction fee for this AccountCreateTransaction.
func (transaction *AccountCreateTransaction) SetMaxTransactionFee(fee Hbar) *AccountCreateTransaction {
transaction.requireNotFrozen()
transaction.Transaction.SetMaxTransactionFee(fee)
return transaction
}
Expand All @@ -250,6 +257,7 @@ func (transaction *AccountCreateTransaction) GetTransactionMemo() string {

// SetTransactionMemo sets the memo for this AccountCreateTransaction.
func (transaction *AccountCreateTransaction) SetTransactionMemo(memo string) *AccountCreateTransaction {
transaction.requireNotFrozen()
transaction.Transaction.SetTransactionMemo(memo)
return transaction
}
Expand All @@ -260,6 +268,7 @@ func (transaction *AccountCreateTransaction) GetTransactionValidDuration() time.

// SetTransactionValidDuration sets the valid duration for this AccountCreateTransaction.
func (transaction *AccountCreateTransaction) SetTransactionValidDuration(duration time.Duration) *AccountCreateTransaction {
transaction.requireNotFrozen()
transaction.Transaction.SetTransactionValidDuration(duration)
return transaction
}
Expand All @@ -270,6 +279,7 @@ func (transaction *AccountCreateTransaction) GetTransactionID() TransactionID {

// SetTransactionID sets the TransactionID for this AccountCreateTransaction.
func (transaction *AccountCreateTransaction) SetTransactionID(transactionID TransactionID) *AccountCreateTransaction {
transaction.requireNotFrozen()
transaction.id = transactionID
transaction.Transaction.SetTransactionID(transactionID)
return transaction
Expand All @@ -281,6 +291,7 @@ func (transaction *AccountCreateTransaction) GetNodeAccountIDs() []AccountID {

// SetNodeAccountID sets the node AccountID for this AccountCreateTransaction.
func (transaction *AccountCreateTransaction) SetNodeAccountIDs(nodeID []AccountID) *AccountCreateTransaction {
transaction.requireNotFrozen()
transaction.Transaction.SetNodeAccountIDs(nodeID)
return transaction
}
7 changes: 7 additions & 0 deletions account_delete_transaction.go
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ func NewAccountDeleteTransaction() *AccountDeleteTransaction {
}

func (transaction *AccountDeleteTransaction) SetAccountID(accountID AccountID) *AccountDeleteTransaction {
transaction.requireNotFrozen()
transaction.pb.DeleteAccountID = accountID.toProtobuf()
return transaction
}
Expand All @@ -38,6 +39,7 @@ func (transaction *AccountDeleteTransaction) GetAccountID() AccountID {
}

func (transaction *AccountDeleteTransaction) SetTransferAccountID(transferAccountID AccountID) *AccountDeleteTransaction {
transaction.requireNotFrozen()
transaction.pb.TransferAccountID = transferAccountID.toProtobuf()
return transaction
}
Expand Down Expand Up @@ -185,6 +187,7 @@ func (transaction *AccountDeleteTransaction) GetMaxTransactionFee() Hbar {

// SetMaxTransactionFee sets the max transaction fee for this AccountDeleteTransaction.
func (transaction *AccountDeleteTransaction) SetMaxTransactionFee(fee Hbar) *AccountDeleteTransaction {
transaction.requireNotFrozen()
transaction.Transaction.SetMaxTransactionFee(fee)
return transaction
}
Expand All @@ -195,6 +198,7 @@ func (transaction *AccountDeleteTransaction) GetTransactionMemo() string {

// SetTransactionMemo sets the memo for this AccountDeleteTransaction.
func (transaction *AccountDeleteTransaction) SetTransactionMemo(memo string) *AccountDeleteTransaction {
transaction.requireNotFrozen()
transaction.Transaction.SetTransactionMemo(memo)
return transaction
}
Expand All @@ -205,6 +209,7 @@ func (transaction *AccountDeleteTransaction) GetTransactionValidDuration() time.

// SetTransactionValidDuration sets the valid duration for this AccountDeleteTransaction.
func (transaction *AccountDeleteTransaction) SetTransactionValidDuration(duration time.Duration) *AccountDeleteTransaction {
transaction.requireNotFrozen()
transaction.Transaction.SetTransactionValidDuration(duration)
return transaction
}
Expand All @@ -215,6 +220,7 @@ func (transaction *AccountDeleteTransaction) GetTransactionID() TransactionID {

// SetTransactionID sets the TransactionID for this AccountDeleteTransaction.
func (transaction *AccountDeleteTransaction) SetTransactionID(transactionID TransactionID) *AccountDeleteTransaction {
transaction.requireNotFrozen()
transaction.id = transactionID
transaction.Transaction.SetTransactionID(transactionID)
return transaction
Expand All @@ -226,6 +232,7 @@ func (transaction *AccountDeleteTransaction) GetNodeAccountIDs() []AccountID {

// SetNodeAccountID sets the node AccountID for this AccountCreateTransaction.
func (transaction *AccountDeleteTransaction) SetNodeAccountIDs(nodeID []AccountID) *AccountDeleteTransaction {
transaction.requireNotFrozen()
transaction.Transaction.SetNodeAccountIDs(nodeID)
return transaction
}
11 changes: 11 additions & 0 deletions account_update_transaction.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ func NewAccountUpdateTransaction() *AccountUpdateTransaction {
}

func (transaction *AccountUpdateTransaction) SetKey(publicKey PublicKey) *AccountUpdateTransaction {
transaction.requireNotFrozen()
transaction.pb.Key = publicKey.toProtoKey()
return transaction
}
Expand All @@ -30,6 +31,7 @@ func (transaction *AccountUpdateTransaction) GetKey() (Key, error) {
}

func (transaction *AccountUpdateTransaction) SetAccountID(accountID AccountID) *AccountUpdateTransaction {
transaction.requireNotFrozen()
transaction.pb.AccountIDToUpdate = accountID.toProtobuf()
return transaction
}
Expand All @@ -39,6 +41,7 @@ func (transaction *AccountUpdateTransaction) GetAccountID() AccountID {
}

func (transaction *AccountUpdateTransaction) SetReceiverSignatureRequired(receiverSignatureRequired bool) *AccountUpdateTransaction {
transaction.requireNotFrozen()
transaction.pb.GetReceiverSigRequiredWrapper().Value = receiverSignatureRequired
return transaction
}
Expand All @@ -48,6 +51,7 @@ func (transaction *AccountUpdateTransaction) GetReceiverSignatureRequired() bool
}

func (transaction *AccountUpdateTransaction) SetProxyAccountID(proxyAccountID AccountID) *AccountUpdateTransaction {
transaction.requireNotFrozen()
transaction.pb.ProxyAccountID = proxyAccountID.toProtobuf()
return transaction
}
Expand All @@ -57,6 +61,7 @@ func (transaction *AccountUpdateTransaction) GetProxyAccountID() AccountID {
}

func (transaction *AccountUpdateTransaction) SetAutoRenewPeriod(autoRenewPeriod time.Duration) *AccountUpdateTransaction {
transaction.requireNotFrozen()
transaction.pb.AutoRenewPeriod = durationToProtobuf(autoRenewPeriod)
return transaction
}
Expand All @@ -66,6 +71,7 @@ func (transaction *AccountUpdateTransaction) GetAutoRenewPeriod() time.Duration
}

func (transaction *AccountUpdateTransaction) SetExpirationTime(expirationTime time.Time) *AccountUpdateTransaction {
transaction.requireNotFrozen()
transaction.pb.ExpirationTime = timeToProtobuf(expirationTime)
return transaction
}
Expand Down Expand Up @@ -213,6 +219,7 @@ func (transaction *AccountUpdateTransaction) GetMaxTransactionFee() Hbar {

// SetMaxTransactionFee sets the max transaction fee for this AccountUpdateTransaction.
func (transaction *AccountUpdateTransaction) SetMaxTransactionFee(fee Hbar) *AccountUpdateTransaction {
transaction.requireNotFrozen()
transaction.Transaction.SetMaxTransactionFee(fee)
return transaction
}
Expand All @@ -223,6 +230,7 @@ func (transaction *AccountUpdateTransaction) GetTransactionMemo() string {

// SetTransactionMemo sets the memo for this AccountUpdateTransaction.
func (transaction *AccountUpdateTransaction) SetTransactionMemo(memo string) *AccountUpdateTransaction {
transaction.requireNotFrozen()
transaction.Transaction.SetTransactionMemo(memo)
return transaction
}
Expand All @@ -233,6 +241,7 @@ func (transaction *AccountUpdateTransaction) GetTransactionValidDuration() time.

// SetTransactionValidDuration sets the valid duration for this AccountUpdateTransaction.
func (transaction *AccountUpdateTransaction) SetTransactionValidDuration(duration time.Duration) *AccountUpdateTransaction {
transaction.requireNotFrozen()
transaction.Transaction.SetTransactionValidDuration(duration)
return transaction
}
Expand All @@ -243,6 +252,7 @@ func (transaction *AccountUpdateTransaction) GetTransactionID() TransactionID {

// SetTransactionID sets the TransactionID for this AccountUpdateTransaction.
func (transaction *AccountUpdateTransaction) SetTransactionID(transactionID TransactionID) *AccountUpdateTransaction {
transaction.requireNotFrozen()
transaction.id = transactionID
transaction.Transaction.SetTransactionID(transactionID)
return transaction
Expand All @@ -254,6 +264,7 @@ func (transaction *AccountUpdateTransaction) GetNodeAccountIDs() []AccountID {

// SetNodeAccountID sets the node AccountID for this AccountUpdateTransaction.
func (transaction *AccountUpdateTransaction) SetNodeAccountIDs(nodeID []AccountID) *AccountUpdateTransaction {
transaction.requireNotFrozen()
transaction.Transaction.SetNodeAccountIDs(nodeID)
return transaction
}
14 changes: 14 additions & 0 deletions contract_create_transaction.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ func NewContractCreateTransaction() *ContractCreateTransaction {
}

func (transaction *ContractCreateTransaction) SetBytecodeFileID(bytecodeFileID FileID) *ContractCreateTransaction {
transaction.requireNotFrozen()
transaction.pb.FileID = bytecodeFileID.toProtobuf()
return transaction
}
Expand All @@ -34,6 +35,7 @@ func (transaction *ContractCreateTransaction) GetBytecodeFileID() FileID {
}

func (transaction *ContractCreateTransaction) SetAdminKey(adminKey Key) *ContractCreateTransaction {
transaction.requireNotFrozen()
transaction.pb.AdminKey = adminKey.toProtoKey()
return transaction
}
Expand All @@ -43,6 +45,7 @@ func (transaction *ContractCreateTransaction) GetAdminKey() (Key, error) {
}

func (transaction *ContractCreateTransaction) SetGas(gas uint64) *ContractCreateTransaction {
transaction.requireNotFrozen()
transaction.pb.Gas = int64(gas)
return transaction
}
Expand All @@ -53,6 +56,7 @@ func (transaction *ContractCreateTransaction) GetGas() uint64 {

// SetInitialBalance sets the initial number of Hbar to put into the account
func (transaction *ContractCreateTransaction) SetInitialBalance(initialBalance Hbar) *ContractCreateTransaction {
transaction.requireNotFrozen()
transaction.pb.InitialBalance = initialBalance.AsTinybar()
return transaction
}
Expand All @@ -69,6 +73,7 @@ func (transaction *ContractCreateTransaction) GetInitialBalance() Hbar {
// hbars are used to extend its expiration as long as possible. If it is has a zero balance when it expires,
// then it is deleted.
func (transaction *ContractCreateTransaction) SetAutoRenewPeriod(autoRenewPeriod time.Duration) *ContractCreateTransaction {
transaction.requireNotFrozen()
transaction.pb.AutoRenewPeriod = durationToProtobuf(autoRenewPeriod)
return transaction
}
Expand All @@ -82,6 +87,7 @@ func (transaction *ContractCreateTransaction) GetAutoRenewPeriod() time.Duration
// chosen by the network, but without earning payments. If the proxyAccountID account refuses to accept proxy staking ,
// or if it is not currently running a node, then it will behave as if proxyAccountID was not set.
func (transaction *ContractCreateTransaction) SetProxyAccountID(ID AccountID) *ContractCreateTransaction {
transaction.requireNotFrozen()
transaction.pb.ProxyAccountID = ID.toProtobuf()
return transaction
}
Expand All @@ -91,11 +97,13 @@ func (transaction *ContractCreateTransaction) GetProxyAccountID() AccountID {
}

func (transaction *ContractCreateTransaction) SetConstructorParameters(params *ContractFunctionParameters) *ContractCreateTransaction {
transaction.requireNotFrozen()
transaction.pb.ConstructorParameters = params.build(nil)
return transaction
}

func (transaction *ContractCreateTransaction) SetConstructorParametersRaw(params []byte) *ContractCreateTransaction {
transaction.requireNotFrozen()
transaction.pb.ConstructorParameters = params
return transaction
}
Expand All @@ -105,6 +113,7 @@ func (transaction *ContractCreateTransaction) GetConstructorParameters() []byte
}

func (transaction *ContractCreateTransaction) SetContractMemo(memo string) *ContractCreateTransaction {
transaction.requireNotFrozen()
transaction.pb.Memo = memo
return transaction
}
Expand Down Expand Up @@ -252,6 +261,7 @@ func (transaction *ContractCreateTransaction) GetMaxTransactionFee() Hbar {

// SetMaxTransactionFee sets the max transaction fee for this ContractCreateTransaction.
func (transaction *ContractCreateTransaction) SetMaxTransactionFee(fee Hbar) *ContractCreateTransaction {
transaction.requireNotFrozen()
transaction.Transaction.SetMaxTransactionFee(fee)
return transaction
}
Expand All @@ -262,6 +272,7 @@ func (transaction *ContractCreateTransaction) GetTransactionMemo() string {

// SetTransactionMemo sets the memo for this ContractCreateTransaction.
func (transaction *ContractCreateTransaction) SetTransactionMemo(memo string) *ContractCreateTransaction {
transaction.requireNotFrozen()
transaction.Transaction.SetTransactionMemo(memo)
return transaction
}
Expand All @@ -272,6 +283,7 @@ func (transaction *ContractCreateTransaction) GetTransactionValidDuration() time

// SetTransactionValidDuration sets the valid duration for this ContractCreateTransaction.
func (transaction *ContractCreateTransaction) SetTransactionValidDuration(duration time.Duration) *ContractCreateTransaction {
transaction.requireNotFrozen()
transaction.Transaction.SetTransactionValidDuration(duration)
return transaction
}
Expand All @@ -282,6 +294,7 @@ func (transaction *ContractCreateTransaction) GetTransactionID() TransactionID {

// SetTransactionID sets the TransactionID for this ContractCreateTransaction.
func (transaction *ContractCreateTransaction) SetTransactionID(transactionID TransactionID) *ContractCreateTransaction {
transaction.requireNotFrozen()
transaction.id = transactionID
transaction.Transaction.SetTransactionID(transactionID)
return transaction
Expand All @@ -293,6 +306,7 @@ func (transaction *ContractCreateTransaction) GetNodeAccountIDs() []AccountID {

// SetNodeAccountID sets the node AccountID for this ContractCreateTransaction.
func (transaction *ContractCreateTransaction) SetNodeAccountIDs(nodeID []AccountID) *ContractCreateTransaction {
transaction.requireNotFrozen()
transaction.Transaction.SetNodeAccountIDs(nodeID)
return transaction
}
Loading

0 comments on commit 332c7d2

Please sign in to comment.