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>()); } }
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); }
/// <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[] { }); } }
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; } }
/// <summary> /// Initializes a new <see cref="EtpServerEventArgs"/> instance. /// </summary> /// <param name="server">The ETP server.</param> public EtpServerEventArgs(IEtpServer server) { Server = server; }
protected override void InitializeServer(IEtpServer server) { var serverStoreHandler = new CustomerHandler(); serverStoreHandler.InitializeSession(server); }
/// <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) { }
protected override void InitializeServer(IEtpServer server) { var serverHandler = new StoreHandler(TestDataStore); serverHandler.InitializeSession(server); }
protected abstract void InitializeServer(IEtpServer server);