Skip to content

Commit

Permalink
KTOR-4323: Rename to WebSocketSessionWithContentConverter
Browse files Browse the repository at this point in the history
  • Loading branch information
hfhbd committed Jul 3, 2022
1 parent ea27b72 commit fa555e3
Show file tree
Hide file tree
Showing 8 changed files with 17 additions and 9 deletions.
2 changes: 1 addition & 1 deletion ktor-client/ktor-client-core/api/ktor-client-core.api
Original file line number Diff line number Diff line change
Expand Up @@ -746,7 +746,7 @@ public final class io/ktor/client/plugins/websocket/BuildersKt {
public static synthetic fun wss$default (Lio/ktor/client/HttpClient;Ljava/lang/String;Lkotlin/jvm/functions/Function1;Lkotlin/jvm/functions/Function2;Lkotlin/coroutines/Continuation;ILjava/lang/Object;)Ljava/lang/Object;
}

public abstract interface class io/ktor/client/plugins/websocket/ClientWebSocketSession : io/ktor/serialization/SerializableWebSocketSession {
public abstract interface class io/ktor/client/plugins/websocket/ClientWebSocketSession : io/ktor/serialization/WebSocketSessionWithContentConverter {
public abstract fun getCall ()Lio/ktor/client/call/HttpClientCall;
public abstract fun getConverter ()Lio/ktor/serialization/WebsocketContentConverter;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ import io.ktor.websocket.serialization.*
/**
* Client specific [WebSocketSession].
*/
public interface ClientWebSocketSession : SerializableWebSocketSession {
public interface ClientWebSocketSession : WebSocketSessionWithContentConverter {
/**
* [HttpClientCall] associated with session.
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ public final class io/ktor/server/websocket/RoutingKt {
public static synthetic fun webSocketRaw$default (Lio/ktor/server/routing/Route;Ljava/lang/String;ZLkotlin/jvm/functions/Function2;ILjava/lang/Object;)V
}

public abstract interface class io/ktor/server/websocket/WebSocketServerSession : io/ktor/serialization/SerializableWebSocketSession {
public abstract interface class io/ktor/server/websocket/WebSocketServerSession : io/ktor/serialization/WebSocketSessionWithContentConverter {
public abstract fun getCall ()Lio/ktor/server/application/ApplicationCall;
public abstract fun getConverter ()Lio/ktor/serialization/WebsocketContentConverter;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ import io.ktor.websocket.serialization.*
/**
* Represents a server-side web socket session
*/
public interface WebSocketServerSession : SerializableWebSocketSession {
public interface WebSocketServerSession : WebSocketSessionWithContentConverter {
/**
* Associated received [call] that originating this session
*/
Expand Down
8 changes: 8 additions & 0 deletions ktor-shared/ktor-serialization/api/ktor-serialization.api
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,14 @@ public final class io/ktor/serialization/SerializableWebSocketSession$DefaultImp
public static fun send (Lio/ktor/serialization/SerializableWebSocketSession;Lio/ktor/websocket/Frame;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
}

public abstract interface class io/ktor/serialization/WebSocketSessionWithContentConverter : io/ktor/websocket/WebSocketSession {
public abstract fun getConverter ()Lio/ktor/serialization/WebsocketContentConverter;
}

public final class io/ktor/serialization/WebSocketSessionWithContentConverter$DefaultImpls {
public static fun send (Lio/ktor/serialization/WebSocketSessionWithContentConverter;Lio/ktor/websocket/Frame;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
}

public class io/ktor/serialization/WebsocketContentConvertException : io/ktor/serialization/ContentConvertException {
public fun <init> (Ljava/lang/String;Ljava/lang/Throwable;)V
public synthetic fun <init> (Ljava/lang/String;Ljava/lang/Throwable;ILkotlin/jvm/internal/DefaultConstructorMarker;)V
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ package io.ktor.serialization

import io.ktor.websocket.*

public interface SerializableWebSocketSession : WebSocketSession {
public interface WebSocketSessionWithContentConverter : WebSocketSession {
/**
* Converter for web socket session, if plugin [WebSockets] is installed
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ public final class io/ktor/serialization/kotlinx/KotlinxWebsocketSerializationCo
}

public final class io/ktor/serialization/kotlinx/KotlinxWebsocketSerializationConverterKt {
public static final fun receiveDeserialized (Lio/ktor/serialization/SerializableWebSocketSession;Lkotlinx/serialization/DeserializationStrategy;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
public static final fun sendSerialized (Lio/ktor/serialization/SerializableWebSocketSession;Ljava/lang/Object;Lkotlinx/serialization/SerializationStrategy;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
public static final fun receiveDeserialized (Lio/ktor/serialization/WebSocketSessionWithContentConverter;Lkotlinx/serialization/DeserializationStrategy;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
public static final fun sendSerialized (Lio/ktor/serialization/WebSocketSessionWithContentConverter;Ljava/lang/Object;Lkotlinx/serialization/SerializationStrategy;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;
}

Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ public class KotlinxWebsocketSerializationConverter(
}
}

public suspend fun <T> SerializableWebSocketSession.sendSerialized(data: T, serializer: SerializationStrategy<T>) {
public suspend fun <T> WebSocketSessionWithContentConverter.sendSerialized(data: T, serializer: SerializationStrategy<T>) {
val converter = converter as? KotlinxWebsocketSerializationConverter
?: throw WebsocketConverterNotFoundException(
"No KotlinxWebsocketSerializationConverter was found for websocket"
Expand All @@ -119,7 +119,7 @@ public suspend fun <T> SerializableWebSocketSession.sendSerialized(data: T, seri
send(frame)
}

public suspend fun <T> SerializableWebSocketSession.receiveDeserialized(deserializer: DeserializationStrategy<T>): T {
public suspend fun <T> WebSocketSessionWithContentConverter.receiveDeserialized(deserializer: DeserializationStrategy<T>): T {
val converter = converter as? KotlinxWebsocketSerializationConverter
?: throw WebsocketConverterNotFoundException(
"No KotlinxWebsocketSerializationConverter was found for websocket"
Expand Down

0 comments on commit fa555e3

Please sign in to comment.