예제 #1
0
 public VpnReconnector(IAppSettings appSettings,
                       ISimilarServerCandidatesGenerator similarServerCandidatesGenerator,
                       IModals modals,
                       IPopupWindows popups,
                       IVpnConnector vpnConnector,
                       INotificationSender notificationSender,
                       ILogger logger,
                       ServerCandidatesFactory serverCandidatesFactory,
                       Common.Configuration.Config config,
                       Lazy <ConnectionStatusViewModel> connectionStatusViewModel,
                       ServerManager serverManager,
                       Lazy <ServerConnector> serverConnector,
                       Lazy <ProfileConnector> profileConnector)
 {
     _appSettings = appSettings;
     _similarServerCandidatesGenerator = similarServerCandidatesGenerator;
     _modals                    = modals;
     _popups                    = popups;
     _vpnConnector              = vpnConnector;
     _notificationSender        = notificationSender;
     _logger                    = logger;
     _serverCandidatesFactory   = serverCandidatesFactory;
     _config                    = config;
     _connectionStatusViewModel = connectionStatusViewModel;
     _serverManager             = serverManager;
     _serverConnector           = serverConnector;
     _profileConnector          = profileConnector;
 }
예제 #2
0
 public Trial(
     IAppSettings appSettings,
     UserAuth userAuth,
     IUserStorage userStorage,
     IPopupWindows popupWindows)
 {
     _popupWindows = popupWindows;
     _userStorage  = userStorage;
     _userAuth     = userAuth;
     _appSettings  = appSettings;
 }
예제 #3
0
        private void InitializeDependencies()
        {
            _serverManager             = Substitute.For <ServerManager>(_userStorage, _appSettings, _logger);
            _serverCandidatesFactory   = Substitute.For <ServerCandidatesFactory>(_serverManager);
            _vpnCredentialProvider     = Substitute.For <IVpnCredentialProvider>();
            _popupWindows              = Substitute.For <IPopupWindows>();
            _delinquencyPopupViewModel = Substitute.For <IDelinquencyPopupViewModel>();

            _vpnCredentialProvider.Credentials().Returns(GetVpnCredentials());

            _profileConnector = new ProfileConnector(_logger, _userStorage, _appSettings, _serverManager, _serverCandidatesFactory,
                                                     _vpnServiceManager, _modals, _dialogs, _vpnCredentialProvider, _popupWindows, _delinquencyPopupViewModel);
        }
예제 #4
0
 public PlanDowngradeHandler(
     IUserStorage userStorage,
     IVpnManager vpnManager,
     IAppSettings appSettings,
     INotificationSender notificationSender,
     IPopupWindows popups,
     SubscriptionExpiredPopupViewModel subscriptionExpiredPopupViewModel,
     DelinquencyPopupViewModel delinquencyPopupViewModel)
 {
     _userStorage        = userStorage;
     _vpnManager         = vpnManager;
     _appSettings        = appSettings;
     _notificationSender = notificationSender;
     _popups             = popups;
     _subscriptionExpiredPopupViewModel = subscriptionExpiredPopupViewModel;
     _delinquencyPopupViewModel         = delinquencyPopupViewModel;
 }
예제 #5
0
        public MainViewModel(
            UserAuth userAuth,
            IVpnManager vpnManager,
            IActiveUrls urls,
            IEventAggregator eventAggregator,
            AppExitHandler appExitHandler,
            IModals modals,
            IDialogs dialogs,
            IPopupWindows popups,
            MapViewModel mapViewModel,
            ConnectingViewModel connectingViewModel,
            OnboardingViewModel onboardingViewModel,
            FlashNotificationViewModel flashNotificationViewModel,
            TrayNotificationViewModel trayNotificationViewModel)
        {
            _eventAggregator = eventAggregator;
            _vpnManager      = vpnManager;
            _urls            = urls;
            _userAuth        = userAuth;
            _appExitHandler  = appExitHandler;
            _modals          = modals;
            _dialogs         = dialogs;
            _popups          = popups;

            Map               = mapViewModel;
            Connection        = connectingViewModel;
            Onboarding        = onboardingViewModel;
            TrayNotification  = trayNotificationViewModel;
            FlashNotification = flashNotificationViewModel;

            eventAggregator.Subscribe(this);

            AboutCommand          = new RelayCommand(AboutAction, CanClick);
            AccountCommand        = new RelayCommand(AccountAction, CanClick);
            ProfilesCommand       = new RelayCommand(ProfilesAction, CanClick);
            SettingsCommand       = new RelayCommand(SettingsAction, CanClick);
            HelpCommand           = new RelayCommand(HelpAction);
            ReportBugCommand      = new RelayCommand(ReportBugAction, CanClick);
            DeveloperToolsCommand = new RelayCommand(DeveloperToolsAction);
            LogoutCommand         = new RelayCommand(LogoutAction);
            ExitCommand           = new RelayCommand(ExitAction);

            SetDeveloperToolsVisibility();
        }
예제 #6
0
 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);
 }
예제 #7
0
        public DeveloperToolsPopupViewModel(AppWindow appWindow,
                                            UserAuth userAuth,
                                            IPopupWindows popups,
                                            IModals modals,
                                            INotificationSender notificationSender,
                                            ConnectionStatusViewModel connectionStatusViewModel,
                                            IAppSettings appSettings,
                                            ReconnectManager reconnectManager)
            : base(appWindow)
        {
            _userAuth                  = userAuth;
            _popups                    = popups;
            _modals                    = modals;
            _notificationSender        = notificationSender;
            _connectionStatusViewModel = connectionStatusViewModel;
            _appSettings               = appSettings;
            _reconnectManager          = reconnectManager;

            InitializeCommands();
        }
예제 #8
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;
 }