示例#1
0
 public ServersStorage(ILogger logger, ITextSerializerFactory serializerFactory, string filePath)
 {
     _origin =
         new CollectionStorage <T>(
             new SafeStorage <IEnumerable <T> >(
                 new LoggingStorage <IEnumerable <T> >(
                     logger,
                     new FileStorage <IEnumerable <T> >(serializerFactory, filePath))));
 }
示例#2
0
 public ServerCache(ILogger logger, ITextSerializerFactory serializerFactory, Config config)
 {
     _origin =
         new CollectionStorage <LogicalServerContract>(
             new SafeStorage <IEnumerable <LogicalServerContract> >(
                 new LoggingStorage <IEnumerable <LogicalServerContract> >(
                     logger,
                     new FileStorage <IEnumerable <LogicalServerContract> >(
                         serializerFactory,
                         config.ServersJsonCacheFilePath))));
 }
 public GuestHoleConnector(
     IVpnServiceManager vpnServiceManager,
     IVpnConfig openVpnConfig,
     GuestHoleState guestHoleState,
     Common.Configuration.Config config,
     ICollectionStorage <GuestHoleServerContract> guestHoleServers)
 {
     _guestHoleServers  = guestHoleServers;
     _config            = config;
     _guestHoleState    = guestHoleState;
     _vpnServiceManager = vpnServiceManager;
     _openVpnConfig     = openVpnConfig;
 }
示例#4
0
 public GuestHoleConnector(
     IVpnServiceManager vpnServiceManager,
     IAppSettings appSettings,
     GuestHoleState guestHoleState,
     Common.Configuration.Config config,
     ICollectionStorage <GuestHoleServerContract> guestHoleServers)
 {
     _guestHoleServers  = guestHoleServers;
     _config            = config;
     _guestHoleState    = guestHoleState;
     _vpnServiceManager = vpnServiceManager;
     _appSettings       = appSettings;
 }
示例#5
0
        public ServerUpdater(
            IScheduler scheduler,
            Config appConfig,
            ServerManager serverManager,
            ApiServers apiServers,
            ICollectionStorage <LogicalServerContract> serverCache)
        {
            _serverManager = serverManager;
            _apiServers    = apiServers;
            _serverCache   = serverCache;

            _timer          = scheduler.Timer();
            _timer.Interval = appConfig.ServerUpdateInterval.RandomizedWithDeviation(0.2);
            _timer.Tick    += Timer_OnTick;

            _updateAction = new SingleAction(UpdateServers);
        }
示例#6
0
        public ServerUpdater(
            IScheduler scheduler,
            Common.Configuration.Config appConfig,
            ServerManager serverManager,
            IApiServers apiServers,
            ICollectionStorage <LogicalServerContract> serverCache,
            ServerLoadUpdater serverLoadUpdater,
            IAppSettings appSettings)
        {
            _serverManager = serverManager;
            _apiServers    = apiServers;
            _serverCache   = serverCache;
            _appSettings   = appSettings;

            _timer          = scheduler.Timer();
            _timer.Interval = appConfig.ServerUpdateInterval.RandomizedWithDeviation(0.2);
            _timer.Tick    += Timer_OnTick;

            _updateAction = new SingleAction(UpdateServers);
            serverLoadUpdater.ServerLoadsUpdated += OnServerLoadsUpdated;
        }
示例#7
0
 public CardsController(ICardStorage cardStorage, ICollectionStorage collectionStorage)
 {
     this.cardStorage       = cardStorage;
     this.collectionStorage = collectionStorage;
 }