Exemplo n.º 1
0
 protected override void RegisterProtocolHandlers(IEtpServer etpServer)
 {
     if (etpServer.SupportedVersion == EtpVersion.v11)
     {
         etpServer.Register(() => Container.Resolve <Etp11.Protocol.ChannelStreaming.IChannelStreamingProducer>());
         etpServer.Register(() => Container.Resolve <Etp11.Protocol.ChannelStreaming.IChannelStreamingConsumer>());
         etpServer.Register(() => Container.Resolve <Etp11.Protocol.Discovery.IDiscoveryStore>());
         etpServer.Register(() => Container.Resolve <Etp11.Protocol.Store.IStoreStore>());
         etpServer.Register(() => Container.Resolve <Etp11.Protocol.StoreNotification.IStoreNotificationStore>());
         etpServer.Register(() => Container.Resolve <Etp11.Protocol.GrowingObject.IGrowingObjectStore>());
     }
     else
     {
         etpServer.Register(() => Container.Resolve <Etp12.Protocol.ChannelStreaming.IChannelStreamingProducer>());
         etpServer.Register(() => Container.Resolve <Etp12.Protocol.ChannelStreaming.IChannelStreamingConsumer>());
         //etpServer.Register(() => Container.Resolve<Etp12.Protocol.ChannelDataLoad.IChannelDataLoadConsumer>());
         etpServer.Register(() => Container.Resolve <Etp12.Protocol.Discovery.IDiscoveryStore>());
         etpServer.Register(() => Container.Resolve <Etp12.Protocol.Store.IStoreStore>());
         etpServer.Register(() => Container.Resolve <Etp12.Protocol.StoreNotification.IStoreNotificationStore>());
         etpServer.Register(() => Container.Resolve <Etp12.Protocol.GrowingObject.IGrowingObjectStore>());
         //etpServer.Register(() => Container.Resolve<Etp12.Protocol.GrowingObjectNotification.IGrowingObjectNotificationStore>());
         //etpServer.Register(() => Container.Resolve<Etp12.Protocol.GrowingObjectQuery.IGrowingObjectQueryStore>());
         etpServer.Register(() => Container.Resolve <Etp12.Protocol.DiscoveryQuery.IDiscoveryQueryStore>());
         etpServer.Register(() => Container.Resolve <Etp12.Protocol.StoreQuery.IStoreQueryStore>());
     }
 }
Exemplo n.º 2
0
        private void OnServerSessionConnected(object sender, IEtpSession session)
        {
            var server = session as IEtpServer;

            if (server == null)
            {
                return;
            }

            server.Output = LogClientOutput;
            _server       = server;

            var message = $"[{server.SessionId}] ETP client connected.";

            LogClientOutput(message, true);
            _log.Debug(message);

            EtpExtender = server.CreateEtpExtender(Model.RequestedProtocols);

            EtpExtender.Register(LogObjectDetails,
                                 onOpenSession: OnOpenSession,
                                 onCloseSession: OnCloseSession,
                                 onGetResourcesResponse: OnGetResourcesResponse,
                                 onObject: OnObject,
                                 onObjectPart: OnObjectPart,
                                 onOpenChannel: OnOpenChannel);
        }
Exemplo n.º 3
0
        /// <summary>
        /// Registers relevant protocol handlers and factories on the specified <see cref="IEtpServer"/>.
        /// </summary>
        /// <param name="server">The ETP server to register handlers on.</param>
        public void RegisterAll(IEtpServer server)
        {
            foreach (var pair in RegisteredFactories)
            {
                var register        = ((Action <Func <IProtocolHandler> >)server.Register).Method.GetGenericMethodDefinition();
                var genericRegister = register.MakeGenericMethod(pair.Key);
                genericRegister.Invoke(server, new object[] { pair.Value });
            }

            foreach (var pair in RegisteredHandlers)
            {
                var register        = ((Action)server.Register <IProtocolHandler, IProtocolHandler>).Method.GetGenericMethodDefinition();
                var genericRegister = register.MakeGenericMethod(pair.Key, pair.Value);
                genericRegister.Invoke(server, new object[] { });
            }
        }
Exemplo n.º 4
0
        private async void OnServerSessionClosed(object sender, IEtpSession session)
        {
            var server = session as IEtpServer;

            if (server == null)
            {
                return;
            }

            var message = $"[{server.SessionId}] ETP client disconnected.";

            LogClientOutput(message, true);
            _log.Debug(message);

            await OnCloseSession();

            if (server == _server)
            {
                _server = null;
            }
        }
Exemplo n.º 5
0
 /// <summary>
 /// Initializes a new <see cref="EtpServerEventArgs"/> instance.
 /// </summary>
 /// <param name="server">The ETP server.</param>
 public EtpServerEventArgs(IEtpServer server)
 {
     Server = server;
 }
Exemplo n.º 6
0
        protected override void InitializeServer(IEtpServer server)
        {
            var serverStoreHandler = new CustomerHandler();

            serverStoreHandler.InitializeSession(server);
        }
Exemplo n.º 7
0
 /// <summary>
 /// Registers the protocol handlers supported by the specified <see cref="IEtpServer" />.
 /// </summary>
 /// <param name="etpServer">The ETP server.</param>
 protected virtual void RegisterProtocolHandlers(IEtpServer etpServer)
 {
 }
Exemplo n.º 8
0
        protected override void InitializeServer(IEtpServer server)
        {
            var serverHandler = new StoreHandler(TestDataStore);

            serverHandler.InitializeSession(server);
        }
Exemplo n.º 9
0
 protected abstract void InitializeServer(IEtpServer server);