/// <inheritdoc />
        public ServerApplicationBase([NotNull] NetworkAddressInfo serverAddress, [NotNull] INetworkMessageDispatchingStrategy <BaseGameServerPayload, BaseGameClientPayload> messageHandlingStrategy, [NotNull] IManagedSessionFactory managedSessionFactory, [NotNull] IManagedClientSessionFactory managedClientSessionFactory)
            : base(serverAddress, messageHandlingStrategy, new NoOpLogger())
        {
            if (serverAddress == null)
            {
                throw new ArgumentNullException(nameof(serverAddress));
            }
            if (messageHandlingStrategy == null)
            {
                throw new ArgumentNullException(nameof(messageHandlingStrategy));
            }
            ManagedSessionFactory       = managedSessionFactory ?? throw new ArgumentNullException(nameof(managedSessionFactory));
            ManagedClientSessionFactory = managedClientSessionFactory ?? throw new ArgumentNullException(nameof(managedClientSessionFactory));

            if (Logger.IsDebugEnabled)
            {
                Logger.Debug($"Created server base.");
            }
        }
예제 #2
0
 /// <inheritdoc />
 private ProxiedTcpServerApplicationBase([NotNull] NetworkAddressInfo serverAddress, [NotNull] NetworkAddressInfo proxyToEndpointAddress, [NotNull] ILog logger, [NotNull] INetworkMessageDispatchingStrategy <TPayloadWriteType, TPayloadReadType> messageHandlingStrategy, [NotNull] PayloadHandlerRegisterationModules <TPayloadReadType, TPayloadWriteType> handlerModulePair, [NotNull] NetworkSerializerServicePair serializers)
     : base(serverAddress, messageHandlingStrategy, logger)
 {
     HandlerModulePair      = handlerModulePair ?? throw new ArgumentNullException(nameof(handlerModulePair));
     Serializers            = serializers ?? throw new ArgumentNullException(nameof(serializers));
     ProxyToEndpointAddress = proxyToEndpointAddress ?? throw new ArgumentNullException(nameof(proxyToEndpointAddress));
     ServiceContainer       = BuildServiceContainer();
 }