Treat service as an int in ArbitraryTransactionData

This commit is contained in:
CalDescent 2023-03-18 10:40:27 +00:00
parent 534a44d0ce
commit 2bee3cbb5c
6 changed files with 12 additions and 12 deletions

View File

@ -274,7 +274,7 @@ public class ArbitraryDataTransactionBuilder {
final List<PaymentData> payments = new ArrayList<>(); final List<PaymentData> payments = new ArrayList<>();
ArbitraryTransactionData transactionData = new ArbitraryTransactionData(baseTransactionData, ArbitraryTransactionData transactionData = new ArbitraryTransactionData(baseTransactionData,
version, service, nonce, size, name, identifier, method, version, service.value, nonce, size, name, identifier, method,
secret, compression, digest, dataType, metadataHash, payments); secret, compression, digest, dataType, metadataHash, payments);
this.arbitraryTransactionData = transactionData; this.arbitraryTransactionData = transactionData;

View File

@ -73,7 +73,7 @@ public class ArbitraryTransactionData extends TransactionData {
@Schema(example = "sender_public_key") @Schema(example = "sender_public_key")
private byte[] senderPublicKey; private byte[] senderPublicKey;
private Service service; private int service;
private int nonce; private int nonce;
private int size; private int size;
@ -103,7 +103,7 @@ public class ArbitraryTransactionData extends TransactionData {
} }
public ArbitraryTransactionData(BaseTransactionData baseTransactionData, public ArbitraryTransactionData(BaseTransactionData baseTransactionData,
int version, Service service, int nonce, int size, int version, int service, int nonce, int size,
String name, String identifier, Method method, byte[] secret, Compression compression, String name, String identifier, Method method, byte[] secret, Compression compression,
byte[] data, DataType dataType, byte[] metadataHash, List<PaymentData> payments) { byte[] data, DataType dataType, byte[] metadataHash, List<PaymentData> payments) {
super(TransactionType.ARBITRARY, baseTransactionData); super(TransactionType.ARBITRARY, baseTransactionData);
@ -135,7 +135,7 @@ public class ArbitraryTransactionData extends TransactionData {
} }
public Service getService() { public Service getService() {
return this.service; return Service.valueOf(this.service);
} }
public int getNonce() { public int getNonce() {

View File

@ -202,7 +202,7 @@ public class HSQLDBArbitraryRepository implements ArbitraryRepository {
int version = resultSet.getInt(11); int version = resultSet.getInt(11);
int nonce = resultSet.getInt(12); int nonce = resultSet.getInt(12);
Service serviceResult = Service.valueOf(resultSet.getInt(13)); int serviceInt = resultSet.getInt(13);
int size = resultSet.getInt(14); int size = resultSet.getInt(14);
boolean isDataRaw = resultSet.getBoolean(15); // NOT NULL, so no null to false boolean isDataRaw = resultSet.getBoolean(15); // NOT NULL, so no null to false
DataType dataType = isDataRaw ? DataType.RAW_DATA : DataType.DATA_HASH; DataType dataType = isDataRaw ? DataType.RAW_DATA : DataType.DATA_HASH;
@ -216,7 +216,7 @@ public class HSQLDBArbitraryRepository implements ArbitraryRepository {
// FUTURE: get payments from signature if needed. Avoiding for now to reduce database calls. // FUTURE: get payments from signature if needed. Avoiding for now to reduce database calls.
ArbitraryTransactionData transactionData = new ArbitraryTransactionData(baseTransactionData, ArbitraryTransactionData transactionData = new ArbitraryTransactionData(baseTransactionData,
version, serviceResult, nonce, size, nameResult, identifierResult, method, secret, version, serviceInt, nonce, size, nameResult, identifierResult, method, secret,
compression, data, dataType, metadataHash, null); compression, data, dataType, metadataHash, null);
arbitraryTransactionData.add(transactionData); arbitraryTransactionData.add(transactionData);
@ -277,7 +277,7 @@ public class HSQLDBArbitraryRepository implements ArbitraryRepository {
int version = resultSet.getInt(11); int version = resultSet.getInt(11);
int nonce = resultSet.getInt(12); int nonce = resultSet.getInt(12);
Service serviceResult = Service.valueOf(resultSet.getInt(13)); int serviceInt = resultSet.getInt(13);
int size = resultSet.getInt(14); int size = resultSet.getInt(14);
boolean isDataRaw = resultSet.getBoolean(15); // NOT NULL, so no null to false boolean isDataRaw = resultSet.getBoolean(15); // NOT NULL, so no null to false
DataType dataType = isDataRaw ? DataType.RAW_DATA : DataType.DATA_HASH; DataType dataType = isDataRaw ? DataType.RAW_DATA : DataType.DATA_HASH;
@ -291,7 +291,7 @@ public class HSQLDBArbitraryRepository implements ArbitraryRepository {
// FUTURE: get payments from signature if needed. Avoiding for now to reduce database calls. // FUTURE: get payments from signature if needed. Avoiding for now to reduce database calls.
ArbitraryTransactionData transactionData = new ArbitraryTransactionData(baseTransactionData, ArbitraryTransactionData transactionData = new ArbitraryTransactionData(baseTransactionData,
version, serviceResult, nonce, size, nameResult, identifierResult, methodResult, secret, version, serviceInt, nonce, size, nameResult, identifierResult, methodResult, secret,
compression, data, dataType, metadataHash, null); compression, data, dataType, metadataHash, null);
return transactionData; return transactionData;

View File

@ -31,7 +31,7 @@ public class HSQLDBArbitraryTransactionRepository extends HSQLDBTransactionRepos
int version = resultSet.getInt(1); int version = resultSet.getInt(1);
int nonce = resultSet.getInt(2); int nonce = resultSet.getInt(2);
Service service = Service.valueOf(resultSet.getInt(3)); int serviceInt = resultSet.getInt(3);
int size = resultSet.getInt(4); int size = resultSet.getInt(4);
boolean isDataRaw = resultSet.getBoolean(5); // NOT NULL, so no null to false boolean isDataRaw = resultSet.getBoolean(5); // NOT NULL, so no null to false
DataType dataType = isDataRaw ? DataType.RAW_DATA : DataType.DATA_HASH; DataType dataType = isDataRaw ? DataType.RAW_DATA : DataType.DATA_HASH;
@ -44,7 +44,7 @@ public class HSQLDBArbitraryTransactionRepository extends HSQLDBTransactionRepos
ArbitraryTransactionData.Compression compression = ArbitraryTransactionData.Compression.valueOf(resultSet.getInt(12)); ArbitraryTransactionData.Compression compression = ArbitraryTransactionData.Compression.valueOf(resultSet.getInt(12));
List<PaymentData> payments = this.getPaymentsFromSignature(baseTransactionData.getSignature()); List<PaymentData> payments = this.getPaymentsFromSignature(baseTransactionData.getSignature());
return new ArbitraryTransactionData(baseTransactionData, version, service, nonce, size, name, return new ArbitraryTransactionData(baseTransactionData, version, serviceInt, nonce, size, name,
identifier, method, secret, compression, data, dataType, metadataHash, payments); identifier, method, secret, compression, data, dataType, metadataHash, payments);
} catch (SQLException e) { } catch (SQLException e) {
throw new DataException("Unable to fetch arbitrary transaction from repository", e); throw new DataException("Unable to fetch arbitrary transaction from repository", e);

View File

@ -131,7 +131,7 @@ public class ArbitraryTransactionTransformer extends TransactionTransformer {
payments.add(PaymentTransformer.fromByteBuffer(byteBuffer)); payments.add(PaymentTransformer.fromByteBuffer(byteBuffer));
} }
Service service = Service.valueOf(byteBuffer.getInt()); int service = byteBuffer.getInt();
// We might be receiving hash of data instead of actual raw data // We might be receiving hash of data instead of actual raw data
boolean isRaw = byteBuffer.get() != 0; boolean isRaw = byteBuffer.get() != 0;

View File

@ -45,7 +45,7 @@ public class ArbitraryTestTransaction extends TestTransaction {
List<PaymentData> payments = new ArrayList<>(); List<PaymentData> payments = new ArrayList<>();
payments.add(new PaymentData(recipient, assetId, amount)); payments.add(new PaymentData(recipient, assetId, amount));
return new ArbitraryTransactionData(generateBase(account), version, service, nonce, size,name, identifier, return new ArbitraryTransactionData(generateBase(account), version, service.value, nonce, size,name, identifier,
method, secret, compression, data, dataType, metadataHash, payments); method, secret, compression, data, dataType, metadataHash, payments);
} }