internal AbstractPasswordChanger GetChanger(PwEntry pwEntry) { // TODO The user should be able to set their own changer manually AbstractPasswordChanger changer = GetAutomaticChanger(pwEntry); changer.Entry = pwEntry; changer.Plugin = _plugin; return(changer); }
private AbstractPasswordChanger GetAutomaticChanger(PwEntry pwEntry) { int maxPrio = 0; AbstractPasswordChanger bestChanger = null; foreach (var changer in Changers) { AbstractPasswordChanger instance = (AbstractPasswordChanger)Activator.CreateInstance(changer); int prio = instance.DoesHandleEntry(pwEntry); if (prio > maxPrio) { maxPrio = prio; bestChanger = instance; } } return(bestChanger); }