public LoginController(string appName,
                        IRequest request,
                        IUserManager userManager,
                        IConfig config,
                        OCP.ISession session,
                        IUserSession userSession,
                        IURLGenerator urlGenerator,
                        OCP.ILogger logger,
                        Defaults defaults,
                        Throttler throttler,
                        Chain loginChain,
                        IInitialStateService initialStateService
                        ) : base(appName, request)
 {
     this.userManager         = userManager;
     this.config              = config;
     this.session             = session;
     this.userSession         = userSession;
     this.urlGenerator        = urlGenerator;
     this.logger              = logger;
     this.defaults            = defaults;
     this.throttler           = throttler;
     this.loginChain          = loginChain;
     this.initialStateService = initialStateService;
 }
 /**
  * @param string appName
  * @param BackupCodeStorage storage
  * @param IL10N l10n
  * @param AppManager appManager
  */
 public BackupCodesProvider(string appName,
                            BackupCodeStorage storage,
                            IL10N l10n,
                            IAppManager appManager,
                            IInitialStateService initialStateService)
 {
     this.appName             = appName;
     this.l10n                = l10n;
     this.storage             = storage;
     this.appManager          = appManager;
     this.initialStateService = initialStateService;
 }