Example #1
0
 internal HandshakeServer(ApplicationProtocolRepository applicationProtocolRepository, ModifierProtocolRepository modifierProtocolRepository, Channel channel)
 {
     this._channel = channel;
     this._applicationProtocolRepository = applicationProtocolRepository;
     this._modifierProtocolRepository    = modifierProtocolRepository;
     this._supportedApplicationProtocol  = applicationProtocolRepository.SupportedProtocol();
 }
Example #2
0
        public virtual CompletableFuture <ProtocolStack> Initiate(Channel channel, ApplicationProtocolRepository applicationProtocolRepository, ModifierProtocolRepository modifierProtocolRepository)
        {
            this._channel = channel;

            this._applicationProtocolRepository = applicationProtocolRepository;
            this._supportedApplicationProtocol  = applicationProtocolRepository.SupportedProtocol();

            this._modifierProtocolRepository = modifierProtocolRepository;
            this._supportedModifierProtocols = modifierProtocolRepository.SupportedProtocols();

            _negotiatedModifierProtocols = new List <Pair <string, Optional <Protocol_ModifierProtocol> > >(_supportedModifierProtocols.Count);

            channel.Write(InitialMagicMessage.Instance());

            SendProtocolRequests(channel, _supportedApplicationProtocol, _supportedModifierProtocols);

            return(_future);
        }