private void RegisterSettings()
        {
            try
            {
                _container.Register(Castle.MicroKernel.Registration.Classes.FromAssemblyInDirectory(new AssemblyFilter(WindowsServiceSystemCore.ComponentsPath))
                                    .BasedOn <ISettings>()
                                    .WithServiceAllInterfaces()
                                    .LifestyleSingleton()
                                    );

                IDataAccessProxySettings dataAccessProxySettings = _container.Resolve <IDataAccessProxySettings>();

                // TODO

                IpEndPointsSource <IPEndPoint> .Create(2);

                dataAccessProxySettings.IpEndPoints = IpEndPointsSource <IPEndPoint> .GetInstance;
                dataAccessProxySettings.IpEndPoints.Enqueue(new IPEndPoint(IPAddress.Parse("127.0.0.1"), 13000));
                dataAccessProxySettings.IpEndPoints.Enqueue(new IPEndPoint(IPAddress.Parse("192.168.0.106"), 13000));

                IWindowsServiceEngineSettings engineSettings = _container.Resolve <IWindowsServiceEngineSettings>();
                engineSettings.Set = int.MaxValue;
            }
            catch (Exception ex)
            {
                throw new InitializeSystemException(Resources.RegisterSettingsFailed, ex);
            }
        }
示例#2
0
        private void RegisterDataAccessProxySettings(IDataAccessProxySettings dataAccessProxySettings)
        {
            if (_dataAccessProxySettings != null)
            {
                string message = string.Format(Resources.RegisterDataAccessProxySettingsError, dataAccessProxySettings.GetType().Name, dataAccessProxySettings.GetType().Name);

                LogTools logTools = new LogTools();
                logTools.WriteLogToConsole <Error>(message);
                logTools.WriteLogToFile <Error>(message);
            }

            _dataAccessProxySettings = dataAccessProxySettings;
        }
示例#3
0
        public ChannelManager(IDataAccessProxySettings dataAccessProxySettings)
        {
            IPEndPoint ipEndPoint = dataAccessProxySettings.IpEndPoints.GetNextItem();

            RequestContract = CreateChannel(ipEndPoint.Address, ipEndPoint.Port);
        }
示例#4
0
 public ReconnectChannelManager(IDataAccessProxySettings dataAccessProxySettings)
 {
     _dataAccessProxySettings = dataAccessProxySettings;
 }
示例#5
0
 public ApiProviderWcfClient(IDataAccessProxySettings dataAccessProxySettings) :
     base(new ChannelManager <IApiProviderContract>(dataAccessProxySettings),
          new ReconnectChannelManager <IApiProviderContract>(dataAccessProxySettings))
 {
 }
        public DataAccessProxyCore(IDataAccessProxySettings dataAccessProxySettings)
        {
            _dataAccessProxySettings = dataAccessProxySettings;

            _apiProviderWcfClient = new ApiProviderWcfClient(dataAccessProxySettings);
        }