Search in sources :

Example 1 with ServerContext

use of com.robo4j.socket.http.units.ServerContext in project robo4j by Robo4J.

the class DatagramPathUtils method updateDatagramServerContextPaths.

public static void updateDatagramServerContextPaths(final RoboContext context, final ServerContext serverContext, final Collection<HttpPathMethodDTO> paths) {
    final Map<PathHttpMethod, ServerPathConfig> resultPaths = paths.stream().map(e -> {
        RoboReference<Object> reference = context.getReference(e.getRoboUnit());
        return new ServerPathConfig(toPath(SystemPath.UNITS.getPath(), e.getRoboUnit()), reference, e.getMethod(), e.getCallbacks());
    }).collect(Collectors.toMap(e -> new PathHttpMethod(e.getPath(), null), e -> e));
    serverContext.addPaths(resultPaths);
}
Also used : ClientContext(com.robo4j.socket.http.units.ClientContext) Collection(java.util.Collection) ServerPathConfig(com.robo4j.socket.http.units.ServerPathConfig) HttpPathUtils.toPath(com.robo4j.socket.http.util.HttpPathUtils.toPath) PathHttpMethod(com.robo4j.socket.http.units.PathHttpMethod) Collectors(java.util.stream.Collectors) ServerContext(com.robo4j.socket.http.units.ServerContext) HttpPathMethodDTO(com.robo4j.socket.http.dto.HttpPathMethodDTO) Map(java.util.Map) RoboContext(com.robo4j.RoboContext) ClientPathConfig(com.robo4j.socket.http.units.ClientPathConfig) SystemPath(com.robo4j.socket.http.enums.SystemPath) RoboReference(com.robo4j.RoboReference) RoboReference(com.robo4j.RoboReference) ServerPathConfig(com.robo4j.socket.http.units.ServerPathConfig) PathHttpMethod(com.robo4j.socket.http.units.PathHttpMethod)

Example 2 with ServerContext

use of com.robo4j.socket.http.units.ServerContext in project robo4j by Robo4J.

the class HttpPathUtils method updateHttpServerContextPaths.

public static void updateHttpServerContextPaths(final RoboContext context, final ServerContext serverContext, final Collection<HttpPathMethodDTO> paths) {
    final Map<PathHttpMethod, ServerPathConfig> resultPaths = paths.stream().map(e -> {
        RoboReference<Object> reference = context.getReference(e.getRoboUnit());
        return HttpPathUtils.toHttpPathConfig(e, reference);
    }).collect(Collectors.toMap(e -> new PathHttpMethod(e.getPath(), e.getMethod()), e -> e));
    resultPaths.put(new PathHttpMethod(Utf8Constant.UTF8_SOLIDUS, HttpMethod.GET), new ServerPathConfig(Utf8Constant.UTF8_SOLIDUS, null, HttpMethod.GET));
    serverContext.addPaths(resultPaths);
}
Also used : StringConstants(com.robo4j.util.StringConstants) JsonReader(com.robo4j.socket.http.json.JsonReader) ClientContext(com.robo4j.socket.http.units.ClientContext) Collection(java.util.Collection) ServerPathConfig(com.robo4j.socket.http.units.ServerPathConfig) Set(java.util.Set) PathHttpMethod(com.robo4j.socket.http.units.PathHttpMethod) Collectors(java.util.stream.Collectors) ArrayList(java.util.ArrayList) ServerContext(com.robo4j.socket.http.units.ServerContext) List(java.util.List) HttpPathMethodDTO(com.robo4j.socket.http.dto.HttpPathMethodDTO) Stream(java.util.stream.Stream) Map(java.util.Map) HttpMethod(com.robo4j.socket.http.HttpMethod) RoboContext(com.robo4j.RoboContext) ClientPathConfig(com.robo4j.socket.http.units.ClientPathConfig) SystemPath(com.robo4j.socket.http.enums.SystemPath) Utf8Constant(com.robo4j.util.Utf8Constant) JsonDocument(com.robo4j.socket.http.json.JsonDocument) Collections(java.util.Collections) RoboReference(com.robo4j.RoboReference) RoboReference(com.robo4j.RoboReference) ServerPathConfig(com.robo4j.socket.http.units.ServerPathConfig) PathHttpMethod(com.robo4j.socket.http.units.PathHttpMethod)

Example 3 with ServerContext

use of com.robo4j.socket.http.units.ServerContext in project robo4j by Robo4J.

the class ChannelUtils method getSocketAddressByContext.

public static SocketAddress getSocketAddressByContext(SocketContext<?> context) {
    if (context instanceof ClientContext) {
        final String clientHost = context.getPropertySafe(String.class, PROPERTY_HOST);
        final int clientPort = context.getPropertySafe(Integer.class, PROPERTY_SOCKET_PORT);
        return new InetSocketAddress(clientHost, clientPort);
    } else if (context instanceof ServerContext) {
        final int serverPort = context.getPropertySafe(Integer.class, PROPERTY_SOCKET_PORT);
        return new InetSocketAddress(serverPort);
    } else {
        throw new SocketException("invalid context" + context);
    }
}
Also used : SocketException(com.robo4j.socket.http.SocketException) ServerContext(com.robo4j.socket.http.units.ServerContext) InetSocketAddress(java.net.InetSocketAddress) ClientContext(com.robo4j.socket.http.units.ClientContext)

Aggregations

ClientContext (com.robo4j.socket.http.units.ClientContext)3 ServerContext (com.robo4j.socket.http.units.ServerContext)3 RoboContext (com.robo4j.RoboContext)2 RoboReference (com.robo4j.RoboReference)2 HttpPathMethodDTO (com.robo4j.socket.http.dto.HttpPathMethodDTO)2 SystemPath (com.robo4j.socket.http.enums.SystemPath)2 ClientPathConfig (com.robo4j.socket.http.units.ClientPathConfig)2 PathHttpMethod (com.robo4j.socket.http.units.PathHttpMethod)2 ServerPathConfig (com.robo4j.socket.http.units.ServerPathConfig)2 Collection (java.util.Collection)2 Map (java.util.Map)2 Collectors (java.util.stream.Collectors)2 HttpMethod (com.robo4j.socket.http.HttpMethod)1 SocketException (com.robo4j.socket.http.SocketException)1 JsonDocument (com.robo4j.socket.http.json.JsonDocument)1 JsonReader (com.robo4j.socket.http.json.JsonReader)1 HttpPathUtils.toPath (com.robo4j.socket.http.util.HttpPathUtils.toPath)1 StringConstants (com.robo4j.util.StringConstants)1 Utf8Constant (com.robo4j.util.Utf8Constant)1 InetSocketAddress (java.net.InetSocketAddress)1