Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
M
Mirai
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
MyCard
Mirai
Commits
6a85769e
Commit
6a85769e
authored
Feb 29, 2020
by
Him188
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Use `io.ktor.utils.io` than `kotlinx.io`
parent
4018545d
Changes
55
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
55 changed files
with
565 additions
and
145 deletions
+565
-145
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/ContactImpl.kt
...ommonMain/kotlin/net/mamoe/mirai/qqandroid/ContactImpl.kt
+1
-1
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/io/serialization/Jce.kt
.../kotlin/net/mamoe/mirai/qqandroid/io/serialization/Jce.kt
+2
-2
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/io/serialization/utils.kt
...otlin/net/mamoe/mirai/qqandroid/io/serialization/utils.kt
+4
-1
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/message/messages.kt
...Main/kotlin/net/mamoe/mirai/qqandroid/message/messages.kt
+1
-4
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/QQAndroidBotNetworkHandler.kt
...moe/mirai/qqandroid/network/QQAndroidBotNetworkHandler.kt
+2
-4
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/QQAndroidClient.kt
...tlin/net/mamoe/mirai/qqandroid/network/QQAndroidClient.kt
+2
-2
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/highway/HighwayHelper.kt
...et/mamoe/mirai/qqandroid/network/highway/HighwayHelper.kt
+5
-5
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/highway/highway.kt
...tlin/net/mamoe/mirai/qqandroid/network/highway/highway.kt
+1
-1
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/data/jce/FriendList.kt
...e/mirai/qqandroid/network/protocol/data/jce/FriendList.kt
+0
-2
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/data/proto/Cmd0x857.kt
...e/mirai/qqandroid/network/protocol/data/proto/Cmd0x857.kt
+408
-0
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/EncryptMethod.kt
.../mirai/qqandroid/network/protocol/packet/EncryptMethod.kt
+1
-4
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/OutgoingPacketAndroid.kt
...qandroid/network/protocol/packet/OutgoingPacketAndroid.kt
+10
-11
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/PacketFactory.kt
.../mirai/qqandroid/network/protocol/packet/PacketFactory.kt
+2
-2
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/Tlv.kt
.../net/mamoe/mirai/qqandroid/network/protocol/packet/Tlv.kt
+1
-4
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/chat/PbMessageSvc.kt
...ai/qqandroid/network/protocol/packet/chat/PbMessageSvc.kt
+1
-1
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/chat/TroopManagement.kt
...qqandroid/network/protocol/packet/chat/TroopManagement.kt
+2
-6
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/chat/image/ImgStore.kt
.../qqandroid/network/protocol/packet/chat/image/ImgStore.kt
+1
-2
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/chat/image/LongConn.kt
.../qqandroid/network/protocol/packet/chat/image/LongConn.kt
+1
-1
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/chat/receive/MessageSvc.kt
...ndroid/network/protocol/packet/chat/receive/MessageSvc.kt
+1
-2
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/list/FriendList.kt
...irai/qqandroid/network/protocol/packet/list/FriendList.kt
+1
-1
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/login/ConfigPushSvc.kt
.../qqandroid/network/protocol/packet/login/ConfigPushSvc.kt
+1
-1
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/login/Heartbeat.kt
...irai/qqandroid/network/protocol/packet/login/Heartbeat.kt
+1
-1
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/login/StatSvc.kt
.../mirai/qqandroid/network/protocol/packet/login/StatSvc.kt
+1
-1
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/login/WtLogin.kt
.../mirai/qqandroid/network/protocol/packet/login/WtLogin.kt
+3
-6
mirai-core-qqandroid/src/commonTest/kotlin/test/printing.kt
mirai-core-qqandroid/src/commonTest/kotlin/test/printing.kt
+5
-5
mirai-core-qqandroid/src/jvmTest/kotlin/net.mamoe.mirai.qqandroid.io.serialization/JceDecoderTest.kt
....mamoe.mirai.qqandroid.io.serialization/JceDecoderTest.kt
+1
-1
mirai-core-qqandroid/src/jvmTest/kotlin/test/ProtoBufDataClassGenerator.kt
...oid/src/jvmTest/kotlin/test/ProtoBufDataClassGenerator.kt
+1
-1
mirai-core/src/androidMain/kotlin/net/mamoe/mirai/utils/ExternalImageAndroid.kt
...Main/kotlin/net/mamoe/mirai/utils/ExternalImageAndroid.kt
+0
-1
mirai-core/src/androidMain/kotlin/net/mamoe/mirai/utils/SystemDeviceInfo.kt
...roidMain/kotlin/net/mamoe/mirai/utils/SystemDeviceInfo.kt
+1
-1
mirai-core/src/androidMain/kotlin/net/mamoe/mirai/utils/io/PlatformDatagramChannelAndroid.kt
...et/mamoe/mirai/utils/io/PlatformDatagramChannelAndroid.kt
+2
-2
mirai-core/src/androidMain/kotlin/net/mamoe/mirai/utils/io/PlatformSocket.kt
...oidMain/kotlin/net/mamoe/mirai/utils/io/PlatformSocket.kt
+5
-5
mirai-core/src/androidMain/kotlin/net/mamoe/mirai/utils/platformAndroid.kt
...droidMain/kotlin/net/mamoe/mirai/utils/platformAndroid.kt
+1
-1
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/BotAccount.kt
...-core/src/commonMain/kotlin/net.mamoe.mirai/BotAccount.kt
+1
-1
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/data/ImageLink.kt
...e/src/commonMain/kotlin/net.mamoe.mirai/data/ImageLink.kt
+2
-3
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/event/events/BotEvents.kt
...mmonMain/kotlin/net.mamoe.mirai/event/events/BotEvents.kt
+44
-1
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/ExternalImage.kt
.../commonMain/kotlin/net.mamoe.mirai/utils/ExternalImage.kt
+2
-2
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/channels.kt
...e/src/commonMain/kotlin/net.mamoe.mirai/utils/channels.kt
+3
-2
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/cryptor/TEA.kt
...rc/commonMain/kotlin/net.mamoe.mirai/utils/cryptor/TEA.kt
+3
-2
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/io/ByteArrayPool.kt
...mmonMain/kotlin/net.mamoe.mirai/utils/io/ByteArrayPool.kt
+1
-2
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/io/PlatformDatagramChannel.kt
...otlin/net.mamoe.mirai/utils/io/PlatformDatagramChannel.kt
+2
-2
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/io/PlatformSocket.kt
...monMain/kotlin/net.mamoe.mirai/utils/io/PlatformSocket.kt
+2
-2
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/io/byteArrays.kt
.../commonMain/kotlin/net.mamoe.mirai/utils/io/byteArrays.kt
+5
-5
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/io/chunked.kt
...src/commonMain/kotlin/net.mamoe.mirai/utils/io/chunked.kt
+5
-3
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/io/conversion.kt
.../commonMain/kotlin/net.mamoe.mirai/utils/io/conversion.kt
+0
-12
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/io/input.kt
...e/src/commonMain/kotlin/net.mamoe.mirai/utils/io/input.kt
+4
-4
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/io/output.kt
.../src/commonMain/kotlin/net.mamoe.mirai/utils/io/output.kt
+1
-1
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/platform.kt
...e/src/commonMain/kotlin/net.mamoe.mirai/utils/platform.kt
+1
-1
mirai-core/src/jvmMain/kotlin/net/mamoe/mirai/message/MessagePacket.kt
...c/jvmMain/kotlin/net/mamoe/mirai/message/MessagePacket.kt
+2
-2
mirai-core/src/jvmMain/kotlin/net/mamoe/mirai/message/SendImageUtilsJvm.kt
...mMain/kotlin/net/mamoe/mirai/message/SendImageUtilsJvm.kt
+1
-1
mirai-core/src/jvmMain/kotlin/net/mamoe/mirai/utils/BotConfigurationJvm.kt
...mMain/kotlin/net/mamoe/mirai/utils/BotConfigurationJvm.kt
+1
-1
mirai-core/src/jvmMain/kotlin/net/mamoe/mirai/utils/ExternalImageJvm.kt
.../jvmMain/kotlin/net/mamoe/mirai/utils/ExternalImageJvm.kt
+5
-5
mirai-core/src/jvmMain/kotlin/net/mamoe/mirai/utils/PlatformUtilsJvm.kt
.../jvmMain/kotlin/net/mamoe/mirai/utils/PlatformUtilsJvm.kt
+1
-1
mirai-core/src/jvmMain/kotlin/net/mamoe/mirai/utils/SystemDeviceInfo.kt
.../jvmMain/kotlin/net/mamoe/mirai/utils/SystemDeviceInfo.kt
+1
-1
mirai-core/src/jvmMain/kotlin/net/mamoe/mirai/utils/io/PlatformSocket.kt
...jvmMain/kotlin/net/mamoe/mirai/utils/io/PlatformSocket.kt
+5
-5
mirai-core/src/jvmMain/kotlin/net/mamoe/mirai/utils/io/PlatformSocketJvm.kt
...Main/kotlin/net/mamoe/mirai/utils/io/PlatformSocketJvm.kt
+4
-4
No files found.
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/ContactImpl.kt
View file @
6a85769e
...
@@ -9,9 +9,9 @@
...
@@ -9,9 +9,9 @@
package
net.mamoe.mirai.qqandroid
package
net.mamoe.mirai.qqandroid
import
io.ktor.utils.io.core.Closeable
import
kotlinx.coroutines.launch
import
kotlinx.coroutines.launch
import
kotlinx.coroutines.withTimeoutOrNull
import
kotlinx.coroutines.withTimeoutOrNull
import
kotlinx.io.core.Closeable
import
net.mamoe.mirai.contact.*
import
net.mamoe.mirai.contact.*
import
net.mamoe.mirai.data.*
import
net.mamoe.mirai.data.*
import
net.mamoe.mirai.event.broadcast
import
net.mamoe.mirai.event.broadcast
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/io/serialization/Jce.kt
View file @
6a85769e
...
@@ -9,8 +9,8 @@
...
@@ -9,8 +9,8 @@
package
net.mamoe.mirai.qqandroid.io.serialization
package
net.mamoe.mirai.qqandroid.io.serialization
import
kotlinx
.io.charsets.Charset
import
io.ktor.utils
.io.charsets.Charset
import
kotlinx
.io.core.*
import
io.ktor.utils
.io.core.*
import
kotlinx.serialization.*
import
kotlinx.serialization.*
import
kotlinx.serialization.internal.*
import
kotlinx.serialization.internal.*
import
kotlinx.serialization.modules.EmptyModule
import
kotlinx.serialization.modules.EmptyModule
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/io/serialization/utils.kt
View file @
6a85769e
...
@@ -12,7 +12,10 @@
...
@@ -12,7 +12,10 @@
package
net.mamoe.mirai.qqandroid.io.serialization
package
net.mamoe.mirai.qqandroid.io.serialization
import
kotlinx.io.core.*
import
io.ktor.utils.io.core.BytePacketBuilder
import
io.ktor.utils.io.core.ByteReadPacket
import
io.ktor.utils.io.core.readBytes
import
io.ktor.utils.io.core.writeFully
import
kotlinx.serialization.DeserializationStrategy
import
kotlinx.serialization.DeserializationStrategy
import
kotlinx.serialization.SerialDescriptor
import
kotlinx.serialization.SerialDescriptor
import
kotlinx.serialization.SerializationStrategy
import
kotlinx.serialization.SerializationStrategy
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/message/messages.kt
View file @
6a85769e
...
@@ -9,10 +9,7 @@
...
@@ -9,10 +9,7 @@
package
net.mamoe.mirai.qqandroid.message
package
net.mamoe.mirai.qqandroid.message
import
kotlinx.io.core.buildPacket
import
io.ktor.utils.io.core.*
import
kotlinx.io.core.discardExact
import
kotlinx.io.core.readBytes
import
kotlinx.io.core.readUInt
import
net.mamoe.mirai.contact.Member
import
net.mamoe.mirai.contact.Member
import
net.mamoe.mirai.message.data.*
import
net.mamoe.mirai.message.data.*
import
net.mamoe.mirai.qqandroid.network.protocol.data.proto.ImMsgBody
import
net.mamoe.mirai.qqandroid.network.protocol.data.proto.ImMsgBody
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/QQAndroidBotNetworkHandler.kt
View file @
6a85769e
...
@@ -9,12 +9,12 @@
...
@@ -9,12 +9,12 @@
package
net.mamoe.mirai.qqandroid.network
package
net.mamoe.mirai.qqandroid.network
import
io.ktor.utils.io.core.*
import
kotlinx.atomicfu.AtomicRef
import
kotlinx.atomicfu.AtomicRef
import
kotlinx.atomicfu.atomic
import
kotlinx.atomicfu.atomic
import
kotlinx.coroutines.*
import
kotlinx.coroutines.*
import
kotlinx.coroutines.sync.Mutex
import
kotlinx.coroutines.sync.Mutex
import
kotlinx.coroutines.sync.withLock
import
kotlinx.coroutines.sync.withLock
import
kotlinx.io.core.*
import
net.mamoe.mirai.data.MultiPacket
import
net.mamoe.mirai.data.MultiPacket
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.event.*
import
net.mamoe.mirai.event.*
...
@@ -128,9 +128,7 @@ internal class QQAndroidBotNetworkHandler(bot: QQAndroidBot) : BotNetworkHandler
...
@@ -128,9 +128,7 @@ internal class QQAndroidBotNetworkHandler(bot: QQAndroidBot) : BotNetworkHandler
is
WtLogin
.
Login
.
LoginPacketResponse
.
Captcha
->
when
(
response
)
{
is
WtLogin
.
Login
.
LoginPacketResponse
.
Captcha
->
when
(
response
)
{
is
WtLogin
.
Login
.
LoginPacketResponse
.
Captcha
.
Picture
->
{
is
WtLogin
.
Login
.
LoginPacketResponse
.
Captcha
.
Picture
->
{
var
result
=
response
.
data
.
withUse
{
var
result
=
bot
.
configuration
.
loginSolver
.
onSolvePicCaptcha
(
bot
,
response
.
data
)
bot
.
configuration
.
loginSolver
.
onSolvePicCaptcha
(
bot
,
this
.
readBytes
())
}
if
(
result
==
null
||
result
.
length
!=
4
)
{
if
(
result
==
null
||
result
.
length
!=
4
)
{
//refresh captcha
//refresh captcha
result
=
"ABCD"
result
=
"ABCD"
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/QQAndroidClient.kt
View file @
6a85769e
...
@@ -11,9 +11,9 @@
...
@@ -11,9 +11,9 @@
package
net.mamoe.mirai.qqandroid.network
package
net.mamoe.mirai.qqandroid.network
import
io.ktor.utils.io.core.*
import
kotlinx.atomicfu.AtomicInt
import
kotlinx.atomicfu.AtomicInt
import
kotlinx.atomicfu.atomic
import
kotlinx.atomicfu.atomic
import
kotlinx.io.core.*
import
net.mamoe.mirai.BotAccount
import
net.mamoe.mirai.BotAccount
import
net.mamoe.mirai.RawAccountIdUse
import
net.mamoe.mirai.RawAccountIdUse
import
net.mamoe.mirai.data.OnlineStatus
import
net.mamoe.mirai.data.OnlineStatus
...
@@ -313,7 +313,7 @@ internal class Pt4Token(data: ByteArray, creationTime: Long, expireTime: Long) :
...
@@ -313,7 +313,7 @@ internal class Pt4Token(data: ByteArray, creationTime: Long, expireTime: Long) :
internal
typealias
PSKeyMap
=
MutableMap
<
String
,
PSKey
>
internal
typealias
PSKeyMap
=
MutableMap
<
String
,
PSKey
>
internal
typealias
Pt4TokenMap
=
MutableMap
<
String
,
Pt4Token
>
internal
typealias
Pt4TokenMap
=
MutableMap
<
String
,
Pt4Token
>
internal
inline
fun
Input
.
readUShortLVString
():
String
=
kotlinx
.
io
.
core
.
String
(
this
.
readUShortLVByteArray
())
internal
inline
fun
Input
.
readUShortLVString
():
String
=
io
.
ktor
.
utils
.
io
.
core
.
String
(
this
.
readUShortLVByteArray
())
internal
inline
fun
Input
.
readUShortLVByteArray
():
ByteArray
=
this
.
readBytes
(
this
.
readUShort
().
toInt
())
internal
inline
fun
Input
.
readUShortLVByteArray
():
ByteArray
=
this
.
readBytes
(
this
.
readUShort
().
toInt
())
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/highway/HighwayHelper.kt
View file @
6a85769e
...
@@ -18,14 +18,14 @@ import io.ktor.http.content.OutgoingContent
...
@@ -18,14 +18,14 @@ import io.ktor.http.content.OutgoingContent
import
io.ktor.http.userAgent
import
io.ktor.http.userAgent
import
io.ktor.utils.io.ByteReadChannel
import
io.ktor.utils.io.ByteReadChannel
import
io.ktor.utils.io.copyAndClose
import
io.ktor.utils.io.copyAndClose
import
io.ktor.utils.io.core.Input
import
io.ktor.utils.io.core.readAvailable
import
io.ktor.utils.io.core.readInt
import
io.ktor.utils.io.core.use
import
io.ktor.utils.io.pool.useInstance
import
kotlinx.coroutines.InternalCoroutinesApi
import
kotlinx.coroutines.InternalCoroutinesApi
import
kotlinx.coroutines.flow.collect
import
kotlinx.coroutines.flow.collect
import
kotlinx.io.InputStream
import
kotlinx.io.InputStream
import
kotlinx.io.core.Input
import
kotlinx.io.core.discardExact
import
kotlinx.io.core.readAvailable
import
kotlinx.io.core.use
import
kotlinx.io.pool.useInstance
import
net.mamoe.mirai.qqandroid.io.serialization.readProtoBuf
import
net.mamoe.mirai.qqandroid.io.serialization.readProtoBuf
import
net.mamoe.mirai.qqandroid.network.QQAndroidClient
import
net.mamoe.mirai.qqandroid.network.QQAndroidClient
import
net.mamoe.mirai.qqandroid.network.protocol.data.proto.CSDataHighwayHead
import
net.mamoe.mirai.qqandroid.network.protocol.data.proto.CSDataHighwayHead
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/highway/highway.kt
View file @
6a85769e
...
@@ -12,10 +12,10 @@
...
@@ -12,10 +12,10 @@
package
net.mamoe.mirai.qqandroid.network.highway
package
net.mamoe.mirai.qqandroid.network.highway
import
io.ktor.utils.io.ByteReadChannel
import
io.ktor.utils.io.ByteReadChannel
import
io.ktor.utils.io.core.*
import
kotlinx.coroutines.flow.Flow
import
kotlinx.coroutines.flow.Flow
import
kotlinx.coroutines.flow.map
import
kotlinx.coroutines.flow.map
import
kotlinx.io.InputStream
import
kotlinx.io.InputStream
import
kotlinx.io.core.*
import
net.mamoe.mirai.qqandroid.io.serialization.toByteArray
import
net.mamoe.mirai.qqandroid.io.serialization.toByteArray
import
net.mamoe.mirai.qqandroid.network.QQAndroidClient
import
net.mamoe.mirai.qqandroid.network.QQAndroidClient
import
net.mamoe.mirai.qqandroid.network.protocol.data.proto.CSDataHighwayHead
import
net.mamoe.mirai.qqandroid.network.protocol.data.proto.CSDataHighwayHead
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/data/jce/FriendList.kt
View file @
6a85769e
...
@@ -9,11 +9,9 @@
...
@@ -9,11 +9,9 @@
package
net.mamoe.mirai.qqandroid.network.protocol.data.jce
package
net.mamoe.mirai.qqandroid.network.protocol.data.jce
import
kotlinx.io.core.toByteArray
import
kotlinx.serialization.SerialId
import
kotlinx.serialization.SerialId
import
kotlinx.serialization.Serializable
import
kotlinx.serialization.Serializable
import
net.mamoe.mirai.qqandroid.io.JceStruct
import
net.mamoe.mirai.qqandroid.io.JceStruct
import
net.mamoe.mirai.qqandroid.network.protocol.packet.EMPTY_BYTE_ARRAY
@Serializable
@Serializable
internal
class
ModifyGroupCardReq
(
internal
class
ModifyGroupCardReq
(
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/data/proto/Cmd0x857.kt
0 → 100644
View file @
6a85769e
This diff is collapsed.
Click to expand it.
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/EncryptMethod.kt
View file @
6a85769e
...
@@ -9,10 +9,7 @@
...
@@ -9,10 +9,7 @@
package
net.mamoe.mirai.qqandroid.network.protocol.packet
package
net.mamoe.mirai.qqandroid.network.protocol.packet
import
kotlinx.io.core.BytePacketBuilder
import
io.ktor.utils.io.core.*
import
kotlinx.io.core.ByteReadPacket
import
kotlinx.io.core.buildPacket
import
kotlinx.io.core.writeFully
import
net.mamoe.mirai.qqandroid.network.QQAndroidClient
import
net.mamoe.mirai.qqandroid.network.QQAndroidClient
import
net.mamoe.mirai.utils.cryptor.ECDH
import
net.mamoe.mirai.utils.cryptor.ECDH
import
net.mamoe.mirai.utils.cryptor.ECDHKeyPair
import
net.mamoe.mirai.utils.cryptor.ECDHKeyPair
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/OutgoingPacketAndroid.kt
View file @
6a85769e
...
@@ -10,10 +10,7 @@
...
@@ -10,10 +10,7 @@
package
net.mamoe.mirai.qqandroid.network.protocol.packet
package
net.mamoe.mirai.qqandroid.network.protocol.packet
import
kotlinx.io.core.BytePacketBuilder
import
io.ktor.utils.io.core.*
import
kotlinx.io.core.ByteReadPacket
import
kotlinx.io.core.buildPacket
import
kotlinx.io.core.writeFully
import
net.mamoe.mirai.qqandroid.network.QQAndroidClient
import
net.mamoe.mirai.qqandroid.network.QQAndroidClient
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
net.mamoe.mirai.utils.io.encryptAndWrite
import
net.mamoe.mirai.utils.io.encryptAndWrite
...
@@ -57,7 +54,7 @@ internal inline fun OutgoingPacketFactory<*>.buildOutgoingPacket(
...
@@ -57,7 +54,7 @@ internal inline fun OutgoingPacketFactory<*>.buildOutgoingPacket(
writeByte
(
0
)
writeByte
(
0
)
client
.
uin
.
toString
().
let
{
client
.
uin
.
toString
().
let
{
writeInt
(
it
.
length
+
4
)
writeInt
(
it
.
length
+
4
)
write
StringUtf8
(
it
)
write
Text
(
it
)
}
}
encryptAndWrite
(
key
)
{
encryptAndWrite
(
key
)
{
body
(
sequenceId
)
body
(
sequenceId
)
...
@@ -78,6 +75,7 @@ internal inline fun OutgoingPacketFactory<*>.buildOutgoingUniPacket(
...
@@ -78,6 +75,7 @@ internal inline fun OutgoingPacketFactory<*>.buildOutgoingUniPacket(
body
:
BytePacketBuilder
.(
sequenceId
:
Int
)
->
Unit
body
:
BytePacketBuilder
.(
sequenceId
:
Int
)
->
Unit
):
OutgoingPacket
{
):
OutgoingPacket
{
@Suppress
(
"DuplicatedCode"
)
return
OutgoingPacket
(
name
,
commandName
,
sequenceId
,
buildPacket
{
return
OutgoingPacket
(
name
,
commandName
,
sequenceId
,
buildPacket
{
writeIntLVPacket
(
lengthOffset
=
{
it
+
4
})
{
writeIntLVPacket
(
lengthOffset
=
{
it
+
4
})
{
writeInt
(
0
x0B
)
writeInt
(
0
x0B
)
...
@@ -86,7 +84,7 @@ internal inline fun OutgoingPacketFactory<*>.buildOutgoingUniPacket(
...
@@ -86,7 +84,7 @@ internal inline fun OutgoingPacketFactory<*>.buildOutgoingUniPacket(
writeByte
(
0
)
writeByte
(
0
)
client
.
uin
.
toString
().
let
{
client
.
uin
.
toString
().
let
{
writeInt
(
it
.
length
+
4
)
writeInt
(
it
.
length
+
4
)
write
StringUtf8
(
it
)
write
Text
(
it
)
}
}
encryptAndWrite
(
key
)
{
encryptAndWrite
(
key
)
{
writeUniPacket
(
commandName
,
client
.
outgoingPacketSessionId
,
extraData
)
{
writeUniPacket
(
commandName
,
client
.
outgoingPacketSessionId
,
extraData
)
{
...
@@ -109,6 +107,7 @@ internal inline fun IncomingPacketFactory<*>.buildResponseUniPacket(
...
@@ -109,6 +107,7 @@ internal inline fun IncomingPacketFactory<*>.buildResponseUniPacket(
sequenceId
:
Int
=
client
.
nextSsoSequenceId
(),
sequenceId
:
Int
=
client
.
nextSsoSequenceId
(),
body
:
BytePacketBuilder
.(
sequenceId
:
Int
)
->
Unit
body
:
BytePacketBuilder
.(
sequenceId
:
Int
)
->
Unit
):
OutgoingPacket
{
):
OutgoingPacket
{
@Suppress
(
"DuplicatedCode"
)
return
OutgoingPacket
(
name
,
commandName
,
sequenceId
,
buildPacket
{
return
OutgoingPacket
(
name
,
commandName
,
sequenceId
,
buildPacket
{
writeIntLVPacket
(
lengthOffset
=
{
it
+
4
})
{
writeIntLVPacket
(
lengthOffset
=
{
it
+
4
})
{
writeInt
(
0
x0B
)
writeInt
(
0
x0B
)
...
@@ -117,7 +116,7 @@ internal inline fun IncomingPacketFactory<*>.buildResponseUniPacket(
...
@@ -117,7 +116,7 @@ internal inline fun IncomingPacketFactory<*>.buildResponseUniPacket(
writeByte
(
0
)
writeByte
(
0
)
client
.
uin
.
toString
().
let
{
client
.
uin
.
toString
().
let
{
writeInt
(
it
.
length
+
4
)
writeInt
(
it
.
length
+
4
)
write
StringUtf8
(
it
)
write
Text
(
it
)
}
}
encryptAndWrite
(
key
)
{
encryptAndWrite
(
key
)
{
writeUniPacket
(
commandName
,
client
.
outgoingPacketSessionId
,
extraData
)
{
writeUniPacket
(
commandName
,
client
.
outgoingPacketSessionId
,
extraData
)
{
...
@@ -138,7 +137,7 @@ internal inline fun BytePacketBuilder.writeUniPacket(
...
@@ -138,7 +137,7 @@ internal inline fun BytePacketBuilder.writeUniPacket(
writeIntLVPacket
(
lengthOffset
=
{
it
+
4
})
{
writeIntLVPacket
(
lengthOffset
=
{
it
+
4
})
{
commandName
.
let
{
commandName
.
let
{
writeInt
(
it
.
length
+
4
)
writeInt
(
it
.
length
+
4
)
write
StringUtf8
(
it
)
write
Text
(
it
)
}
}
writeInt
(
4
+
4
)
writeInt
(
4
+
4
)
...
@@ -185,7 +184,7 @@ internal inline fun OutgoingPacketFactory<*>.buildLoginOutgoingPacket(
...
@@ -185,7 +184,7 @@ internal inline fun OutgoingPacketFactory<*>.buildLoginOutgoingPacket(
client
.
uin
.
toString
().
let
{
client
.
uin
.
toString
().
let
{
writeInt
(
it
.
length
+
4
)
writeInt
(
it
.
length
+
4
)
write
StringUtf8
(
it
)
write
Text
(
it
)
}
}
if
(
key
===
NO_ENCRYPT
)
{
if
(
key
===
NO_ENCRYPT
)
{
...
@@ -240,7 +239,7 @@ internal inline fun BytePacketBuilder.writeSsoPacket(
...
@@ -240,7 +239,7 @@ internal inline fun BytePacketBuilder.writeSsoPacket(
}
}
commandName
.
let
{
commandName
.
let
{
writeInt
(
it
.
length
+
4
)
writeInt
(
it
.
length
+
4
)
write
StringUtf8
(
it
)
write
Text
(
it
)
}
}
writeInt
(
4
+
4
)
writeInt
(
4
+
4
)
...
@@ -248,7 +247,7 @@ internal inline fun BytePacketBuilder.writeSsoPacket(
...
@@ -248,7 +247,7 @@ internal inline fun BytePacketBuilder.writeSsoPacket(
client
.
device
.
imei
.
let
{
client
.
device
.
imei
.
let
{
writeInt
(
it
.
length
+
4
)
writeInt
(
it
.
length
+
4
)
write
StringUtf8
(
it
)
write
Text
(
it
)
}
}
writeInt
(
4
)
writeInt
(
4
)
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/PacketFactory.kt
View file @
6a85769e
...
@@ -9,8 +9,8 @@
...
@@ -9,8 +9,8 @@
package
net.mamoe.mirai.qqandroid.network.protocol.packet
package
net.mamoe.mirai.qqandroid.network.protocol.packet
import
kotlinx
.io.core.*
import
io.ktor.utils
.io.core.*
import
kotlinx
.io.pool.useInstance
import
io.ktor.utils
.io.pool.useInstance
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.event.Event
import
net.mamoe.mirai.event.Event
import
net.mamoe.mirai.qqandroid.QQAndroidBot
import
net.mamoe.mirai.qqandroid.QQAndroidBot
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/Tlv.kt
View file @
6a85769e
...
@@ -9,10 +9,7 @@
...
@@ -9,10 +9,7 @@
package
net.mamoe.mirai.qqandroid.network.protocol.packet
package
net.mamoe.mirai.qqandroid.network.protocol.packet
import
kotlinx.io.core.BytePacketBuilder
import
io.ktor.utils.io.core.*
import
kotlinx.io.core.ByteReadPacket
import
kotlinx.io.core.toByteArray
import
kotlinx.io.core.writeFully
import
net.mamoe.mirai.qqandroid.network.protocol.LoginType
import
net.mamoe.mirai.qqandroid.network.protocol.LoginType
import
net.mamoe.mirai.qqandroid.utils.NetworkType
import
net.mamoe.mirai.qqandroid.utils.NetworkType
import
net.mamoe.mirai.utils.currentTimeMillis
import
net.mamoe.mirai.utils.currentTimeMillis
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/chat/PbMessageSvc.kt
View file @
6a85769e
...
@@ -9,7 +9,7 @@
...
@@ -9,7 +9,7 @@
package
net.mamoe.mirai.qqandroid.network.protocol.packet.chat
package
net.mamoe.mirai.qqandroid.network.protocol.packet.chat
import
kotlinx
.io.core.ByteReadPacket
import
io.ktor.utils
.io.core.ByteReadPacket
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.qqandroid.QQAndroidBot
import
net.mamoe.mirai.qqandroid.QQAndroidBot
import
net.mamoe.mirai.qqandroid.io.serialization.readProtoBuf
import
net.mamoe.mirai.qqandroid.io.serialization.readProtoBuf
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/chat/TroopManagement.kt
View file @
6a85769e
...
@@ -9,11 +9,7 @@
...
@@ -9,11 +9,7 @@
package
net.mamoe.mirai.qqandroid.network.protocol.packet.chat
package
net.mamoe.mirai.qqandroid.network.protocol.packet.chat
import
kotlinx.io.core.ByteReadPacket
import
io.ktor.utils.io.core.*
import
kotlinx.io.core.buildPacket
import
kotlinx.io.core.readBytes
import
kotlinx.io.core.toByteArray
import
kotlinx.serialization.toUtf8Bytes
import
net.mamoe.mirai.contact.Group
import
net.mamoe.mirai.contact.Group
import
net.mamoe.mirai.contact.Member
import
net.mamoe.mirai.contact.Member
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.data.Packet
...
@@ -379,7 +375,7 @@ internal class TroopManagement {
...
@@ -379,7 +375,7 @@ internal class TroopManagement {
OutgoingPacketFactory
<
EditGroupNametag
.
Response
>(
"friendlist.ModifyGroupCardReq"
)
{
OutgoingPacketFactory
<
EditGroupNametag
.
Response
>(
"friendlist.ModifyGroupCardReq"
)
{
object
Response
:
Packet
object
Response
:
Packet
override
suspend
fun
ByteReadPacket
.
decode
(
bot
:
QQAndroidBot
):
EditGroupNametag
.
Response
{
override
suspend
fun
ByteReadPacket
.
decode
(
bot
:
QQAndroidBot
):
Response
{
return
Response
return
Response
}
}
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/chat/image/ImgStore.kt
View file @
6a85769e
...
@@ -9,8 +9,7 @@
...
@@ -9,8 +9,7 @@
package
net.mamoe.mirai.qqandroid.network.protocol.packet.chat.image
package
net.mamoe.mirai.qqandroid.network.protocol.packet.chat.image
import
io.ktor.client.HttpClient
import
io.ktor.utils.io.core.ByteReadPacket
import
kotlinx.io.core.ByteReadPacket
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.qqandroid.QQAndroidBot
import
net.mamoe.mirai.qqandroid.QQAndroidBot
import
net.mamoe.mirai.qqandroid.io.serialization.readProtoBuf
import
net.mamoe.mirai.qqandroid.io.serialization.readProtoBuf
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/chat/image/LongConn.kt
View file @
6a85769e
...
@@ -9,7 +9,7 @@
...
@@ -9,7 +9,7 @@
package
net.mamoe.mirai.qqandroid.network.protocol.packet.chat.image
package
net.mamoe.mirai.qqandroid.network.protocol.packet.chat.image
import
kotlinx
.io.core.ByteReadPacket
import
io.ktor.utils
.io.core.ByteReadPacket
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.qqandroid.QQAndroidBot
import
net.mamoe.mirai.qqandroid.QQAndroidBot
import
net.mamoe.mirai.qqandroid.io.serialization.readProtoBuf
import
net.mamoe.mirai.qqandroid.io.serialization.readProtoBuf
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/chat/receive/MessageSvc.kt
View file @
6a85769e
...
@@ -9,11 +9,10 @@
...
@@ -9,11 +9,10 @@
package
net.mamoe.mirai.qqandroid.network.protocol.packet.chat.receive
package
net.mamoe.mirai.qqandroid.network.protocol.packet.chat.receive
import
io.ktor.utils.io.core.ByteReadPacket
import
kotlinx.coroutines.CoroutineScope
import
kotlinx.coroutines.CoroutineScope
import
kotlinx.coroutines.Deferred
import
kotlinx.coroutines.Deferred
import
kotlinx.coroutines.ExperimentalCoroutinesApi
import
kotlinx.coroutines.ExperimentalCoroutinesApi
import
kotlinx.io.core.ByteReadPacket
import
kotlinx.io.core.discardExact
import
net.mamoe.mirai.contact.Group
import
net.mamoe.mirai.contact.Group
import
net.mamoe.mirai.contact.MemberPermission
import
net.mamoe.mirai.contact.MemberPermission
import
net.mamoe.mirai.data.MemberInfo
import
net.mamoe.mirai.data.MemberInfo
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/list/FriendList.kt
View file @
6a85769e
...
@@ -9,7 +9,7 @@
...
@@ -9,7 +9,7 @@
package
net.mamoe.mirai.qqandroid.network.protocol.packet.list
package
net.mamoe.mirai.qqandroid.network.protocol.packet.list
import
kotlinx
.io.core.ByteReadPacket
import
io.ktor.utils
.io.core.ByteReadPacket
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.qqandroid.QQAndroidBot
import
net.mamoe.mirai.qqandroid.QQAndroidBot
import
net.mamoe.mirai.qqandroid.io.serialization.decodeUniPacket
import
net.mamoe.mirai.qqandroid.io.serialization.decodeUniPacket
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/login/ConfigPushSvc.kt
View file @
6a85769e
...
@@ -9,7 +9,7 @@
...
@@ -9,7 +9,7 @@
package
net.mamoe.mirai.qqandroid.network.protocol.packet.login
package
net.mamoe.mirai.qqandroid.network.protocol.packet.login
import
kotlinx
.io.core.ByteReadPacket
import
io.ktor.utils
.io.core.ByteReadPacket
import
net.mamoe.mirai.qqandroid.QQAndroidBot
import
net.mamoe.mirai.qqandroid.QQAndroidBot
import
net.mamoe.mirai.qqandroid.io.serialization.JceCharset
import
net.mamoe.mirai.qqandroid.io.serialization.JceCharset
import
net.mamoe.mirai.qqandroid.io.serialization.decodeUniPacket
import
net.mamoe.mirai.qqandroid.io.serialization.decodeUniPacket
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/login/Heartbeat.kt
View file @
6a85769e
...
@@ -9,7 +9,7 @@
...
@@ -9,7 +9,7 @@
package
net.mamoe.mirai.qqandroid.network.protocol.packet.login
package
net.mamoe.mirai.qqandroid.network.protocol.packet.login
import
kotlinx
.io.core.ByteReadPacket
import
io.ktor.utils
.io.core.ByteReadPacket
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.qqandroid.QQAndroidBot
import
net.mamoe.mirai.qqandroid.QQAndroidBot
import
net.mamoe.mirai.qqandroid.network.QQAndroidClient
import
net.mamoe.mirai.qqandroid.network.QQAndroidClient
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/login/StatSvc.kt
View file @
6a85769e
...
@@ -9,7 +9,7 @@
...
@@ -9,7 +9,7 @@
package
net.mamoe.mirai.qqandroid.network.protocol.packet.login
package
net.mamoe.mirai.qqandroid.network.protocol.packet.login
import
kotlinx
.io.core.ByteReadPacket
import
io.ktor.utils
.io.core.ByteReadPacket
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.qqandroid.QQAndroidBot
import
net.mamoe.mirai.qqandroid.QQAndroidBot
import
net.mamoe.mirai.qqandroid.io.serialization.*
import
net.mamoe.mirai.qqandroid.io.serialization.*
...
...
mirai-core-qqandroid/src/commonMain/kotlin/net/mamoe/mirai/qqandroid/network/protocol/packet/login/WtLogin.kt
View file @
6a85769e
...
@@ -11,7 +11,7 @@ package net.mamoe.mirai.qqandroid.network.protocol.packet.login
...
@@ -11,7 +11,7 @@ package net.mamoe.mirai.qqandroid.network.protocol.packet.login
import
io.ktor.util.InternalAPI
import
io.ktor.util.InternalAPI
import
kotlinx
.io.core.*
import
io.ktor.utils
.io.core.*
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.data.Packet
import
net.mamoe.mirai.qqandroid.QQAndroidBot
import
net.mamoe.mirai.qqandroid.QQAndroidBot
import
net.mamoe.mirai.qqandroid.network.*
import
net.mamoe.mirai.qqandroid.network.*
...
@@ -282,7 +282,7 @@ internal class WtLogin {
...
@@ -282,7 +282,7 @@ internal class WtLogin {
}
}
class
Picture
(
class
Picture
(
val
data
:
IoBuffer
,
val
data
:
ByteArray
,
val
sign
:
ByteArray
val
sign
:
ByteArray
)
:
Captcha
()
{
)
:
Captcha
()
{
override
fun
toString
():
String
=
"LoginPacketResponse.Captcha.Picture"
override
fun
toString
():
String
=
"LoginPacketResponse.Captcha.Picture"
...
@@ -378,11 +378,8 @@ internal class WtLogin {
...
@@ -378,11 +378,8 @@ internal class WtLogin {
imageData
.
discardExact
(
2
)
//image Length
imageData
.
discardExact
(
2
)
//image Length
val
sign
=
imageData
.
readBytes
(
signInfoLength
.
toInt
())
val
sign
=
imageData
.
readBytes
(
signInfoLength
.
toInt
())
val
buffer
=
IoBuffer
.
Pool
.
borrow
()
imageData
.
readAvailable
(
buffer
)
return
LoginPacketResponse
.
Captcha
.
Picture
(
return
LoginPacketResponse
.
Captcha
.
Picture
(
data
=
buffer
,
data
=
imageData
.
readBytes
()
,
sign
=
sign
sign
=
sign
)
)
// } else error("UNKNOWN CAPTCHA QUESTION: ${question.toUHexString()}, tlvMap=" + tlvMap.contentToString())
// } else error("UNKNOWN CAPTCHA QUESTION: ${question.toUHexString()}, tlvMap=" + tlvMap.contentToString())
...
...
mirai-core-qqandroid/src/commonTest/kotlin/test/printing.kt
View file @
6a85769e
...
@@ -11,11 +11,11 @@
...
@@ -11,11 +11,11 @@
package
test
package
test
import
kotlinx
.io.core.ByteReadPacket
import
io.ktor.utils
.io.core.ByteReadPacket
import
kotlinx
.io.core.Input
import
io.ktor.utils
.io.core.Input
import
kotlinx
.io.core.readAvailable
import
io.ktor.utils
.io.core.readAvailable
import
kotlinx
.io.core.use
import
io.ktor.utils
.io.core.use
import
kotlinx
.io.pool.useInstance
import
io.ktor.utils
.io.pool.useInstance
import
net.mamoe.mirai.utils.DefaultLogger
import
net.mamoe.mirai.utils.DefaultLogger
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
net.mamoe.mirai.utils.MiraiLoggerWithSwitch
import
net.mamoe.mirai.utils.MiraiLoggerWithSwitch
...
...
mirai-core-qqandroid/src/jvmTest/kotlin/net.mamoe.mirai.qqandroid.io.serialization/JceDecoderTest.kt
View file @
6a85769e
...
@@ -11,7 +11,7 @@ package net.mamoe.mirai.qqandroid.io.serialization
...
@@ -11,7 +11,7 @@ package net.mamoe.mirai.qqandroid.io.serialization
/*
/*
import
kotlinx
.io.core.readBytes
import
io.ktor.utils
.io.core.readBytes
import kotlinx.serialization.SerialId
import kotlinx.serialization.SerialId
import kotlinx.serialization.Serializable
import kotlinx.serialization.Serializable
import net.mamoe.mirai.qqandroid.io.JceOutput
import net.mamoe.mirai.qqandroid.io.JceOutput
...
...
mirai-core-qqandroid/src/jvmTest/kotlin/test/ProtoBufDataClassGenerator.kt
View file @
6a85769e
...
@@ -25,7 +25,7 @@ fun main() {
...
@@ -25,7 +25,7 @@ fun main() {
println
(
println
(
File
(
File
(
"""
"""
E:\Projects\QQAndroidFF\app\src\main\java\tencent\im\
msgrevoke
E:\Projects\QQAndroidFF\app\src\main\java\tencent\im\
oidb\cmd0x857
"""
.
trimIndent
()
"""
.
trimIndent
()
)
)
.
generateUnarrangedClasses
().
toMutableList
().
arrangeClasses
().
joinToString
(
"\n\n"
)
.
generateUnarrangedClasses
().
toMutableList
().
arrangeClasses
().
joinToString
(
"\n\n"
)
...
...
mirai-core/src/androidMain/kotlin/net/mamoe/mirai/utils/ExternalImageAndroid.kt
View file @
6a85769e
...
@@ -41,7 +41,6 @@ fun File.toExternalImage(): ExternalImage {
...
@@ -41,7 +41,6 @@ fun File.toExternalImage(): ExternalImage {
md5
=
this
.
inputStream
().
use
{
it
.
md5
()
},
md5
=
this
.
inputStream
().
use
{
it
.
md5
()
},
imageFormat
=
this
.
nameWithoutExtension
,
imageFormat
=
this
.
nameWithoutExtension
,
input
=
this
.
inputStream
(),
input
=
this
.
inputStream
(),
inputSize
=
this
.
length
(),
filename
=
this
.
name
filename
=
this
.
name
)
)
}
}
...
...
mirai-core/src/androidMain/kotlin/net/mamoe/mirai/utils/SystemDeviceInfo.kt
View file @
6a85769e
...
@@ -13,7 +13,7 @@ import android.annotation.SuppressLint
...
@@ -13,7 +13,7 @@ import android.annotation.SuppressLint
import
android.net.wifi.WifiManager
import
android.net.wifi.WifiManager
import
android.os.Build
import
android.os.Build
import
android.telephony.TelephonyManager
import
android.telephony.TelephonyManager
import
kotlinx
.io.core.toByteArray
import
io.ktor.utils
.io.core.toByteArray
import
kotlinx.serialization.Serializable
import
kotlinx.serialization.Serializable
import
kotlinx.serialization.Transient
import
kotlinx.serialization.Transient
import
kotlinx.serialization.UnstableDefault
import
kotlinx.serialization.UnstableDefault
...
...
mirai-core/src/androidMain/kotlin/net/mamoe/mirai/utils/io/PlatformDatagramChannelAndroid.kt
View file @
6a85769e
...
@@ -9,10 +9,10 @@
...
@@ -9,10 +9,10 @@
package
net.mamoe.mirai.utils.io
package
net.mamoe.mirai.utils.io
import
io.ktor.utils.io.core.ByteReadPacket
import
io.ktor.utils.io.core.Closeable
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.withContext
import
kotlinx.coroutines.withContext
import
kotlinx.io.core.ByteReadPacket
import
kotlinx.io.core.Closeable
import
kotlinx.io.nio.readPacketAtMost
import
kotlinx.io.nio.readPacketAtMost
import
kotlinx.io.nio.writePacket
import
kotlinx.io.nio.writePacket
import
java.net.InetSocketAddress
import
java.net.InetSocketAddress
...
...
mirai-core/src/androidMain/kotlin/net/mamoe/mirai/utils/io/PlatformSocket.kt
View file @
6a85769e
...
@@ -9,13 +9,13 @@
...
@@ -9,13 +9,13 @@
package
net.mamoe.mirai.utils.io
package
net.mamoe.mirai.utils.io
import
io.ktor.utils.io.core.ByteReadPacket
import
io.ktor.utils.io.core.Closeable
import
io.ktor.utils.io.core.ExperimentalIoApi
import
io.ktor.utils.io.streams.readPacketAtMost
import
io.ktor.utils.io.streams.writePacket
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.withContext
import
kotlinx.coroutines.withContext
import
kotlinx.io.core.ByteReadPacket
import
kotlinx.io.core.Closeable
import
kotlinx.io.core.ExperimentalIoApi
import
kotlinx.io.streams.readPacketAtMost
import
kotlinx.io.streams.writePacket
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
java.io.BufferedInputStream
import
java.io.BufferedInputStream
import
java.io.BufferedOutputStream
import
java.io.BufferedOutputStream
...
...
mirai-core/src/androidMain/kotlin/net/mamoe/mirai/utils/platformAndroid.kt
View file @
6a85769e
...
@@ -12,7 +12,7 @@ package net.mamoe.mirai.utils
...
@@ -12,7 +12,7 @@ package net.mamoe.mirai.utils
import
io.ktor.client.HttpClient
import
io.ktor.client.HttpClient
import
io.ktor.client.engine.cio.CIO
import
io.ktor.client.engine.cio.CIO
import
io.ktor.util.KtorExperimentalAPI
import
io.ktor.util.KtorExperimentalAPI
import
kotlinx
.io.pool.useInstance
import
io.ktor.utils
.io.pool.useInstance
import
net.mamoe.mirai.utils.io.ByteArrayPool
import
net.mamoe.mirai.utils.io.ByteArrayPool
import
java.io.ByteArrayOutputStream
import
java.io.ByteArrayOutputStream
import
java.io.DataInput
import
java.io.DataInput
...
...
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/BotAccount.kt
View file @
6a85769e
...
@@ -11,7 +11,7 @@
...
@@ -11,7 +11,7 @@
package
net.mamoe.mirai
package
net.mamoe.mirai
import
kotlinx
.io.core.toByteArray
import
io.ktor.utils
.io.core.toByteArray
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
net.mamoe.mirai.utils.md5
import
net.mamoe.mirai.utils.md5
import
kotlin.annotation.AnnotationTarget.*
import
kotlin.annotation.AnnotationTarget.*
...
...
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/data/ImageLink.kt
View file @
6a85769e
...
@@ -10,9 +10,8 @@
...
@@ -10,9 +10,8 @@
package
net.mamoe.mirai.data
package
net.mamoe.mirai.data
import
io.ktor.client.request.get
import
io.ktor.client.request.get
import
io.ktor.util.KtorExperimentalAPI
import
io.ktor.utils.io.core.ByteReadPacket
import
kotlinx.io.core.ByteReadPacket
import
io.ktor.utils.io.core.readBytes
import
kotlinx.io.core.readBytes
import
net.mamoe.mirai.utils.Http
import
net.mamoe.mirai.utils.Http
interface
ImageLink
{
interface
ImageLink
{
...
...
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/event/events/BotEvents.kt
View file @
6a85769e
...
@@ -21,6 +21,7 @@ import net.mamoe.mirai.event.events.ImageUploadEvent.Failed
...
@@ -21,6 +21,7 @@ import net.mamoe.mirai.event.events.ImageUploadEvent.Failed
import
net.mamoe.mirai.event.events.ImageUploadEvent.Succeed
import
net.mamoe.mirai.event.events.ImageUploadEvent.Succeed
import
net.mamoe.mirai.message.data.Image
import
net.mamoe.mirai.message.data.Image
import
net.mamoe.mirai.message.data.MessageChain
import
net.mamoe.mirai.message.data.MessageChain
import
net.mamoe.mirai.message.data.MessageSource
import
net.mamoe.mirai.utils.ExternalImage
import
net.mamoe.mirai.utils.ExternalImage
import
net.mamoe.mirai.utils.MiraiExperimentalAPI
import
net.mamoe.mirai.utils.MiraiExperimentalAPI
...
@@ -56,7 +57,8 @@ sealed class BotOfflineEvent : BotEvent {
...
@@ -56,7 +57,8 @@ sealed class BotOfflineEvent : BotEvent {
/**
/**
* 被挤下线
* 被挤下线
*/
*/
data class
Force
(
override
val
bot
:
Bot
,
val
title
:
String
,
val
message
:
String
)
:
BotOfflineEvent
(),
Packet
,
BotPassiveEvent
data class
Force
(
override
val
bot
:
Bot
,
val
title
:
String
,
val
message
:
String
)
:
BotOfflineEvent
(),
Packet
,
BotPassiveEvent
/**
/**
* 被服务器断开或因网络问题而掉线
* 被服务器断开或因网络问题而掉线
...
@@ -92,6 +94,47 @@ sealed class MessageSendEvent : BotEvent, BotActiveEvent, AbstractCancellableEve
...
@@ -92,6 +94,47 @@ sealed class MessageSendEvent : BotEvent, BotActiveEvent, AbstractCancellableEve
)
:
MessageSendEvent
(),
CancellableEvent
)
:
MessageSendEvent
(),
CancellableEvent
}
}
/**
* 消息撤回事件. 可是任意消息被任意人撤回.
*/
sealed
class
MessageRecallEvent
:
BotEvent
{
/**
* 消息原发送人
*/
abstract
val
authorId
:
Long
/**
* 消息 id.
* @see MessageSource.id
*/
abstract
val
messageId
:
Long
/**
* 原发送时间
*/
abstract
val
messageTime
:
Int
// seconds
data class
ByBot
(
override
val
bot
:
Bot
,
override
val
authorId
:
Long
,
override
val
messageId
:
Long
,
override
val
messageTime
:
Int
)
:
MessageRecallEvent
(),
BotActiveEvent
,
CancellableEvent
{
override
val
isCancelled
:
Boolean
get
()
=
cancelled
private
var
cancelled
:
Boolean
=
false
// 无法多继承
override
fun
cancel
()
{
cancelled
=
true
}
}
data class
ByOthers
(
override
val
bot
:
Bot
,
override
val
authorId
:
Long
,
override
val
messageId
:
Long
,
override
val
messageTime
:
Int
)
:
MessageRecallEvent
(),
BotPassiveEvent
,
Packet
}
// endregion
// endregion
// region 图片
// region 图片
...
...
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/ExternalImage.kt
View file @
6a85769e
...
@@ -12,9 +12,9 @@
...
@@ -12,9 +12,9 @@
package
net.mamoe.mirai.utils
package
net.mamoe.mirai.utils
import
io.ktor.utils.io.ByteReadChannel
import
io.ktor.utils.io.ByteReadChannel
import
io.ktor.utils.io.core.ByteReadPacket
import
io.ktor.utils.io.core.Input
import
kotlinx.io.InputStream
import
kotlinx.io.InputStream
import
kotlinx.io.core.ByteReadPacket
import
kotlinx.io.core.Input
import
net.mamoe.mirai.contact.Contact
import
net.mamoe.mirai.contact.Contact
import
net.mamoe.mirai.contact.Group
import
net.mamoe.mirai.contact.Group
import
net.mamoe.mirai.contact.QQ
import
net.mamoe.mirai.contact.QQ
...
...
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/channels.kt
View file @
6a85769e
...
@@ -15,10 +15,11 @@ package net.mamoe.mirai.utils
...
@@ -15,10 +15,11 @@ package net.mamoe.mirai.utils
import
io.ktor.utils.io.ByteReadChannel
import
io.ktor.utils.io.ByteReadChannel
import
io.ktor.utils.io.core.Output
import
io.ktor.utils.io.core.writeFully
import
io.ktor.utils.io.pool.useInstance
import
io.ktor.utils.io.readAvailable
import
io.ktor.utils.io.readAvailable
import
kotlinx.io.OutputStream
import
kotlinx.io.OutputStream
import
kotlinx.io.core.Output
import
kotlinx.io.pool.useInstance
import
net.mamoe.mirai.utils.io.ByteArrayPool
import
net.mamoe.mirai.utils.io.ByteArrayPool
import
kotlin.jvm.JvmMultifileClass
import
kotlin.jvm.JvmMultifileClass
import
kotlin.jvm.JvmName
import
kotlin.jvm.JvmName
...
...
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/cryptor/TEA.kt
View file @
6a85769e
...
@@ -9,8 +9,9 @@
...
@@ -9,8 +9,9 @@
package
net.mamoe.mirai.utils.cryptor
package
net.mamoe.mirai.utils.cryptor
import
kotlinx.io.core.ByteReadPacket
import
io.ktor.utils.io.core.ByteReadPacket
import
kotlinx.io.pool.useInstance
import
io.ktor.utils.io.core.readFully
import
io.ktor.utils.io.pool.useInstance
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
net.mamoe.mirai.utils.io.ByteArrayPool
import
net.mamoe.mirai.utils.io.ByteArrayPool
import
net.mamoe.mirai.utils.io.toByteArray
import
net.mamoe.mirai.utils.io.toByteArray
...
...
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/io/ByteArrayPool.kt
View file @
6a85769e
...
@@ -11,8 +11,7 @@
...
@@ -11,8 +11,7 @@
package
net.mamoe.mirai.utils.io
package
net.mamoe.mirai.utils.io
import
kotlinx.io.pool.DefaultPool
import
io.ktor.utils.io.pool.DefaultPool
import
kotlinx.io.pool.ObjectPool
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
net.mamoe.mirai.utils.MiraiInternalAPI
/**
/**
...
...
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/io/PlatformDatagramChannel.kt
View file @
6a85769e
...
@@ -9,8 +9,8 @@
...
@@ -9,8 +9,8 @@
package
net.mamoe.mirai.utils.io
package
net.mamoe.mirai.utils.io
import
kotlinx
.io.core.ByteReadPacket
import
io.ktor.utils
.io.core.ByteReadPacket
import
kotlinx
.io.core.Closeable
import
io.ktor.utils
.io.core.Closeable
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
net.mamoe.mirai.utils.MiraiInternalAPI
/**
/**
...
...
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/io/PlatformSocket.kt
View file @
6a85769e
...
@@ -9,8 +9,8 @@
...
@@ -9,8 +9,8 @@
package
net.mamoe.mirai.utils.io
package
net.mamoe.mirai.utils.io
import
kotlinx
.io.core.ByteReadPacket
import
io.ktor.utils
.io.core.ByteReadPacket
import
kotlinx
.io.core.Closeable
import
io.ktor.utils
.io.core.Closeable
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
net.mamoe.mirai.utils.MiraiInternalAPI
/**
/**
...
...
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/io/byteArrays.kt
View file @
6a85769e
...
@@ -13,11 +13,11 @@
...
@@ -13,11 +13,11 @@
package
net.mamoe.mirai.utils.io
package
net.mamoe.mirai.utils.io
import
kotlinx
.io.charsets.Charset
import
io.ktor.utils
.io.charsets.Charset
import
kotlinx
.io.charsets.Charsets
import
io.ktor.utils
.io.charsets.Charsets
import
kotlinx
.io.core.ByteReadPacket
import
io.ktor.utils
.io.core.ByteReadPacket
import
kotlinx
.io.core.String
import
io.ktor.utils
.io.core.String
import
kotlinx
.io.core.use
import
io.ktor.utils
.io.core.use
import
net.mamoe.mirai.utils.checkOffsetAndLength
import
net.mamoe.mirai.utils.checkOffsetAndLength
import
kotlin.contracts.ExperimentalContracts
import
kotlin.contracts.ExperimentalContracts
import
kotlin.contracts.InvocationKind
import
kotlin.contracts.InvocationKind
...
...
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/io/chunked.kt
View file @
6a85769e
...
@@ -10,14 +10,16 @@
...
@@ -10,14 +10,16 @@
package
net.mamoe.mirai.utils.io
package
net.mamoe.mirai.utils.io
import
io.ktor.utils.io.ByteReadChannel
import
io.ktor.utils.io.ByteReadChannel
import
io.ktor.utils.io.core.ByteReadPacket
import
io.ktor.utils.io.core.Input
import
io.ktor.utils.io.core.isNotEmpty
import
io.ktor.utils.io.core.readAvailable
import
io.ktor.utils.io.pool.useInstance
import
kotlinx.coroutines.ExperimentalCoroutinesApi
import
kotlinx.coroutines.ExperimentalCoroutinesApi
import
kotlinx.coroutines.flow.Flow
import
kotlinx.coroutines.flow.Flow
import
kotlinx.coroutines.flow.flow
import
kotlinx.coroutines.flow.flow
import
kotlinx.coroutines.flow.flowOf
import
kotlinx.coroutines.flow.flowOf
import
kotlinx.io.InputStream
import
kotlinx.io.InputStream
import
kotlinx.io.core.ByteReadPacket
import
kotlinx.io.core.Input
import
kotlinx.io.pool.useInstance
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
net.mamoe.mirai.utils.MiraiInternalAPI
...
...
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/io/conversion.kt
View file @
6a85769e
...
@@ -11,8 +11,6 @@
...
@@ -11,8 +11,6 @@
package
net.mamoe.mirai.utils.io
package
net.mamoe.mirai.utils.io
import
kotlinx.io.core.IoBuffer
import
kotlinx.io.pool.ObjectPool
import
kotlin.random.Random
import
kotlin.random.Random
import
kotlin.random.nextInt
import
kotlin.random.nextInt
...
@@ -202,13 +200,3 @@ fun ByteArray.toInt(): Int =
...
@@ -202,13 +200,3 @@ fun ByteArray.toInt(): Int =
(
this
[
0
].
toInt
().
and
(
255
)
shl
24
)
+
(
this
[
1
].
toInt
().
and
(
255
)
shl
16
)
+
(
this
[
2
].
toInt
().
and
(
255
)
shl
8
)
+
(
this
[
3
].
toInt
().
and
(
(
this
[
0
].
toInt
().
and
(
255
)
shl
24
)
+
(
this
[
1
].
toInt
().
and
(
255
)
shl
16
)
+
(
this
[
2
].
toInt
().
and
(
255
)
shl
8
)
+
(
this
[
3
].
toInt
().
and
(
255
255
)
shl
0
)
)
shl
0
)
/**
* 从 [IoBuffer.Pool] [borrow][ObjectPool.borrow] 一个 [IoBuffer] 然后将 [this] 写入.
* 注意回收 ([ObjectPool.recycle])
*/
fun
ByteArray
.
toIoBuffer
(
offset
:
Int
=
0
,
length
:
Int
=
this
.
size
-
offset
,
pool
:
ObjectPool
<
IoBuffer
>
=
IoBuffer
.
Pool
):
IoBuffer
=
pool
.
borrow
().
let
{
it
.
writeFully
(
this
,
offset
,
length
);
it
}
\ No newline at end of file
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/io/input.kt
View file @
6a85769e
...
@@ -13,11 +13,11 @@
...
@@ -13,11 +13,11 @@
package
net.mamoe.mirai.utils.io
package
net.mamoe.mirai.utils.io
import
io.ktor.utils.io.charsets.Charset
import
io.ktor.utils.io.charsets.Charsets
import
io.ktor.utils.io.core.*
import
io.ktor.utils.io.pool.useInstance
import
kotlinx.io.OutputStream
import
kotlinx.io.OutputStream
import
kotlinx.io.charsets.Charset
import
kotlinx.io.charsets.Charsets
import
kotlinx.io.core.*
import
kotlinx.io.pool.useInstance
import
net.mamoe.mirai.utils.MiraiDebugAPI
import
net.mamoe.mirai.utils.MiraiDebugAPI
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
kotlin.jvm.JvmMultifileClass
import
kotlin.jvm.JvmMultifileClass
...
...
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/io/output.kt
View file @
6a85769e
...
@@ -13,7 +13,7 @@
...
@@ -13,7 +13,7 @@
package
net.mamoe.mirai.utils.io
package
net.mamoe.mirai.utils.io
import
kotlinx
.io.core.*
import
io.ktor.utils
.io.core.*
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
net.mamoe.mirai.utils.coerceAtMostOrFail
import
net.mamoe.mirai.utils.coerceAtMostOrFail
import
net.mamoe.mirai.utils.cryptor.TEA
import
net.mamoe.mirai.utils.cryptor.TEA
...
...
mirai-core/src/commonMain/kotlin/net.mamoe.mirai/utils/platform.kt
View file @
6a85769e
...
@@ -12,7 +12,7 @@
...
@@ -12,7 +12,7 @@
package
net.mamoe.mirai.utils
package
net.mamoe.mirai.utils
import
io.ktor.client.HttpClient
import
io.ktor.client.HttpClient
import
kotlinx
.io.core.toByteArray
import
io.ktor.utils
.io.core.toByteArray
/**
/**
* 时间戳
* 时间戳
...
...
mirai-core/src/jvmMain/kotlin/net/mamoe/mirai/message/MessagePacket.kt
View file @
6a85769e
...
@@ -11,8 +11,8 @@
...
@@ -11,8 +11,8 @@
package
net.mamoe.mirai.message
package
net.mamoe.mirai.message
import
kotlinx
.io.core.Input
import
io.ktor.utils
.io.core.Input
import
kotlinx
.io.core.use
import
io.ktor.utils
.io.core.use
import
net.mamoe.mirai.contact.Contact
import
net.mamoe.mirai.contact.Contact
import
net.mamoe.mirai.contact.QQ
import
net.mamoe.mirai.contact.QQ
import
net.mamoe.mirai.message.data.Image
import
net.mamoe.mirai.message.data.Image
...
...
mirai-core/src/jvmMain/kotlin/net/mamoe/mirai/message/SendImageUtilsJvm.kt
View file @
6a85769e
...
@@ -11,9 +11,9 @@
...
@@ -11,9 +11,9 @@
package
net.mamoe.mirai.message
package
net.mamoe.mirai.message
import
io.ktor.utils.io.core.Input
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.withContext
import
kotlinx.coroutines.withContext
import
kotlinx.io.core.Input
import
net.mamoe.mirai.contact.Contact
import
net.mamoe.mirai.contact.Contact
import
net.mamoe.mirai.message.data.Image
import
net.mamoe.mirai.message.data.Image
import
net.mamoe.mirai.utils.OverFileSizeMaxException
import
net.mamoe.mirai.utils.OverFileSizeMaxException
...
...
mirai-core/src/jvmMain/kotlin/net/mamoe/mirai/utils/BotConfigurationJvm.kt
View file @
6a85769e
...
@@ -9,6 +9,7 @@
...
@@ -9,6 +9,7 @@
package
net.mamoe.mirai.utils
package
net.mamoe.mirai.utils
import
io.ktor.utils.io.core.use
import
kotlinx.coroutines.CoroutineName
import
kotlinx.coroutines.CoroutineName
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.GlobalScope
import
kotlinx.coroutines.GlobalScope
...
@@ -20,7 +21,6 @@ import kotlinx.coroutines.io.writeFully
...
@@ -20,7 +21,6 @@ import kotlinx.coroutines.io.writeFully
import
kotlinx.coroutines.sync.Mutex
import
kotlinx.coroutines.sync.Mutex
import
kotlinx.coroutines.sync.withLock
import
kotlinx.coroutines.sync.withLock
import
kotlinx.coroutines.withContext
import
kotlinx.coroutines.withContext
import
kotlinx.io.core.use
import
net.mamoe.mirai.Bot
import
net.mamoe.mirai.Bot
import
net.mamoe.mirai.network.BotNetworkHandler
import
net.mamoe.mirai.network.BotNetworkHandler
import
java.awt.Image
import
java.awt.Image
...
...
mirai-core/src/jvmMain/kotlin/net/mamoe/mirai/utils/ExternalImageJvm.kt
View file @
6a85769e
...
@@ -12,13 +12,13 @@
...
@@ -12,13 +12,13 @@
package
net.mamoe.mirai.utils
package
net.mamoe.mirai.utils
import
io.ktor.utils.io.ByteReadChannel
import
io.ktor.utils.io.ByteReadChannel
import
io.ktor.utils.io.core.Input
import
io.ktor.utils.io.core.buildPacket
import
io.ktor.utils.io.core.copyTo
import
io.ktor.utils.io.errors.IOException
import
io.ktor.utils.io.streams.asOutput
import
kotlinx.coroutines.Dispatchers.IO
import
kotlinx.coroutines.Dispatchers.IO
import
kotlinx.coroutines.withContext
import
kotlinx.coroutines.withContext
import
kotlinx.io.core.Input
import
kotlinx.io.core.buildPacket
import
kotlinx.io.core.copyTo
import
kotlinx.io.errors.IOException
import
kotlinx.io.streams.asOutput
import
net.mamoe.mirai.utils.io.getRandomString
import
net.mamoe.mirai.utils.io.getRandomString
import
java.awt.image.BufferedImage
import
java.awt.image.BufferedImage
import
java.io.File
import
java.io.File
...
...
mirai-core/src/jvmMain/kotlin/net/mamoe/mirai/utils/PlatformUtilsJvm.kt
View file @
6a85769e
...
@@ -13,7 +13,7 @@ package net.mamoe.mirai.utils
...
@@ -13,7 +13,7 @@ package net.mamoe.mirai.utils
import
io.ktor.client.HttpClient
import
io.ktor.client.HttpClient
import
io.ktor.client.engine.cio.CIO
import
io.ktor.client.engine.cio.CIO
import
kotlinx
.io.pool.useInstance
import
io.ktor.utils
.io.pool.useInstance
import
net.mamoe.mirai.utils.io.ByteArrayPool
import
net.mamoe.mirai.utils.io.ByteArrayPool
import
java.io.*
import
java.io.*
import
java.net.InetAddress
import
java.net.InetAddress
...
...
mirai-core/src/jvmMain/kotlin/net/mamoe/mirai/utils/SystemDeviceInfo.kt
View file @
6a85769e
...
@@ -9,7 +9,7 @@
...
@@ -9,7 +9,7 @@
package
net.mamoe.mirai.utils
package
net.mamoe.mirai.utils
import
kotlinx
.io.core.toByteArray
import
io.ktor.utils
.io.core.toByteArray
import
kotlinx.serialization.Serializable
import
kotlinx.serialization.Serializable
import
kotlinx.serialization.Transient
import
kotlinx.serialization.Transient
import
kotlinx.serialization.UnstableDefault
import
kotlinx.serialization.UnstableDefault
...
...
mirai-core/src/jvmMain/kotlin/net/mamoe/mirai/utils/io/PlatformSocket.kt
View file @
6a85769e
...
@@ -9,13 +9,13 @@
...
@@ -9,13 +9,13 @@
package
net.mamoe.mirai.utils.io
package
net.mamoe.mirai.utils.io
import
io.ktor.utils.io.core.ByteReadPacket
import
io.ktor.utils.io.core.Closeable
import
io.ktor.utils.io.core.ExperimentalIoApi
import
io.ktor.utils.io.streams.readPacketAtMost
import
io.ktor.utils.io.streams.writePacket
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.withContext
import
kotlinx.coroutines.withContext
import
kotlinx.io.core.ByteReadPacket
import
kotlinx.io.core.Closeable
import
kotlinx.io.core.ExperimentalIoApi
import
kotlinx.io.streams.readPacketAtMost
import
kotlinx.io.streams.writePacket
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
net.mamoe.mirai.utils.MiraiInternalAPI
import
java.io.BufferedInputStream
import
java.io.BufferedInputStream
import
java.io.BufferedOutputStream
import
java.io.BufferedOutputStream
...
...
mirai-core/src/jvmMain/kotlin/net/mamoe/mirai/utils/io/PlatformSocketJvm.kt
View file @
6a85769e
...
@@ -9,12 +9,12 @@
...
@@ -9,12 +9,12 @@
package
net.mamoe.mirai.utils.io
package
net.mamoe.mirai.utils.io
import
io.ktor.utils.io.core.ByteReadPacket
import
io.ktor.utils.io.core.Closeable
import
io.ktor.utils.io.nio.readPacketAtMost
import
io.ktor.utils.io.nio.writePacket
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.Dispatchers
import
kotlinx.coroutines.withContext
import
kotlinx.coroutines.withContext
import
kotlinx.io.core.ByteReadPacket
import
kotlinx.io.core.Closeable
import
kotlinx.io.nio.readPacketAtMost
import
kotlinx.io.nio.writePacket
import
java.net.InetSocketAddress
import
java.net.InetSocketAddress
import
java.nio.channels.DatagramChannel
import
java.nio.channels.DatagramChannel
import
java.nio.channels.ReadableByteChannel
import
java.nio.channels.ReadableByteChannel
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment