diff --git a/sdk/src/androidTest/java/network/xyo/client/boundwitness/BoundWitnessTest.kt b/sdk/src/androidTest/java/network/xyo/client/boundwitness/BoundWitnessTest.kt index b3c8060..08a0c29 100644 --- a/sdk/src/androidTest/java/network/xyo/client/boundwitness/BoundWitnessTest.kt +++ b/sdk/src/androidTest/java/network/xyo/client/boundwitness/BoundWitnessTest.kt @@ -79,7 +79,7 @@ class BoundWitnessTest { val bw = BoundWitnessBuilder().signer(Account.random()).payloads(listOf( TestPayload1() )).build() - assert(bw._meta.client == "android") + assert(bw.__client == "android") assert(bw.__signatures.size == 1) } } @@ -92,8 +92,7 @@ class BoundWitnessTest { )).build() val serializedBw = JsonSerializable.toJson(bw) val bwJson = JSONObject(serializedBw) - val meta = bwJson.get("\$meta") as JSONObject - assert(meta.get("client") == "android") + assert(bwJson.get("\$client") == "android") assertNotNull(bwJson.get("\$signatures")) } } diff --git a/sdk/src/androidTest/java/network/xyo/client/prefs/PreviousHashStorePrefsRepositoryTest.kt b/sdk/src/androidTest/java/network/xyo/client/prefs/PreviousHashStorePrefsRepositoryTest.kt index 1654cfa..40a8224 100644 --- a/sdk/src/androidTest/java/network/xyo/client/prefs/PreviousHashStorePrefsRepositoryTest.kt +++ b/sdk/src/androidTest/java/network/xyo/client/prefs/PreviousHashStorePrefsRepositoryTest.kt @@ -20,7 +20,6 @@ class PreviousHashStorePrefsRepositoryTest { this.appContext = InstrumentationRegistry.getInstrumentation().targetContext } - @OptIn(ExperimentalStdlibApi::class) @Test fun testPreviousHashStorePersistence() { runBlocking { diff --git a/sdk/src/main/java/network/xyo/client/boundwitness/BoundWitness.kt b/sdk/src/main/java/network/xyo/client/boundwitness/BoundWitness.kt index 9a9b98c..1a9c6ad 100644 --- a/sdk/src/main/java/network/xyo/client/boundwitness/BoundWitness.kt +++ b/sdk/src/main/java/network/xyo/client/boundwitness/BoundWitness.kt @@ -2,10 +2,14 @@ package network.xyo.client.boundwitness import com.squareup.moshi.Json import com.squareup.moshi.JsonClass -import network.xyo.client.payload.model.WithMeta +import network.xyo.client.boundwitness.model.BoundWitnessMeta @JsonClass(generateAdapter = true) -open class BoundWitness: WithMeta, BoundWitnessFields() { - @Json(name = "\$meta") - override var _meta = BoundWitnessMeta() +open class BoundWitness(client: String? = "android", signatures: List = emptyList()) : BoundWitnessMeta, + BoundWitnessFields() { + @Json(name = "\$client") + final override var __client: String? = client + + @Json(name = "\$signatures") + final override var __signatures = signatures } \ No newline at end of file diff --git a/sdk/src/main/java/network/xyo/client/boundwitness/BoundWitnessBuilder.kt b/sdk/src/main/java/network/xyo/client/boundwitness/BoundWitnessBuilder.kt index aba5329..a4b46c8 100644 --- a/sdk/src/main/java/network/xyo/client/boundwitness/BoundWitnessBuilder.kt +++ b/sdk/src/main/java/network/xyo/client/boundwitness/BoundWitnessBuilder.kt @@ -72,9 +72,6 @@ open class BoundWitnessBuilder { bw.previous_hashes = _signers.map {account -> account.previousHash?.toHexString()} bw.addresses = addresses - // update underscore fields - bw._meta.client = "android" - // construct fields involved in hashing constructHashableFieldsFields() } diff --git a/sdk/src/main/java/network/xyo/client/boundwitness/BoundWitnessFields.kt b/sdk/src/main/java/network/xyo/client/boundwitness/BoundWitnessFields.kt index ea8d8ac..4edace1 100644 --- a/sdk/src/main/java/network/xyo/client/boundwitness/BoundWitnessFields.kt +++ b/sdk/src/main/java/network/xyo/client/boundwitness/BoundWitnessFields.kt @@ -1,6 +1,5 @@ package network.xyo.client.boundwitness -import com.squareup.moshi.Json import com.squareup.moshi.JsonClass import network.xyo.client.boundwitness.model.BoundWitnessFields import network.xyo.client.payload.Payload @@ -13,24 +12,18 @@ open class BoundWitnessFields(): BoundWitnessFields, Payload(SCHEMA) { final override var previous_hashes = emptyList() final override var timestamp: Long? = null - // Meta Properties - @Json(name = "\$signatures") - final override var __signatures = emptyList() - constructor ( addresses: List, previous_hashes: List, payload_hashes: List, payload_schemas: List, timestamp: Long? = null, - signatures: List, ) : this() { this.addresses = addresses this.previous_hashes = previous_hashes this.payload_hashes = payload_hashes this.payload_schemas = payload_schemas this.timestamp = timestamp - this.__signatures = signatures } companion object { diff --git a/sdk/src/main/java/network/xyo/client/boundwitness/BoundWitnessMeta.kt b/sdk/src/main/java/network/xyo/client/boundwitness/BoundWitnessMeta.kt deleted file mode 100644 index b43ddfe..0000000 --- a/sdk/src/main/java/network/xyo/client/boundwitness/BoundWitnessMeta.kt +++ /dev/null @@ -1,10 +0,0 @@ -package network.xyo.client.boundwitness - -import com.squareup.moshi.JsonClass -import network.xyo.client.boundwitness.model.BoundWitnessMeta -import network.xyo.client.lib.JsonSerializable - -@JsonClass(generateAdapter = true) -class BoundWitnessMeta: BoundWitnessMeta, JsonSerializable() { - override var client: String? = null -} \ No newline at end of file diff --git a/sdk/src/main/java/network/xyo/client/boundwitness/QueryBoundWitnessFields.kt b/sdk/src/main/java/network/xyo/client/boundwitness/QueryBoundWitnessFields.kt index 2323f21..8fd3404 100644 --- a/sdk/src/main/java/network/xyo/client/boundwitness/QueryBoundWitnessFields.kt +++ b/sdk/src/main/java/network/xyo/client/boundwitness/QueryBoundWitnessFields.kt @@ -10,5 +10,4 @@ open class QueryBoundWitnessFields( payload_schemas: List, val query: String, timestamp: Long?, - signatures: List, -): BoundWitnessFields(addresses, previous_hashes, payload_hashes, payload_schemas, timestamp, signatures) \ No newline at end of file +): BoundWitnessFields(addresses, previous_hashes, payload_hashes, payload_schemas, timestamp) \ No newline at end of file diff --git a/sdk/src/main/java/network/xyo/client/boundwitness/model/BoundWitnessFields.kt b/sdk/src/main/java/network/xyo/client/boundwitness/model/BoundWitnessFields.kt index 8bbce9b..ab1c3ce 100644 --- a/sdk/src/main/java/network/xyo/client/boundwitness/model/BoundWitnessFields.kt +++ b/sdk/src/main/java/network/xyo/client/boundwitness/model/BoundWitnessFields.kt @@ -10,8 +10,4 @@ interface BoundWitnessFields : Payload { // Note: Long is a higher precision type than JavaScript's Number type but it is the default type from // Kotlin's System.currentTimeMillis(). var timestamp: Long? - - // Meta Properties - // Note - these fields will transform the `__` prefix to `$` - var __signatures: List } \ No newline at end of file diff --git a/sdk/src/main/java/network/xyo/client/boundwitness/model/BoundWitnessMeta.kt b/sdk/src/main/java/network/xyo/client/boundwitness/model/BoundWitnessMeta.kt index d8bd1a7..6d1d126 100644 --- a/sdk/src/main/java/network/xyo/client/boundwitness/model/BoundWitnessMeta.kt +++ b/sdk/src/main/java/network/xyo/client/boundwitness/model/BoundWitnessMeta.kt @@ -3,5 +3,6 @@ package network.xyo.client.boundwitness.model import java.io.Serializable interface BoundWitnessMeta: Serializable { - var client: String? + var __client: String? + var __signatures: List } \ No newline at end of file