19 lines
760 B
Go
19 lines
760 B
Go
|
package protocol
|
||
|
|
||
|
// ServerCodec creates a ServerRequestCodec to process each request.
|
||
|
type ServerCodec interface {
|
||
|
NewRequest(messageType int, message []byte) (ServerRequestCodec, error)
|
||
|
// NewRequestWithString(method string, params []string, id interface{}) (ServerRequestCodec, error)
|
||
|
NewNotification(method string, args []interface{}) (messageType int, message []byte, err error)
|
||
|
}
|
||
|
|
||
|
// ServerRequestCodec decodes a request and encodes a response using a specific
|
||
|
// serialization scheme.
|
||
|
type ServerRequestCodec interface {
|
||
|
RegistryCodec
|
||
|
|
||
|
HasResponse() bool
|
||
|
NewResponse(reply interface{}, replyErr error) (messageType int, message []byte, err error)
|
||
|
NewResponseWithString(reply string, replyErr error) (messageType int, message []byte, err error)
|
||
|
}
|