Skip to content

Commit 58bdf00

Browse files
committed
move client meta to root and construct meta in most derived class
1 parent 7c68de2 commit 58bdf00

File tree

9 files changed

+13
-35
lines changed

9 files changed

+13
-35
lines changed

sdk/src/androidTest/java/network/xyo/client/boundwitness/BoundWitnessTest.kt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -79,7 +79,7 @@ class BoundWitnessTest {
7979
val bw = BoundWitnessBuilder().signer(Account.random()).payloads(listOf(
8080
TestPayload1()
8181
)).build()
82-
assert(bw._meta.client == "android")
82+
assert(bw.__client == "android")
8383
assert(bw.__signatures.size == 1)
8484
}
8585
}
@@ -92,8 +92,7 @@ class BoundWitnessTest {
9292
)).build()
9393
val serializedBw = JsonSerializable.toJson(bw)
9494
val bwJson = JSONObject(serializedBw)
95-
val meta = bwJson.get("\$meta") as JSONObject
96-
assert(meta.get("client") == "android")
95+
assert(bwJson.get("\$client") == "android")
9796
assertNotNull(bwJson.get("\$signatures"))
9897
}
9998
}

sdk/src/androidTest/java/network/xyo/client/prefs/PreviousHashStorePrefsRepositoryTest.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ class PreviousHashStorePrefsRepositoryTest {
2020
this.appContext = InstrumentationRegistry.getInstrumentation().targetContext
2121
}
2222

23-
@OptIn(ExperimentalStdlibApi::class)
2423
@Test
2524
fun testPreviousHashStorePersistence() {
2625
runBlocking {

sdk/src/main/java/network/xyo/client/boundwitness/BoundWitness.kt

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,14 @@ package network.xyo.client.boundwitness
22

33
import com.squareup.moshi.Json
44
import com.squareup.moshi.JsonClass
5-
import network.xyo.client.payload.model.WithMeta
5+
import network.xyo.client.boundwitness.model.BoundWitnessMeta
66

77
@JsonClass(generateAdapter = true)
8-
open class BoundWitness: WithMeta<BoundWitnessMeta>, BoundWitnessFields() {
9-
@Json(name = "\$meta")
10-
override var _meta = BoundWitnessMeta()
8+
open class BoundWitness(client: String? = "android", signatures: List<String> = emptyList()) : BoundWitnessMeta,
9+
BoundWitnessFields() {
10+
@Json(name = "\$client")
11+
final override var __client: String? = client
12+
13+
@Json(name = "\$signatures")
14+
final override var __signatures = signatures
1115
}

sdk/src/main/java/network/xyo/client/boundwitness/BoundWitnessBuilder.kt

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -72,9 +72,6 @@ open class BoundWitnessBuilder {
7272
bw.previous_hashes = _signers.map {account -> account.previousHash?.toHexString()}
7373
bw.addresses = addresses
7474

75-
// update underscore fields
76-
bw._meta.client = "android"
77-
7875
// construct fields involved in hashing
7976
constructHashableFieldsFields()
8077
}

sdk/src/main/java/network/xyo/client/boundwitness/BoundWitnessFields.kt

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package network.xyo.client.boundwitness
22

3-
import com.squareup.moshi.Json
43
import com.squareup.moshi.JsonClass
54
import network.xyo.client.boundwitness.model.BoundWitnessFields
65
import network.xyo.client.payload.Payload
@@ -13,24 +12,18 @@ open class BoundWitnessFields(): BoundWitnessFields, Payload(SCHEMA) {
1312
final override var previous_hashes = emptyList<String?>()
1413
final override var timestamp: Long? = null
1514

16-
// Meta Properties
17-
@Json(name = "\$signatures")
18-
final override var __signatures = emptyList<String>()
19-
2015
constructor (
2116
addresses: List<String>,
2217
previous_hashes: List<String?>,
2318
payload_hashes: List<String>,
2419
payload_schemas: List<String>,
2520
timestamp: Long? = null,
26-
signatures: List<String>,
2721
) : this() {
2822
this.addresses = addresses
2923
this.previous_hashes = previous_hashes
3024
this.payload_hashes = payload_hashes
3125
this.payload_schemas = payload_schemas
3226
this.timestamp = timestamp
33-
this.__signatures = signatures
3427
}
3528

3629
companion object {

sdk/src/main/java/network/xyo/client/boundwitness/BoundWitnessMeta.kt

Lines changed: 0 additions & 10 deletions
This file was deleted.

sdk/src/main/java/network/xyo/client/boundwitness/QueryBoundWitnessFields.kt

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,5 +10,4 @@ open class QueryBoundWitnessFields(
1010
payload_schemas: List<String>,
1111
val query: String,
1212
timestamp: Long?,
13-
signatures: List<String>,
14-
): BoundWitnessFields(addresses, previous_hashes, payload_hashes, payload_schemas, timestamp, signatures)
13+
): BoundWitnessFields(addresses, previous_hashes, payload_hashes, payload_schemas, timestamp)

sdk/src/main/java/network/xyo/client/boundwitness/model/BoundWitnessFields.kt

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,4 @@ interface BoundWitnessFields : Payload {
1010
// Note: Long is a higher precision type than JavaScript's Number type but it is the default type from
1111
// Kotlin's System.currentTimeMillis().
1212
var timestamp: Long?
13-
14-
// Meta Properties
15-
// Note - these fields will transform the `__` prefix to `$`
16-
var __signatures: List<String>
1713
}

sdk/src/main/java/network/xyo/client/boundwitness/model/BoundWitnessMeta.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,6 @@ package network.xyo.client.boundwitness.model
33
import java.io.Serializable
44

55
interface BoundWitnessMeta: Serializable {
6-
var client: String?
6+
var __client: String?
7+
var __signatures: List<String>
78
}

0 commit comments

Comments
 (0)