コード例 #1
0
 public void Initialize()
 {
     _logger    = Substitute.For <ILogger>();
     _decorated = Substitute.For <IVpnServiceManager>();
     _modals    = Substitute.For <IModals>();
     _baseFilteringEngineService = Substitute.For <IService>();
 }
コード例 #2
0
 public VpnConnectionManager(IVpnServiceManager serviceManager, ApiServersVpnConnector apiServerConnector)
 {
     this._serviceManager     = serviceManager;
     this._apiServerConnector = apiServerConnector;
     this._serviceManager.RegisterCallback(new Action <OpenVpnErrorOccuredEventArgs>(this.OnOpenVpnErrorOccured));
     this._serviceManager.RegisterCallback(new Action <OpenVpnStateChangedEventArgs>(this.OnOpenVpnStateChanged));
 }
コード例 #3
0
 public ApiServersVpnConnector(IVpnServiceManager vpnServiceManager, ISettings settings, UserContext userContext, CyberSecHostsStorage cyberSecHostsStorage, IOpenVpnConfigsFileStorage configsFileStorage)
 {
     this._vpnServiceManager    = vpnServiceManager;
     this._settings             = settings;
     this._userContext          = userContext;
     this._cyberSecHostsStorage = cyberSecHostsStorage;
     this._configsFileStorage   = configsFileStorage;
 }
コード例 #4
0
 public ApiServersVpnConnector(IVpnServiceManager vpnServiceManager, UserPreferences userPreferences, IUserContext userContext, CyberSecManager cyberSecManager, OpenVpnConfigsDownloadManager downloadManager)
 {
     this._vpnServiceManager = vpnServiceManager;
     this._userPreferences   = userPreferences;
     this._userContext       = userContext;
     this._cyberSecManager   = cyberSecManager;
     this._downloadManager   = downloadManager;
 }
コード例 #5
0
        public VpnConnectionSpeed(IVpnServiceManager vpnServiceManager)
        {
            _vpnServiceManager = vpnServiceManager;

            _timer = new DispatcherTimer
            {
                Interval = TimeSpan.FromSeconds(1)
            };
            _timer.Tick += UpdateSpeed;
        }
コード例 #6
0
 public VpnManager(
     IVpnServiceManager vpnServiceManager,
     IVpnReconnector vpnReconnector,
     IVpnConnector vpnConnector)
 {
     _vpnServiceManager             = vpnServiceManager;
     _vpnReconnector                = vpnReconnector;
     _vpnConnector                  = vpnConnector;
     _vpnConnector.VpnStateChanged += OnConnectorVpnStateChanged;
 }
コード例 #7
0
 public ExpiredSessionHandler(
     IScheduler scheduler,
     IVpnServiceManager vpnServiceManager,
     LoginViewModel loginViewModel,
     UserAuth userAuth)
 {
     _userAuth          = userAuth;
     _loginViewModel    = loginViewModel;
     _vpnServiceManager = vpnServiceManager;
     _scheduler         = scheduler;
 }
コード例 #8
0
 public ServiceStartDecorator(
     ILogger logger,
     IVpnServiceManager decorated,
     IModals modals,
     IService baseFilteringEngineService)
 {
     _baseFilteringEngineService = baseFilteringEngineService;
     _logger    = logger;
     _modals    = modals;
     _decorated = decorated;
 }
コード例 #9
0
ファイル: VpnManager.cs プロジェクト: zhenguang/win-app
 public VpnManager(
     ILogger logger,
     ProfileConnector profileConnector,
     IVpnServiceManager vpnServiceManager,
     IAppSettings appSettings)
 {
     _logger               = logger;
     _profileConnector     = profileConnector;
     _appSettings          = appSettings;
     _vpnServiceManager    = vpnServiceManager;
     _lastServerCandidates = _profileConnector.ServerCandidates(null);
 }
コード例 #10
0
 public OutdatedAppNotification(
     IModals modals,
     UserAuth userAuth,
     LoginWindow loginWindow,
     IScheduler scheduler,
     IVpnServiceManager vpnServiceManager)
 {
     _modals            = modals;
     _userAuth          = userAuth;
     _loginWindow       = loginWindow;
     _scheduler         = scheduler;
     _vpnServiceManager = vpnServiceManager;
 }
コード例 #11
0
 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;
 }
コード例 #12
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;
 }
コード例 #13
0
 public VpnManager(
     ILogger logger,
     ProfileConnector profileConnector,
     IVpnServiceManager vpnServiceManager,
     IAppSettings appSettings,
     GuestHoleState guestHoleState,
     IUserStorage userStorage)
 {
     _logger               = logger;
     _profileConnector     = profileConnector;
     _appSettings          = appSettings;
     _vpnServiceManager    = vpnServiceManager;
     _guestHoleState       = guestHoleState;
     _userStorage          = userStorage;
     _lastServerCandidates = _profileConnector.ServerCandidates(null);
 }
コード例 #14
0
ファイル: UpdateViewModel.cs プロジェクト: Ifry/win-app
        public UpdateViewModel(
            IDialogs dialogs,
            IOsProcesses osProcesses,
            IModals modals,
            IAppSettings appSettings,
            IVpnServiceManager vpnServiceManager,
            ISystemState systemState,
            ISettingsServiceClientManager settingsServiceClientManager)
        {
            _dialogs                      = dialogs;
            _osProcesses                  = osProcesses;
            _modals                       = modals;
            _appSettings                  = appSettings;
            _vpnServiceManager            = vpnServiceManager;
            _systemState                  = systemState;
            _settingsServiceClientManager = settingsServiceClientManager;

            OpenAboutCommand = new RelayCommand(OpenAbout);
        }
コード例 #15
0
ファイル: VpnManager.cs プロジェクト: DigitEgal/win-app
 public VpnManager(
     ProfileConnector profileConnector,
     ProfileManager profileManager,
     IVpnServiceManager vpnServiceManager,
     IAppSettings appSettings,
     GuestHoleState guestHoleState,
     IUserStorage userStorage,
     INetworkInterfaceLoader networkInterfaceLoader,
     IPopupWindows popupWindows)
 {
     _profileConnector       = profileConnector;
     _profileManager         = profileManager;
     _vpnServiceManager      = vpnServiceManager;
     _appSettings            = appSettings;
     _guestHoleState         = guestHoleState;
     _userStorage            = userStorage;
     _networkInterfaceLoader = networkInterfaceLoader;
     _popupWindows           = popupWindows;
     _lastServerCandidates   = _profileConnector.ServerCandidates(null);
 }
コード例 #16
0
ファイル: ProfileConnector.cs プロジェクト: mauroxdev/win-app
 public ProfileConnector(
     ILogger logger,
     IUserStorage userStorage,
     IAppSettings appSettings,
     ServerManager serverManager,
     ServerCandidatesFactory serverCandidatesFactory,
     IVpnServiceManager vpnServiceManager,
     IModals modals,
     IDialogs dialogs,
     VpnCredentialProvider vpnCredentialProvider)
 {
     _logger = logger;
     _vpnCredentialProvider = vpnCredentialProvider;
     _modals                  = modals;
     _dialogs                 = dialogs;
     _userStorage             = userStorage;
     _serverManager           = serverManager;
     _serverCandidatesFactory = serverCandidatesFactory;
     _appSettings             = appSettings;
     _vpnServiceManager       = vpnServiceManager;
 }
コード例 #17
0
 public DisconnectError(IModals modals,
                        IAppSettings appSettings,
                        IUserStorage userStorage,
                        MaximumDeviceLimitModalViewModel maximumDeviceLimitModalViewModel,
                        ConnectionErrorResolver connectionErrorResolver,
                        IPopupWindows popupWindows,
                        DelinquencyPopupViewModel delinquencyPopupViewModel,
                        IVpnManager vpnManager,
                        INotificationSender notificationSender,
                        IAuthCertificateManager authCertificateManager,
                        IVpnServiceManager vpnServiceManager)
 {
     _modals      = modals;
     _appSettings = appSettings;
     _userStorage = userStorage;
     _maximumDeviceLimitModalViewModel = maximumDeviceLimitModalViewModel;
     _connectionErrorResolver          = connectionErrorResolver;
     _popupWindows = popupWindows;
     _delinquencyPopupViewModel = delinquencyPopupViewModel;
     _vpnManager             = vpnManager;
     _notificationSender     = notificationSender;
     _authCertificateManager = authCertificateManager;
     _vpnServiceManager      = vpnServiceManager;
 }
コード例 #18
0
 public ServiceStartDecorator(ILogger logger, IVpnServiceManager decorated, IModals modals)
 {
     _logger = logger;
     _modals = modals;
     _decorated = decorated;
 }
 public VpnServiceManagerLoggingDecorator(IVpnServiceManager manager, ILogger logger)
 {
     this._decorated = manager;
     this._logger    = logger;
 }
コード例 #20
0
ファイル: Bootstraper.cs プロジェクト: DigitEgal/win-app
        private void RegisterEvents()
        {
            IVpnServiceManager vpnServiceManager = Resolve <IVpnServiceManager>();
            UserAuth           userAuth          = Resolve <UserAuth>();
            AppWindow          appWindow         = Resolve <AppWindow>();
            IAppSettings       appSettings       = Resolve <IAppSettings>();

            Resolve <ISettingsServiceClientManager>();

            Resolve <IServerUpdater>().ServersUpdated += (sender, e) =>
            {
                IEnumerable <IServersAware> instances = Resolve <IEnumerable <IServersAware> >();
                foreach (IServersAware instance in instances)
                {
                    instance.OnServersUpdated();
                }
            };

            Resolve <IUserLocationService>().UserLocationChanged += (sender, location) =>
            {
                IEnumerable <IUserLocationAware> instances = Resolve <IEnumerable <IUserLocationAware> >();
                foreach (IUserLocationAware instance in instances)
                {
                    instance.OnUserLocationChanged(location);
                }
            };

            Resolve <IAnnouncements>().AnnouncementsChanged += (sender, e) =>
            {
                IEnumerable <IAnnouncementsAware> instances = Resolve <IEnumerable <IAnnouncementsAware> >();
                foreach (IAnnouncementsAware instance in instances)
                {
                    instance.OnAnnouncementsChanged();
                }
            };

            userAuth.UserLoggingIn += (sender, e) => OnUserLoggingIn();

            userAuth.UserLoggedIn += async(sender, e) =>
            {
                GuestHoleState guestHoleState = Resolve <GuestHoleState>();
                await Resolve <IServerUpdater>().Update();

                if (guestHoleState.Active)
                {
                    await Resolve <IVpnServiceManager>().Disconnect(VpnError.NoneKeepEnabledKillSwitch);

                    guestHoleState.SetState(false);
                }

                IEnumerable <ILoggedInAware> instances = Resolve <IEnumerable <ILoggedInAware> >();
                foreach (ILoggedInAware instance in instances)
                {
                    instance.OnUserLoggedIn();
                }

                await SwitchToAppWindow(e.AutoLogin);
            };

            userAuth.UserLoggedOut += (sender, e) =>
            {
                Resolve <IModals>().CloseAll();
                SwitchToLoginWindow();
                Resolve <AppWindow>().Hide();
                IEnumerable <ILogoutAware> instances = Resolve <IEnumerable <ILogoutAware> >();
                foreach (ILogoutAware instance in instances)
                {
                    instance.OnUserLoggedOut();
                }
            };

            Resolve <IUserStorage>().UserDataChanged += (sender, e) =>
            {
                IEnumerable <IUserDataAware> instances = Resolve <IEnumerable <IUserDataAware> >();
                foreach (IUserDataAware instance in instances)
                {
                    instance.OnUserDataChanged();
                }
            };

            Resolve <IUserStorage>().VpnPlanChanged += async(sender, e) =>
            {
                IEnumerable <IVpnPlanAware> instances = Resolve <IEnumerable <IVpnPlanAware> >();
                foreach (IVpnPlanAware instance in instances)
                {
                    await instance.OnVpnPlanChangedAsync(e);
                }
            };

            Resolve <SyncProfiles>().SyncStatusChanged += (sender, e) =>
            {
                IEnumerable <IProfileSyncStatusAware> instances = Resolve <IEnumerable <IProfileSyncStatusAware> >();
                foreach (IProfileSyncStatusAware instance in instances)
                {
                    instance.OnProfileSyncStatusChanged(e.Status, e.ErrorMessage, e.ChangesSyncedAt);
                }
            };

            Resolve <PinFactory>().PinsChanged += (sender, e) =>
            {
                IEnumerable <IPinChangeAware> instances = Resolve <IEnumerable <IPinChangeAware> >();
                foreach (IPinChangeAware instance in instances)
                {
                    instance.OnPinsChanged();
                }
            };

            vpnServiceManager.RegisterCallback(async(e) =>
            {
                Resolve <IVpnManager>().OnVpnStateChanged(e);
                await Resolve <LoginViewModel>().OnVpnStateChanged(e);
                await Resolve <GuestHoleConnector>().OnVpnStateChanged(e);
            });

            Resolve <IVpnManager>().VpnStateChanged += (sender, e) =>
            {
                IEnumerable <IVpnStateAware> instances = Resolve <IEnumerable <IVpnStateAware> >();
                foreach (IVpnStateAware instance in instances)
                {
                    instance.OnVpnStateChanged(e);
                }

                Resolve <IEventAggregator>().PublishOnCurrentThread(e);
            };

            Resolve <UpdateService>().UpdateStateChanged += (sender, e) =>
            {
                IEnumerable <IUpdateStateAware> instances = Resolve <IEnumerable <IUpdateStateAware> >();
                foreach (IUpdateStateAware instance in instances)
                {
                    instance.OnUpdateStateChanged(e);
                }
            };

            Resolve <P2PDetector>().TrafficForwarded += (sender, ip) =>
            {
                IEnumerable <ITrafficForwardedAware> instances = Resolve <IEnumerable <ITrafficForwardedAware> >();
                foreach (ITrafficForwardedAware instance in instances)
                {
                    instance.OnTrafficForwarded(ip);
                }
            };

            Resolve <SidebarManager>().ManualSidebarModeChangeRequested += appWindow.OnManualSidebarModeChangeRequested;

            appSettings.PropertyChanged += (sender, e) =>
            {
                if (e.PropertyName == nameof(IAppSettings.Language))
                {
                    TranslationSource.Instance.CurrentCulture = new CultureInfo(appSettings.Language);
                }

                IEnumerable <ISettingsAware> instances = Resolve <IEnumerable <ISettingsAware> >();
                foreach (ISettingsAware instance in instances)
                {
                    instance.OnAppSettingsChanged(e);
                }
            };

            Resolve <Onboarding.Onboarding>().StepChanged += (sender, e) =>
            {
                IEnumerable <IOnboardingStepAware> instances = Resolve <IEnumerable <IOnboardingStepAware> >();
                foreach (IOnboardingStepAware instance in instances)
                {
                    instance.OnStepChanged(e);
                }
            };

            Resolve <TrialTimer>().TrialTimerTicked += (sender, e) =>
            {
                IEnumerable <ITrialDurationAware> instances = Resolve <IEnumerable <ITrialDurationAware> >();
                foreach (ITrialDurationAware instance in instances)
                {
                    instance.OnTrialSecondElapsed(e);
                }
            };

            Resolve <Trial.Trial>().StateChanged += async(sender, e) =>
            {
                IEnumerable <ITrialStateAware> instances = Resolve <IEnumerable <ITrialStateAware> >();
                foreach (ITrialStateAware instance in instances)
                {
                    await instance.OnTrialStateChangedAsync(e);
                }
            };

            Resolve <GuestHoleState>().GuestHoleStateChanged += (sender, active) =>
            {
                IEnumerable <IGuestHoleStateAware> instances = Resolve <IEnumerable <IGuestHoleStateAware> >();
                foreach (IGuestHoleStateAware instance in instances)
                {
                    instance.OnGuestHoleStateChanged(active);
                }
            };

            Resolve <EventClient>().ApiDataChanged += async(sender, e) =>
            {
                IEnumerable <IApiDataChangeAware> instances = Resolve <IEnumerable <IApiDataChangeAware> >();
                foreach (IApiDataChangeAware instance in instances)
                {
                    await instance.OnApiDataChanged(e);
                }
            };

            Resolve <UnauthorizedResponseHandler>().SessionExpired += (sender, e) =>
            {
                Resolve <ExpiredSessionHandler>().Execute();
            };

            Resolve <OutdatedAppHandler>().AppOutdated += Resolve <OutdatedAppNotification>().OnAppOutdated;
            Resolve <IModals>();
            Resolve <InsecureNetworkNotification>();
        }
 public CustomConfigsVpnConnector(IVpnServiceManager vpnServiceManager, IUserContext userManager)
 {
     this._vpnServiceManager = vpnServiceManager;
     this._userManager       = userManager;
 }
コード例 #22
0
 internal IVpnServiceManager <Load> b__0_0(IComponentContext ctx, IVpnServiceManager inner)
 {
     return(new VpnServiceManagerLoggingDecorator(inner, ResolutionExtensions.Resolve <ILogger>(ctx)));
 }
コード例 #23
0
 internal IVpnServiceManager <Load> b__0_0(IComponentContext ctx, IVpnServiceManager inner)
 {
     return(new VpnServiceManagerLoggingDecorator(inner));
 }