public LoginRepositoryProfiler(ILoginReader reader, IProfiler profiler)
        {
            _readerDelegate = reader;

            // set up the profiler
            _profiler      = profiler;
            _profiler.Type = typeof(LoginRecord).Name;
            _profiler.Log  = _log;
        }
Пример #2
0
        /// <summary>
        /// Runs the program.
        /// </summary>
        /// <param name="args">The args.</param>
        public override void RunProgram(string[] args)
        {
            if (CommandLine.HasSwitch(Switches.Help))
            {
                DisplayUsage();
                return;
            }

            var    options  = CommandLine.GetRecoveryOptions();
            var    composer = CompositionRoot.Current;
            string dataFile = options.DataFile;

            if (dataFile == null)
            {
                dataFile = composer.DataFile.LoginData;
            }

            if (!File.Exists(dataFile))
            {
                DisplayFriendlyError("File does not exist: {0}", dataFile);
                return;
            }

            // Copy the file to the temp dir. In most cases, this will let us run the LoginReader even if Chrome is running.
            string fileName = Path.GetTempFileName();

            File.Copy(dataFile, fileName, true);
            try
            {
                ILoginReader reader = composer.LoginReader(fileName);
                var          logins = reader.GetLogins(CommandLine.Arguments.FirstOrDefault())
                                      .Where(l => !String.IsNullOrEmpty(l.UserName));
                if (!String.IsNullOrEmpty(options.OutFile))
                {
                    WriteAsXml(options.OutFile, logins);
                }
                else
                {
                    WriteToConsole(logins);
                }

                Console.WriteLine();
            }
            finally
            {
                // Delete the temp file to be a good citizen :-)
                try
                {
                    File.Delete(fileName);
                }
                catch (Exception)
                {
                    // ignored by design
                }
            }
        }
Пример #3
0
 public SecurityService(IApplicationSettings appSettings, ILoginReader loginReader, IPasswordService passwordService, IJwtEncoder encoder, IJwtDecoder decoder, ITokenGenerator tokenGenerator)
 {
     _key             = appSettings.GetValue("API:Key");
     _decoder         = decoder;
     _encoder         = encoder;
     _exp             = int.Parse(appSettings.GetValue("Token:ExpHrs"));
     _loginReader     = loginReader;
     _tokenGenerator  = tokenGenerator;
     _passwordService = passwordService;
 }
 public RepoImplementations(TinyIoCContainer container)
 {
     RoomReader    = container.Resolve <IRepositoryReader <RoomRecord> >();
     RoomWriter    = container.Resolve <IRepositoryWriter <RoomRecord> >();
     MessageReader = container.Resolve <IRepositoryReader <MessageRecord> >();
     MessageWriter = container.Resolve <IRepositoryWriter <MessageRecord> >();
     UserReader    = container.Resolve <IRepositoryReader <UserRecord> >();
     UserWriter    = container.Resolve <IRepositoryWriter <UserRecord> >();
     LoginReader   = container.Resolve <ILoginReader>();
     LoginWriter   = container.Resolve <IRepositoryWriter <LoginRecord> >();
 }
Пример #5
0
 public LoginRepository(ILoginReader reader, IRepositoryWriter <LoginRecord> writer) : base(reader, writer)
 {
 }