/** * ct. * * @param passport optionale Angabe des Passports. */ public KeyPasswordLoadDialog(HBCIPassport passport) { super(POSITION_CENTER); setSize(550, SWT.DEFAULT); String s = null; try { BeanService service = Application.getBootLoader().getBootable(BeanService.class); SynchronizeSession session = service.get(HBCISynchronizeBackend.class).getCurrentSession(); Konto konto = session != null ? session.getKonto() : null; if (konto != null) { s = konto.getBezeichnung(); String name = HBCIProperties.getNameForBank(konto.getBLZ()); if (name != null && name.length() > 0) s += " [" + name + "]"; } } catch (Exception e) { Logger.error("unable to determine current konto", e); } String text = null; if (s != null) { setTitle(i18n.tr("Schlüsseldiskette. Konto: {0}", s)); text = i18n.tr("Bitte geben Sie das Passwort der Schlüsseldiskette ein.\nKonto: {0}", s); } else { setTitle(i18n.tr("Schlüsseldiskette")); text = i18n.tr("Bitte geben Sie das Passwort der Schlüsseldiskette ein."); } if (passport != null && (passport instanceof HBCIPassportRDHNew)) this.filename = ((HBCIPassportRDHNew) passport).getFilename(); setText(text); setLabelText(i18n.tr("Ihr Passwort")); }
/** * ct. * * @param config die PINTAN-Config. * @throws RemoteException */ public TANDialog(PinTanConfig config) throws RemoteException { super(TANDialog.POSITION_CENTER); this.config = config; this.setSize(WINDOW_WIDTH, SWT.DEFAULT); // Deaktivierung der Anzeige von Sternen im TAN-Dialog. setShowPassword(this.config != null && this.config.getShowTan()); setLabelText(i18n.tr("TAN")); // Einmal aufrufen, damit der Text gesetzt wird. setText(null); String s = null; try { BeanService service = Application.getBootLoader().getBootable(BeanService.class); SynchronizeSession session = service.get(HBCISynchronizeBackend.class).getCurrentSession(); Konto konto = session != null ? session.getKonto() : null; if (konto != null) { s = konto.getBezeichnung(); String name = HBCIUtils.getNameForBLZ(konto.getBLZ()); if (name != null && name.length() > 0) s += " [" + name + "]"; } } catch (Exception e) { Logger.error("unable to determine current konto", e); } if (s != null) setTitle(i18n.tr("TAN-Eingabe - Konto {0}", s)); else setTitle(i18n.tr("TAN-Eingabe")); }
/** * Liefert die Liste der verfuegbaren HBCI-Varianten. * * @return die Liste der verfuegbaren HBCI-Varianten. */ public synchronized List<InfoPanel> getVariants() { if (this.variants != null) return this.variants; this.variants = new ArrayList<InfoPanel>(); BeanService bs = Application.getBootLoader().getBootable(BeanService.class); final HBCIAccountProvider hbci = bs.get(HBCIAccountProvider.class); for (final HBCIVariant v : hbci.getVariants()) { InfoPanel p = v.getInfo(); final Button button = new Button( i18n.tr("Verfahren auswählen..."), new Action() { @Override public void handleAction(Object context) throws ApplicationException { Logger.info( "creating new account. type: " + hbci.getName() + ", variant: " + v.getName()); v.create(); } }, null, false, "go-next.png"); p.addButton(button); this.variants.add(p); } return this.variants; }
/** * Liefert die Liste aller Forecast-Provider - unabhaengig davon, ob sie gerade aktiv sind oder * nicht. * * @return die Liste aller Forecast-Provider. */ public static synchronized List<ForecastProvider> getProviders() { // load providers if (providers == null) { providers = new LinkedList<Class<ForecastProvider>>(); try { MultipleClassLoader loader = Application.getPluginLoader().getManifest(HBCI.class).getClassLoader(); Class<ForecastProvider>[] classes = loader.getClassFinder().findImplementors(ForecastProvider.class); for (Class<ForecastProvider> c : classes) { providers.add(c); } } catch (ClassNotFoundException cne) { Logger.error("no forecast providers found", cne); } } BeanService service = Application.getBootLoader().getBootable(BeanService.class); List<ForecastProvider> result = new LinkedList<ForecastProvider>(); for (Class<ForecastProvider> p : providers) { try { result.add(service.get(p)); } catch (Exception e) { Logger.error("unable to load " + p + " - skipping", e); } } return result; }
/** * BUGZILLA 150 * * @see PasswordDialog#setText(String) */ public void setText(String text) { //////////////////////////////////////////////////////////////////////////// // Bezeichnung des Kontos ermitteln String s = null; try { BeanService service = Application.getBootLoader().getBootable(BeanService.class); SynchronizeSession session = service.get(HBCISynchronizeBackend.class).getCurrentSession(); Konto konto = session != null ? session.getKonto() : null; if (konto != null) { s = konto.getBezeichnung(); String name = HBCIUtils.getNameForBLZ(konto.getBLZ()); if (name != null && name.length() > 0) s += " [" + name + "]"; } } catch (Exception e) { Logger.error("unable to determine current konto", e); } if (text == null || text.length() == 0) { text = i18n.tr("Bitte geben Sie eine TAN-Nummer ein."); } else { // Der Text kann ein "challenge" von der Bank enthalten. Dieser kann Formatierungen enthalten. // Z.Bsp. "<b>Text</b>", "<li>..." usw. Siehe // FinTS_3.0_Security_Sicherheitsverfahren_PINTAN_Rel_20101027_final_version.pdf // Seite 127. Das muss noch beachtet werden // Eigentlich kann man in den BPD noch nachschauen, ob fuer das TAN-Verfahren // "ischallengestructured=J", // aber das brauchen wir nicht. Wenn HTML-Tags drin stehen, ersetzen wir sie gegen // Formatierungen. text = text.replaceAll("<br>", "\n"); text = text.replaceAll("<p>", "\n\n"); text = text.replaceAll("<p>", "\n\n"); text = text.replaceAll("<ul>", "\n"); text = text.replaceAll("</ul>", ""); text = text.replaceAll("<ol>", "\n"); text = text.replaceAll("</ol>", ""); text = text.replaceAll("</li>", "\n"); text = text.replaceAll("<li>", " - "); // Unterstuetzen wir noch nicht text = text.replaceAll("<b>", ""); text = text.replaceAll("</b>", ""); text = text.replaceAll("<i>", ""); text = text.replaceAll("</i>", ""); text = text.replaceAll("<u>", ""); text = text.replaceAll("</u>", ""); } if (s != null) text += ("\n" + i18n.tr("Konto: {0}", s)); super.setText(text); }
/** @see de.willuhn.jameica.gui.Action#handleAction(java.lang.Object) */ public void handleAction(Object context) throws ApplicationException { if (context == null) return; BeanService service = Application.getBootLoader().getBootable(BeanService.class); Class type = context.getClass(); Iterator<Class> keys = actionMap.keySet().iterator(); while (keys.hasNext()) { Class key = keys.next(); if (key.isAssignableFrom(type)) { Action a = service.get(actionMap.get(key)); a.handleAction(context); return; } } Logger.warn("dont know, how to handle " + context.getClass()); }