public MirrorRepositoryHook(
      GitScm gitScm,
      I18nService i18nService,
      ScheduledExecutorService executor,
      PasswordEncryptor passwordEncryptor,
      SettingsReflectionHelper settingsReflectionHelper,
      PluginSettingsFactory pluginSettingsFactory,
      RepositoryMetadataService repositoryMetadataService) {
    logger.debug("MirrorRepositoryHook: init started");

    // Set fields
    this.gitScm = gitScm;
    this.i18nService = i18nService;
    this.executor = executor;
    this.passwordEncryptor = passwordEncryptor;
    this.settingsReflectionHelper = settingsReflectionHelper;
    this.repositoryMetadataService = repositoryMetadataService;

    // Init password encryptor
    PluginSettings pluginSettings = pluginSettingsFactory.createSettingsForKey(PLUGIN_SETTINGS_KEY);
    passwordEncryptor.init(pluginSettings);

    logger.debug("MirrorRepositoryHook: init completed");
  }