io.scalecube.services.transport.rsocket.RSocketServiceAcceptor Maven / Gradle / Ivy
package io.scalecube.services.transport.rsocket;
import io.rsocket.AbstractRSocket;
import io.rsocket.ConnectionSetupPayload;
import io.rsocket.Payload;
import io.rsocket.RSocket;
import io.rsocket.SocketAcceptor;
import io.rsocket.util.ByteBufPayload;
import io.scalecube.services.api.ServiceMessage;
import io.scalecube.services.exceptions.BadRequestException;
import io.scalecube.services.exceptions.ServiceException;
import io.scalecube.services.exceptions.ServiceUnavailableException;
import io.scalecube.services.methods.ServiceMethodInvoker;
import io.scalecube.services.methods.ServiceMethodRegistry;
import io.scalecube.services.transport.api.ReferenceCountUtil;
import io.scalecube.services.transport.api.ServiceMessageCodec;
import java.util.function.Consumer;
import org.reactivestreams.Publisher;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import reactor.core.publisher.Flux;
import reactor.core.publisher.Mono;
/**
* RSocket service acceptor. Implementation of {@link SocketAcceptor}. See for details and supported
* methods -- {@link AbstractRSocket0}.
*/
public class RSocketServiceAcceptor implements SocketAcceptor {
private static final Logger LOGGER = LoggerFactory.getLogger(RSocketServiceAcceptor.class);
private final Consumer © 2015 - 2025 Weber Informatics LLC | Privacy Policy