Skip to content

Commit ddcb6bd

Browse files
committed
feat(network): create ResponsePacket interface
1 parent 5677e89 commit ddcb6bd

File tree

8 files changed

+18
-15
lines changed

8 files changed

+18
-15
lines changed
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
11
package sc.protocol
22

3+
/** Common interface for all packets sent via the XML Protocol. */
34
interface ProtocolPacket
5+
6+
/** Interface for all packets sent by the server to clients. */
7+
interface ResponsePacket : ProtocolPacket

sdk/src/server-api/sc/protocol/responses/ErrorPacket.kt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,12 @@ package sc.protocol.responses
33
import com.thoughtworks.xstream.annotations.XStreamAlias
44
import com.thoughtworks.xstream.annotations.XStreamAsAttribute
55
import sc.protocol.ProtocolPacket
6+
import sc.protocol.ResponsePacket
67

78
/** Response to an erroneous packet, including an error [message]. */
89
@XStreamAlias("errorpacket")
910
data class ErrorPacket(
1011
val originalRequest: ProtocolPacket,
1112
@XStreamAsAttribute
1213
val message: String,
13-
): ProtocolPacket
14+
): ResponsePacket

sdk/src/server-api/sc/protocol/responses/GamePreparedResponse.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ package sc.protocol.responses
33
import com.thoughtworks.xstream.annotations.XStreamAlias
44
import com.thoughtworks.xstream.annotations.XStreamAsAttribute
55
import com.thoughtworks.xstream.annotations.XStreamImplicit
6-
import sc.protocol.ProtocolPacket
6+
import sc.protocol.ResponsePacket
77

88
/** Response to [sc.protocol.requests.PrepareGameRequest].
99
* @param reservations the reservations for the reserved slots */
@@ -13,4 +13,4 @@ data class GamePreparedResponse(
1313
val roomId: String,
1414
@XStreamImplicit(itemFieldName = "reservation")
1515
val reservations: List<String>
16-
): ProtocolPacket
16+
): ResponsePacket

sdk/src/server-api/sc/protocol/responses/JoinedRoomResponse.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@ package sc.protocol.responses
22

33
import com.thoughtworks.xstream.annotations.XStreamAlias
44
import com.thoughtworks.xstream.annotations.XStreamAsAttribute
5-
import sc.protocol.ProtocolPacket
5+
import sc.protocol.ResponsePacket
66

77
/** Response to client who successfully joined a game. */
88
@XStreamAlias(value = "joined")
99
data class JoinedRoomResponse(
1010
@XStreamAsAttribute
1111
val roomId: String
12-
): ProtocolPacket
12+
): ResponsePacket

sdk/src/server-api/sc/protocol/responses/ObservationResponse.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,11 +2,11 @@ package sc.protocol.responses
22

33
import com.thoughtworks.xstream.annotations.XStreamAlias
44
import com.thoughtworks.xstream.annotations.XStreamAsAttribute
5-
import sc.protocol.ProtocolPacket
5+
import sc.protocol.ResponsePacket
66

77
/** Sent to client as response to successfully joining a GameRoom as Observer. */
88
@XStreamAlias(value = "observed")
99
data class ObservationResponse(
1010
@XStreamAsAttribute
1111
val roomId: String
12-
): ProtocolPacket
12+
): ResponsePacket

sdk/src/server-api/sc/protocol/responses/PlayerScoreResponse.kt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,12 @@ package sc.protocol.responses
22

33
import com.thoughtworks.xstream.annotations.XStreamAlias
44
import com.thoughtworks.xstream.annotations.XStreamAsAttribute
5-
import sc.protocol.ProtocolPacket
6-
import sc.protocol.requests.ILobbyRequest
5+
import sc.protocol.ResponsePacket
76
import sc.shared.Score
87

98
/** Response to GetScoreForPlayerRequest. */
109
@XStreamAlias("playerScore")
1110
data class PlayerScoreResponse(
1211
@XStreamAsAttribute
1312
val score: Score
14-
): ProtocolPacket
13+
): ResponsePacket

sdk/src/server-api/sc/protocol/responses/RoomWasJoinedEvent.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ package sc.protocol.responses
22

33
import com.thoughtworks.xstream.annotations.XStreamAlias
44
import com.thoughtworks.xstream.annotations.XStreamAsAttribute
5-
import sc.protocol.ProtocolPacket
5+
import sc.protocol.ResponsePacket
66

77
/** Sent to all administrative clients when a player joined a game via a JoinRoomRequest.
88
* @param existing whether the joined room has existed beforehand or was newly created. */
@@ -12,4 +12,4 @@ data class RoomWasJoinedEvent(
1212
val roomId: String,
1313
@XStreamAsAttribute
1414
val existing: Boolean
15-
): ProtocolPacket
15+
): ResponsePacket

sdk/src/server-api/sc/protocol/responses/TestModeResponse.kt

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,11 @@ package sc.protocol.responses
22

33
import com.thoughtworks.xstream.annotations.XStreamAlias
44
import com.thoughtworks.xstream.annotations.XStreamAsAttribute
5-
import sc.protocol.ProtocolPacket
6-
import sc.protocol.requests.ILobbyRequest
5+
import sc.protocol.ResponsePacket
76

87
/** Response to TestModeRequest containing the current status of testMode. */
98
@XStreamAlias(value = "testing")
109
data class TestModeResponse(
1110
@XStreamAsAttribute
1211
val testMode: Boolean
13-
): ProtocolPacket
12+
): ResponsePacket

0 commit comments

Comments
 (0)