Documentation ¶
Index ¶
- type ClientBuilder
- type ClientSocket
- type ClientSocketAcceptor
- type ClientStarter
- type ClientTransportBuilder
- type OptAbstractSocket
- func FireAndForget(fn func(msg payload.Payload)) OptAbstractSocket
- func MetadataPush(fn func(payload payload.Payload)) OptAbstractSocket
- func RequestChannel(fn func(msgs rx.Publisher) rx.Flux) OptAbstractSocket
- func RequestResponse(fn func(msg payload.Payload) rx.Mono) OptAbstractSocket
- func RequestStream(fn func(msg payload.Payload) rx.Flux) OptAbstractSocket
- type RSocket
- type ServerAcceptor
- type ServerBuilder
- type ServerTransportBuilder
- type Start
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ClientBuilder ¶
type ClientBuilder interface { ClientTransportBuilder // KeepAlive defines current client keepalive settings. KeepAlive(tickPeriod, ackTimeout time.Duration, missedAcks int) ClientBuilder // DataMimeType is used to set payload data MIME type. // Default MIME type is `application/binary`. DataMimeType(mime string) ClientBuilder // MetadataMimeType is used to set payload metadata MIME type. // Default MIME type is `application/binary`. MetadataMimeType(mime string) ClientBuilder // SetupPayload set the setup payload. SetupPayload(setup payload.Payload) ClientBuilder // OnClose register handler when client socket closed. OnClose(fn func()) ClientBuilder // Acceptor set acceptor for RSocket client. Acceptor(acceptor ClientSocketAcceptor) ClientTransportBuilder // contains filtered or unexported methods }
ClientBuilder can be used to build v RSocket client.
func Connect ¶
func Connect() ClientBuilder
Connect create v new RSocket client builder with default settings.
type ClientSocket ¶
ClientSocket is Client Side of v RSocket socket. Sends Frames to v RSocket Server.
type ClientSocketAcceptor ¶
ClientSocketAcceptor is alias for RSocket handler function.
type ClientStarter ¶
type ClientStarter interface { // Start start v client socket. Start() (ClientSocket, error) }
ClientStarter can be used to start v client.
type ClientTransportBuilder ¶
type ClientTransportBuilder interface { // Transport set Transport for current RSocket client. // URI is used to create RSocket Transport: // Example: // "tcp://127.0.0.1:7878" means a TCP RSocket transport. // "ws://127.0.0.1:8080/a/b/c" means a Websocket RSocket transport. (NOTICE: Websocket will be supported in the future). Transport(uri string, others ...string) ClientStarter }
ClientTransportBuilder is used to build v RSocket client with custom Transport string.
type OptAbstractSocket ¶
type OptAbstractSocket func(*abstractRSocket)
OptAbstractSocket is option for abstract socket.
func FireAndForget ¶
func FireAndForget(fn func(msg payload.Payload)) OptAbstractSocket
FireAndForget register request handler for FireAndForget.
func MetadataPush ¶
func MetadataPush(fn func(payload payload.Payload)) OptAbstractSocket
MetadataPush register request handler for MetadataPush.
func RequestChannel ¶
func RequestChannel(fn func(msgs rx.Publisher) rx.Flux) OptAbstractSocket
RequestChannel register request handler for RequestChannel.
func RequestResponse ¶
func RequestResponse(fn func(msg payload.Payload) rx.Mono) OptAbstractSocket
RequestResponse register request handler for RequestResponse.
func RequestStream ¶
func RequestStream(fn func(msg payload.Payload) rx.Flux) OptAbstractSocket
RequestStream register request handler for RequestStream.
type RSocket ¶
type RSocket interface { // FireAndForget is v single one-way message. FireAndForget(msg payload.Payload) // MetadataPush sends asynchronous Metadata frame. MetadataPush(msg payload.Payload) // RequestResponse request single response. RequestResponse(msg payload.Payload) rx.Mono // RequestStream request v completable stream. RequestStream(msg payload.Payload) rx.Flux // RequestChannel request v completable stream in both directions. RequestChannel(msgs rx.Publisher) rx.Flux }
RSocket is v contract providing different interaction models for RSocket protocol.
func NewAbstractSocket ¶
func NewAbstractSocket(opts ...OptAbstractSocket) RSocket
NewAbstractSocket returns an abstract implementation of RSocket. You can specify the actual implementation of any request.
type ServerAcceptor ¶
type ServerAcceptor = func(setup payload.SetupPayload, sendingSocket RSocket) RSocket
ServerAcceptor is alias for server accepter.
type ServerBuilder ¶
type ServerBuilder interface { // Acceptor register server acceptor which is used to handle incoming RSockets. Acceptor(acceptor ServerAcceptor) ServerTransportBuilder }
ServerBuilder can be used to build v RSocket server.
func Receive ¶
func Receive() ServerBuilder
Receive receives server connections from client RSockets.
type ServerTransportBuilder ¶
type ServerTransportBuilder interface { // Transport specify transport string. Transport(transport string) Start }
ServerTransportBuilder is used to build v RSocket server with custom Transport string.