Skip to content

Commit 55fcb4a

Browse files
committed
0.2.16
1 parent 36d9cac commit 55fcb4a

File tree

4 files changed

+21
-40
lines changed

4 files changed

+21
-40
lines changed

ton-kotlin-liteapi/src/commonMain/kotlin/org/ton/lite/api/liteserver/LiteServerAccountId.kt

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,9 @@ import kotlinx.serialization.SerialName
66
import kotlinx.serialization.Serializable
77
import kotlinx.serialization.UseSerializers
88
import org.ton.bitstring.BitString
9-
import org.ton.bitstring.toBitString
109
import org.ton.crypto.HexByteArraySerializer
10+
import org.ton.tl.ByteString
11+
import org.ton.tl.ByteString.Companion.toByteString
1112
import org.ton.tl.TlConstructor
1213
import org.ton.tl.TlReader
1314
import org.ton.tl.TlWriter
@@ -19,9 +20,10 @@ public data class LiteServerAccountId(
1920
@get:JvmName("workchain")
2021
val workchain: Int,
2122
@get:JvmName("id")
22-
val id: BitString
23+
val id: ByteString
2324
) {
24-
public constructor(workchain: Int, id: ByteArray) : this(workchain, id.toBitString())
25+
public constructor(workchain: Int, id: ByteArray) : this(workchain, id.toByteString())
26+
public constructor(workchain: Int, id: BitString) : this(workchain, id.toByteArray())
2527

2628
public companion object : TlConstructor<LiteServerAccountId>(
2729
schema = "liteServer.accountId workchain:int id:int256 = liteServer.AccountId"

ton-kotlin-liteapi/src/commonMain/kotlin/org/ton/lite/api/liteserver/LiteServerSignature.kt

Lines changed: 8 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -2,37 +2,17 @@ package org.ton.lite.api.liteserver
22

33
import kotlinx.serialization.SerialName
44
import kotlinx.serialization.Serializable
5-
import org.ton.bitstring.BitString
6-
import org.ton.bitstring.toBitString
7-
import org.ton.tl.TlCodec
8-
import org.ton.tl.TlConstructor
9-
import org.ton.tl.TlReader
10-
import org.ton.tl.TlWriter
5+
import org.ton.tl.*
6+
import org.ton.tl.ByteString.Companion.toByteString
117

128
@Serializable
139
@SerialName("liteServer.signature")
1410
public data class LiteServerSignature(
1511
@SerialName("node_id_short")
16-
val nodeIdShort: BitString,
17-
val signature: ByteArray
12+
val nodeIdShort: ByteString,
13+
val signature: ByteString
1814
) {
19-
public constructor(nodeIdShort: ByteArray, signature: ByteArray) : this(nodeIdShort.toBitString(), signature)
20-
21-
override fun equals(other: Any?): Boolean {
22-
if (this === other) return true
23-
if (other !is LiteServerSignature) return false
24-
25-
if (nodeIdShort != other.nodeIdShort) return false
26-
if (!signature.contentEquals(other.signature)) return false
27-
28-
return true
29-
}
30-
31-
override fun hashCode(): Int {
32-
var result = nodeIdShort.hashCode()
33-
result = 31 * result + signature.contentHashCode()
34-
return result
35-
}
15+
public constructor(nodeIdShort: ByteArray, signature: ByteArray) : this(nodeIdShort.toByteString(), signature.toByteString())
3616

3717
public companion object : TlCodec<LiteServerSignature> by LiteServerSignatureTlConstructor
3818
}
@@ -41,13 +21,13 @@ private object LiteServerSignatureTlConstructor : TlConstructor<LiteServerSignat
4121
schema = "liteServer.signature node_id_short:int256 signature:bytes = liteServer.Signature"
4222
) {
4323
override fun decode(reader: TlReader): LiteServerSignature {
44-
val nodeIdShort = reader.readRaw(32)
45-
val signature = reader.readBytes()
24+
val nodeIdShort = reader.readByteString(32)
25+
val signature = reader.readByteString()
4626
return LiteServerSignature(nodeIdShort, signature)
4727
}
4828

4929
override fun encode(writer: TlWriter, value: LiteServerSignature) {
50-
writer.writeRaw(value.nodeIdShort.toByteArray())
30+
writer.writeRaw(value.nodeIdShort)
5131
writer.writeBytes(value.signature)
5232
}
5333
}

ton-kotlin-liteapi/src/commonMain/kotlin/org/ton/lite/api/liteserver/functions/LiteServerGetTransactions.kt

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,27 +5,26 @@ package org.ton.lite.api.liteserver.functions
55
import kotlinx.serialization.SerialName
66
import kotlinx.serialization.Serializable
77
import kotlinx.serialization.UseSerializers
8-
import org.ton.bitstring.BitString
9-
import org.ton.bitstring.toBitString
108
import org.ton.crypto.HexByteArraySerializer
119
import org.ton.lite.api.liteserver.LiteServerAccountId
1210
import org.ton.lite.api.liteserver.LiteServerTransactionList
1311
import org.ton.tl.*
12+
import org.ton.tl.ByteString.Companion.toByteString
1413

1514
@Serializable
1615
@SerialName("liteServer.getTransactions")
1716
public data class LiteServerGetTransactions(
1817
val count: Int,
1918
val account: LiteServerAccountId,
2019
val lt: Long,
21-
val hash: BitString
20+
val hash: ByteString
2221
) : TLFunction<LiteServerGetTransactions, LiteServerTransactionList> {
2322
public constructor(count: Int, account: LiteServerAccountId, lt: Long, hash: ByteArray) : this(
24-
count, account, lt, hash.toBitString()
23+
count, account, lt, hash.toByteString()
2524
)
2625

2726
init {
28-
require(hash.size == 256)
27+
require(hash.size == 32)
2928
}
3029

3130
override fun tlCodec(): TlCodec<LiteServerGetTransactions> = LiteServerGetTransactionsTlConstructor
@@ -42,14 +41,14 @@ public object LiteServerGetTransactionsTlConstructor : TlConstructor<LiteServerG
4241
val count = reader.readInt()
4342
val account = reader.read(LiteServerAccountId)
4443
val lt = reader.readLong()
45-
val hash = reader.readRaw(32)
44+
val hash = reader.readByteString(32)
4645
return LiteServerGetTransactions(count, account, lt, hash)
4746
}
4847

4948
override fun encode(writer: TlWriter, value: LiteServerGetTransactions) {
5049
writer.writeInt(value.count)
5150
writer.write(LiteServerAccountId, value.account)
5251
writer.writeLong(value.lt)
53-
writer.writeRaw(value.hash.toByteArray())
52+
writer.writeRaw(value.hash)
5453
}
5554
}

ton-kotlin-liteclient/src/commonMain/kotlin/org/ton/lite/client/LiteClient.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -370,7 +370,7 @@ public class LiteClient(
370370
fromTransactionId: TransactionId,
371371
count: Int,
372372
): List<TransactionInfo> {
373-
val rawTransactionList = liteApi(LiteServerGetTransactions(count, accountAddress.toLiteServer(), fromTransactionId.lt, fromTransactionId.hash))
373+
val rawTransactionList = liteApi(LiteServerGetTransactions(count, accountAddress.toLiteServer(), fromTransactionId.lt, fromTransactionId.hash.toByteArray()))
374374
val transactionsCells = BagOfCells(base64(rawTransactionList.transactions)).roots
375375
check(rawTransactionList.ids.size == transactionsCells.size)
376376
return List(transactionsCells.size) { index ->
@@ -496,5 +496,5 @@ public class LiteClient(
496496
knownBlockIds.addLast(blockIdExt)
497497
}
498498

499-
private fun AddrStd.toLiteServer() = LiteServerAccountId(workchainId, address)
499+
private fun AddrStd.toLiteServer() = LiteServerAccountId(workchainId, address.toByteArray())
500500
}

0 commit comments

Comments
 (0)