C# Class Halibut.Transport.Protocol.MessageExchangeProtocol

Implements the core message exchange protocol for both the client and server.
Afficher le fichier Open project: OctopusDeploy/Halibut Class Usage Examples

Méthodes publiques

Méthode Description
ExchangeAsClient ( RequestMessage request ) : Halibut.Transport.Protocol.ResponseMessage
ExchangeAsServer ( ResponseMessage>.Func incomingRequestProcessor, IPendingRequestQueue>.Func pendingRequests ) : void
ExchangeAsSubscriber ( Uri subscriptionId, ResponseMessage>.Func incomingRequestProcessor, int maxAttempts = int.MaxValue ) : void
MessageExchangeProtocol ( IMessageExchangeStream stream ) : System
MessageExchangeProtocol ( Stream stream, ILog log ) : System

Private Methods

Méthode Description
InvokeAndWrapAnyExceptions ( RequestMessage request, ResponseMessage>.Func incomingRequestProcessor ) : Halibut.Transport.Protocol.ResponseMessage
PrepareExchangeAsClient ( ) : void
ProcessClientRequests ( ResponseMessage>.Func incomingRequestProcessor ) : void
ProcessSubscriber ( IPendingRequestQueue pendingRequests ) : void
ReceiveAndProcessRequest ( IMessageExchangeStream stream, ResponseMessage>.Func incomingRequestProcessor ) : void

Method Details

ExchangeAsClient() public méthode

public ExchangeAsClient ( RequestMessage request ) : Halibut.Transport.Protocol.ResponseMessage
request RequestMessage
Résultat Halibut.Transport.Protocol.ResponseMessage

ExchangeAsServer() public méthode

public ExchangeAsServer ( ResponseMessage>.Func incomingRequestProcessor, IPendingRequestQueue>.Func pendingRequests ) : void
incomingRequestProcessor ResponseMessage>.Func
pendingRequests IPendingRequestQueue>.Func
Résultat void

ExchangeAsSubscriber() public méthode

public ExchangeAsSubscriber ( Uri subscriptionId, ResponseMessage>.Func incomingRequestProcessor, int maxAttempts = int.MaxValue ) : void
subscriptionId System.Uri
incomingRequestProcessor ResponseMessage>.Func
maxAttempts int
Résultat void

MessageExchangeProtocol() public méthode

public MessageExchangeProtocol ( IMessageExchangeStream stream ) : System
stream IMessageExchangeStream
Résultat System

MessageExchangeProtocol() public méthode

public MessageExchangeProtocol ( Stream stream, ILog log ) : System
stream Stream
log ILog
Résultat System