diff --git a/lib/org/ciyam/AT/1.3.6/AT-1.3.6.jar b/lib/org/ciyam/AT/1.3.7/AT-1.3.7.jar similarity index 53% rename from lib/org/ciyam/AT/1.3.6/AT-1.3.6.jar rename to lib/org/ciyam/AT/1.3.7/AT-1.3.7.jar index d3e341e3..0e43ba18 100644 Binary files a/lib/org/ciyam/AT/1.3.6/AT-1.3.6.jar and b/lib/org/ciyam/AT/1.3.7/AT-1.3.7.jar differ diff --git a/lib/org/ciyam/AT/1.3.6/AT-1.3.6.pom b/lib/org/ciyam/AT/1.3.7/AT-1.3.7.pom similarity index 94% rename from lib/org/ciyam/AT/1.3.6/AT-1.3.6.pom rename to lib/org/ciyam/AT/1.3.7/AT-1.3.7.pom index e3b023df..a38b49f4 100644 --- a/lib/org/ciyam/AT/1.3.6/AT-1.3.6.pom +++ b/lib/org/ciyam/AT/1.3.7/AT-1.3.7.pom @@ -4,6 +4,6 @@ 4.0.0 org.ciyam AT - 1.3.6 + 1.3.7 POM was created from install:install-file diff --git a/lib/org/ciyam/AT/maven-metadata-local.xml b/lib/org/ciyam/AT/maven-metadata-local.xml index a60ba88f..ff99d403 100644 --- a/lib/org/ciyam/AT/maven-metadata-local.xml +++ b/lib/org/ciyam/AT/maven-metadata-local.xml @@ -3,12 +3,13 @@ org.ciyam AT - 1.3.6 + 1.3.7 1.3.4 1.3.5 1.3.6 + 1.3.7 - 20200810130321 + 20200812131412 diff --git a/pom.xml b/pom.xml index 4fa70c84..150b61b3 100644 --- a/pom.xml +++ b/pom.xml @@ -9,7 +9,7 @@ 0.15.5 1.64 ${maven.build.timestamp} - 1.3.6 + 1.3.7 3.6 1.8 1.2.2 diff --git a/src/main/java/org/qortal/api/resource/AtResource.java b/src/main/java/org/qortal/api/resource/AtResource.java index 86b79da9..29a2344d 100644 --- a/src/main/java/org/qortal/api/resource/AtResource.java +++ b/src/main/java/org/qortal/api/resource/AtResource.java @@ -25,7 +25,6 @@ import org.qortal.api.ApiError; import org.qortal.api.ApiErrors; import org.qortal.api.ApiException; import org.qortal.api.ApiExceptionFactory; -import org.qortal.at.QortalAtLoggerFactory; import org.qortal.data.at.ATData; import org.qortal.data.at.ATStateData; import org.qortal.data.transaction.DeployAtTransactionData; @@ -147,8 +146,7 @@ public class AtResource { ATStateData atStateData = repository.getATRepository().getLatestATState(atAddress); byte[] stateData = atStateData.getStateData(); - QortalAtLoggerFactory loggerFactory = QortalAtLoggerFactory.getInstance(); - byte[] dataBytes = MachineState.extractDataBytes(loggerFactory, stateData); + byte[] dataBytes = MachineState.extractDataBytes(stateData); return dataBytes; } catch (ApiException e) { diff --git a/src/main/java/org/qortal/at/AT.java b/src/main/java/org/qortal/at/AT.java index 368e3a97..5aba1b73 100644 --- a/src/main/java/org/qortal/at/AT.java +++ b/src/main/java/org/qortal/at/AT.java @@ -117,12 +117,8 @@ public class AT { } public void update(int blockHeight, long blockTimestamp) throws DataException { - // [Re]create AT machine state using AT state data or from scratch as applicable - QortalATAPI api = new QortalATAPI(repository, this.atData, blockTimestamp); - QortalAtLoggerFactory loggerFactory = QortalAtLoggerFactory.getInstance(); - - byte[] codeBytes = this.atData.getCodeBytes(); - MachineState state = MachineState.fromBytes(api, loggerFactory, this.atStateData.getStateData(), codeBytes); + // Extract minimal/flags-only AT machine state using AT state data + MachineState state = MachineState.flagsOnlyfromBytes(this.atStateData.getStateData()); // Save latest AT state data this.repository.getATRepository().save(this.atStateData); @@ -151,12 +147,8 @@ public class AT { if (previousStateData == null) throw new DataException("Can't find previous AT state data for " + atAddress); - // [Re]create AT machine state using AT state data or from scratch as applicable - QortalATAPI api = new QortalATAPI(repository, this.atData, blockTimestamp); - QortalAtLoggerFactory loggerFactory = QortalAtLoggerFactory.getInstance(); - - byte[] codeBytes = this.atData.getCodeBytes(); - MachineState state = MachineState.fromBytes(api, loggerFactory, previousStateData.getStateData(), codeBytes); + // Extract minimal/flags-only AT machine state using AT state data + MachineState state = MachineState.flagsOnlyfromBytes(previousStateData.getStateData()); // Update AT info in repository this.atData.setIsSleeping(state.isSleeping()); diff --git a/src/test/java/org/qortal/test/at/GetMessageLengthTests.java b/src/test/java/org/qortal/test/at/GetMessageLengthTests.java index 730b441f..e7a7bcc4 100644 --- a/src/test/java/org/qortal/test/at/GetMessageLengthTests.java +++ b/src/test/java/org/qortal/test/at/GetMessageLengthTests.java @@ -13,7 +13,6 @@ import org.junit.Before; import org.junit.Test; import org.qortal.account.PrivateKeyAccount; import org.qortal.asset.Asset; -import org.qortal.at.QortalAtLoggerFactory; import org.qortal.at.QortalFunctionCode; import org.qortal.data.at.ATStateData; import org.qortal.data.transaction.BaseTransactionData; @@ -67,8 +66,7 @@ public class GetMessageLengthTests extends Common { ATStateData atStateData = repository.getATRepository().getLatestATState(atAddress); byte[] stateData = atStateData.getStateData(); - QortalAtLoggerFactory loggerFactory = QortalAtLoggerFactory.getInstance(); - byte[] dataBytes = MachineState.extractDataBytes(loggerFactory, stateData); + byte[] dataBytes = MachineState.extractDataBytes(stateData); long extractedLength = BitTwiddling.longFromBEBytes(dataBytes, 0); @@ -88,8 +86,7 @@ public class GetMessageLengthTests extends Common { ATStateData atStateData = repository.getATRepository().getLatestATState(atAddress); byte[] stateData = atStateData.getStateData(); - QortalAtLoggerFactory loggerFactory = QortalAtLoggerFactory.getInstance(); - byte[] dataBytes = MachineState.extractDataBytes(loggerFactory, stateData); + byte[] dataBytes = MachineState.extractDataBytes(stateData); long extractedLength = BitTwiddling.longFromBEBytes(dataBytes, 0); diff --git a/src/test/java/org/qortal/test/at/GetNextTransactionTests.java b/src/test/java/org/qortal/test/at/GetNextTransactionTests.java index eafc22fb..8bbce250 100644 --- a/src/test/java/org/qortal/test/at/GetNextTransactionTests.java +++ b/src/test/java/org/qortal/test/at/GetNextTransactionTests.java @@ -15,7 +15,6 @@ import org.junit.Before; import org.junit.Test; import org.qortal.account.PrivateKeyAccount; import org.qortal.asset.Asset; -import org.qortal.at.QortalAtLoggerFactory; import org.qortal.block.Block; import org.qortal.data.at.ATStateData; import org.qortal.data.block.BlockData; @@ -192,8 +191,7 @@ public class GetNextTransactionTests extends Common { ATStateData atStateData = repository.getATRepository().getLatestATState(atAddress); byte[] stateData = atStateData.getStateData(); - QortalAtLoggerFactory loggerFactory = QortalAtLoggerFactory.getInstance(); - byte[] dataBytes = MachineState.extractDataBytes(loggerFactory, stateData); + byte[] dataBytes = MachineState.extractDataBytes(stateData); System.arraycopy(dataBytes, 0, rawNextTimestamp, 0, rawNextTimestamp.length); } diff --git a/src/test/java/org/qortal/test/at/GetPartialMessageTests.java b/src/test/java/org/qortal/test/at/GetPartialMessageTests.java index 4bc9d9ea..0f9b188a 100644 --- a/src/test/java/org/qortal/test/at/GetPartialMessageTests.java +++ b/src/test/java/org/qortal/test/at/GetPartialMessageTests.java @@ -12,7 +12,6 @@ import org.junit.Before; import org.junit.Test; import org.qortal.account.PrivateKeyAccount; import org.qortal.asset.Asset; -import org.qortal.at.QortalAtLoggerFactory; import org.qortal.at.QortalFunctionCode; import org.qortal.data.at.ATStateData; import org.qortal.data.transaction.BaseTransactionData; @@ -64,8 +63,7 @@ public class GetPartialMessageTests extends Common { ATStateData atStateData = repository.getATRepository().getLatestATState(atAddress); byte[] stateData = atStateData.getStateData(); - QortalAtLoggerFactory loggerFactory = QortalAtLoggerFactory.getInstance(); - byte[] dataBytes = MachineState.extractDataBytes(loggerFactory, stateData); + byte[] dataBytes = MachineState.extractDataBytes(stateData); byte[] actualData = new byte[32]; System.arraycopy(dataBytes, MachineState.VALUE_SIZE, actualData, 0, 32);