diff --git a/ledger/allegra.go b/ledger/allegra.go index 246d79e5..40622259 100644 --- a/ledger/allegra.go +++ b/ledger/allegra.go @@ -130,6 +130,14 @@ func (b *AllegraTransactionBody) ValidityIntervalStart() uint64 { return b.TxValidityIntervalStart } +func (b *AllegraTransactionBody) ProtocolParametersUpdate() map[Blake2b224]any { + updateMap := make(map[Blake2b224]any) + for k, v := range b.Update.ProtocolParamUpdates { + updateMap[k] = v + } + return updateMap +} + type AllegraTransaction struct { cbor.StructAsArray cbor.DecodeStoreCbor @@ -238,12 +246,8 @@ func (t AllegraTransaction) Produced() []TransactionOutput { return t.Outputs() } -func (t *AllegraTransaction) ProtocolParametersUpdate() map[Blake2b224]any { - updateMap := make(map[Blake2b224]any) - for k, v := range t.Body.Update.ProtocolParamUpdates { - updateMap[k] = v - } - return updateMap +func (t AllegraTransaction) ProtocolParametersUpdate() map[Blake2b224]any { + return t.Body.ProtocolParametersUpdate() } func (t *AllegraTransaction) Cbor() []byte { diff --git a/ledger/alonzo.go b/ledger/alonzo.go index 5c86d0bb..b6e842ba 100644 --- a/ledger/alonzo.go +++ b/ledger/alonzo.go @@ -147,6 +147,14 @@ func (b *AlonzoTransactionBody) Outputs() []TransactionOutput { return ret } +func (b *AlonzoTransactionBody) ProtocolParametersUpdate() map[Blake2b224]any { + updateMap := make(map[Blake2b224]any) + for k, v := range b.Update.ProtocolParamUpdates { + updateMap[k] = v + } + return updateMap +} + func (b *AlonzoTransactionBody) Collateral() []TransactionInput { ret := []TransactionInput{} for _, collateral := range b.TxCollateral { @@ -289,6 +297,10 @@ func (t AlonzoTransaction) ValidityIntervalStart() uint64 { return t.Body.ValidityIntervalStart() } +func (t AlonzoTransaction) ProtocolParametersUpdate() map[Blake2b224]any { + return t.Body.ProtocolParametersUpdate() +} + func (t AlonzoTransaction) ReferenceInputs() []TransactionInput { return t.Body.ReferenceInputs() } @@ -370,14 +382,6 @@ func (t AlonzoTransaction) Produced() []TransactionOutput { } } -func (t *AlonzoTransaction) ProtocolParametersUpdate() map[Blake2b224]any { - updateMap := make(map[Blake2b224]any) - for k, v := range t.Body.Update.ProtocolParamUpdates { - updateMap[k] = v - } - return updateMap -} - func (t *AlonzoTransaction) Cbor() []byte { // Return stored CBOR if we have any cborData := t.DecodeStoreCbor.Cbor() diff --git a/ledger/babbage.go b/ledger/babbage.go index ee659aa7..9d04f9e0 100644 --- a/ledger/babbage.go +++ b/ledger/babbage.go @@ -199,6 +199,14 @@ func (b *BabbageTransactionBody) Outputs() []TransactionOutput { return ret } +func (b *BabbageTransactionBody) ProtocolParametersUpdate() map[Blake2b224]any { + updateMap := make(map[Blake2b224]any) + for k, v := range b.Update.ProtocolParamUpdates { + updateMap[k] = v + } + return updateMap +} + func (b *BabbageTransactionBody) ReferenceInputs() []TransactionInput { ret := []TransactionInput{} for _, input := range b.TxReferenceInputs { @@ -455,6 +463,10 @@ func (t BabbageTransaction) ValidityIntervalStart() uint64 { return t.Body.ValidityIntervalStart() } +func (t BabbageTransaction) ProtocolParametersUpdate() map[Blake2b224]any { + return t.Body.ProtocolParametersUpdate() +} + func (t BabbageTransaction) ReferenceInputs() []TransactionInput { return t.Body.ReferenceInputs() } @@ -538,14 +550,6 @@ func (t BabbageTransaction) Produced() []TransactionOutput { } } -func (t *BabbageTransaction) ProtocolParametersUpdate() map[Blake2b224]any { - updateMap := make(map[Blake2b224]any) - for k, v := range t.Body.Update.ProtocolParamUpdates { - updateMap[k] = v - } - return updateMap -} - func (t *BabbageTransaction) Cbor() []byte { // Return stored CBOR if we have any cborData := t.DecodeStoreCbor.Cbor() diff --git a/ledger/conway.go b/ledger/conway.go index 6bc180e1..badecf0c 100644 --- a/ledger/conway.go +++ b/ledger/conway.go @@ -131,6 +131,14 @@ func (b *ConwayTransactionBody) UnmarshalCBOR(cborData []byte) error { return b.UnmarshalCbor(cborData, b) } +func (b *ConwayTransactionBody) ProtocolParametersUpdate() map[Blake2b224]any { + updateMap := make(map[Blake2b224]any) + for k, v := range b.Update.ProtocolParamUpdates { + updateMap[k] = v + } + return updateMap +} + func (b *ConwayTransactionBody) VotingProcedures() VotingProcedures { return b.TxVotingProcedures } @@ -357,6 +365,10 @@ func (t ConwayTransaction) ValidityIntervalStart() uint64 { return t.Body.ValidityIntervalStart() } +func (t ConwayTransaction) ProtocolParametersUpdate() map[Blake2b224]any { + return t.Body.ProtocolParametersUpdate() +} + func (t ConwayTransaction) ReferenceInputs() []TransactionInput { return t.Body.ReferenceInputs() } @@ -440,14 +452,6 @@ func (t ConwayTransaction) Produced() []TransactionOutput { } } -func (t *ConwayTransaction) ProtocolParametersUpdate() map[Blake2b224]any { - updateMap := make(map[Blake2b224]any) - for k, v := range t.Body.Update.ProtocolParamUpdates { - updateMap[k] = v - } - return updateMap -} - func (t *ConwayTransaction) Cbor() []byte { // Return stored CBOR if we have any cborData := t.DecodeStoreCbor.Cbor() diff --git a/ledger/mary.go b/ledger/mary.go index 85938b7b..02c8b548 100644 --- a/ledger/mary.go +++ b/ledger/mary.go @@ -137,6 +137,14 @@ func (b *MaryTransactionBody) Outputs() []TransactionOutput { return ret } +func (b *MaryTransactionBody) ProtocolParametersUpdate() map[Blake2b224]any { + updateMap := make(map[Blake2b224]any) + for k, v := range b.Update.ProtocolParamUpdates { + updateMap[k] = v + } + return updateMap +} + func (b *MaryTransactionBody) AssetMint() *MultiAsset[MultiAssetTypeMint] { return b.TxMint } @@ -179,6 +187,10 @@ func (t MaryTransaction) ValidityIntervalStart() uint64 { return t.Body.ValidityIntervalStart() } +func (t MaryTransaction) ProtocolParametersUpdate() map[Blake2b224]any { + return t.Body.ProtocolParametersUpdate() +} + func (t MaryTransaction) ReferenceInputs() []TransactionInput { return t.Body.ReferenceInputs() } @@ -251,14 +263,6 @@ func (t MaryTransaction) Produced() []TransactionOutput { return t.Outputs() } -func (t *MaryTransaction) ProtocolParametersUpdate() map[Blake2b224]any { - updateMap := make(map[Blake2b224]any) - for k, v := range t.Body.Update.ProtocolParamUpdates { - updateMap[k] = v - } - return updateMap -} - func (t *MaryTransaction) Cbor() []byte { // Return stored CBOR if we have any cborData := t.DecodeStoreCbor.Cbor() diff --git a/ledger/shelley.go b/ledger/shelley.go index 6e33933f..291124b8 100644 --- a/ledger/shelley.go +++ b/ledger/shelley.go @@ -218,6 +218,14 @@ func (b *ShelleyTransactionBody) ValidityIntervalStart() uint64 { return 0 } +func (b *ShelleyTransactionBody) ProtocolParametersUpdate() map[Blake2b224]any { + updateMap := make(map[Blake2b224]any) + for k, v := range b.Update.ProtocolParamUpdates { + updateMap[k] = v + } + return updateMap +} + func (b *ShelleyTransactionBody) ReferenceInputs() []TransactionInput { return []TransactionInput{} } @@ -503,11 +511,7 @@ func (t ShelleyTransaction) Utxorpc() *utxorpc.Tx { } func (t *ShelleyTransaction) ProtocolParametersUpdate() map[Blake2b224]any { - updateMap := make(map[Blake2b224]any) - for k, v := range t.Body.Update.ProtocolParamUpdates { - updateMap[k] = v - } - return updateMap + return t.Body.ProtocolParametersUpdate() } func (t *ShelleyTransaction) Cbor() []byte { diff --git a/ledger/tx.go b/ledger/tx.go index 77fbeebc..8c4eef50 100644 --- a/ledger/tx.go +++ b/ledger/tx.go @@ -30,7 +30,6 @@ type Transaction interface { IsValid() bool Consumed() []TransactionInput Produced() []TransactionOutput - ProtocolParametersUpdate() map[Blake2b224]any } type TransactionBody interface { @@ -40,6 +39,7 @@ type TransactionBody interface { Inputs() []TransactionInput Outputs() []TransactionOutput TTL() uint64 + ProtocolParametersUpdate() map[Blake2b224]any ValidityIntervalStart() uint64 ReferenceInputs() []TransactionInput Collateral() []TransactionInput