Package de.willuhn.util

Examples of de.willuhn.util.I18N


   * Erwartet keinen Parameter.
   * @see de.willuhn.jameica.gui.Action#handleAction(java.lang.Object)
   */
  public void handleAction(Object context) throws ApplicationException
  {
    I18N i18n = Application.getPluginLoader().getPlugin(HBCI.class).getResources().getI18N();

    try
    {
      ImportDialog d = new ImportDialog(null, HibiscusAddress.class);
      d.open();
    }
    catch (OperationCanceledException oce)
    {
      Logger.info(oce.getMessage());
      return;
    }
    catch (ApplicationException ae)
    {
      throw ae;
    }
    catch (Exception e)
    {
      Logger.error("error while importing addresses",e);
      GUI.getStatusBar().setErrorText(i18n.tr("Fehler beim Importieren der Adressen"));
    }
  }
View Full Code Here


  public static String[] getWochentage()
  {
    if (wochentage != null)
      return wochentage;

    I18N i18n = Application.getPluginLoader().getPlugin(HBCI.class).getResources().getI18N();

    wochentage = new String[]
    {
      i18n.tr("Montag"),
      i18n.tr("Dienstag"),
      i18n.tr("Mittwoch"),
      i18n.tr("Donnerstag"),
      i18n.tr("Freitag"),
      i18n.tr("Samstag"),
      i18n.tr("Sonntag")
    };
   
    return wochentage;
  }
View Full Code Here

   * @return die Bezeichnung.
   * @throws RemoteException
   */
  public static String createBezeichnung(Turnus turnus) throws RemoteException
  {
    I18N i18n = Application.getPluginLoader().getPlugin(HBCI.class).getResources().getI18N();

    int iv = turnus.getIntervall();
    int ze = turnus.getZeiteinheit();
    int ta = turnus.getTag();

    String s = null;

    // Einfacher Zahlungsplan
    if (iv == 1 && ze == Turnus.ZEITEINHEIT_MONATLICH)
      s = i18n.tr("Monatlich");
    else if (iv == 1 && ze == Turnus.ZEITEINHEIT_WOECHENTLICH)
      s = i18n.tr("W�chentlich");

    // komplexer Zahlungsplan
    if (iv > 1 && ze == Turnus.ZEITEINHEIT_MONATLICH)
      s = i18n.tr("Alle {0} Monate","" + iv);
    else if (iv > 1 && ze == Turnus.ZEITEINHEIT_WOECHENTLICH)
      s = i18n.tr("Alle {0} Wochen","" + iv);

    // Standardfaelle
    if (iv == 3 && ze == Turnus.ZEITEINHEIT_MONATLICH)
      s = i18n.tr("Viertelj�hrlich");
    if (iv == 6 && ze == Turnus.ZEITEINHEIT_MONATLICH)
      s = i18n.tr("Halbj�hrlich");
    if (iv == 12 && ze == Turnus.ZEITEINHEIT_MONATLICH)
      s = i18n.tr("J�hrlich");


    // Zahltag anhaengen
    if (ze == Turnus.ZEITEINHEIT_WOECHENTLICH)
      s+= ", " + getWochentag(ta);
    else if (ze == Turnus.ZEITEINHEIT_MONATLICH)
    {
      // BUGZILLA #49 http://www.willuhn.de/bugzilla/show_bug.cgi?id=49
      if (ta == HBCIProperties.HBCI_LAST_OF_MONTH)
        s+= ", " + i18n.tr("zum Monatsletzten");
      else
        s+= ", " + i18n.tr("am {0}. des Monats","" + ta);
    }

    return s;
  }
View Full Code Here

   * Erwartet ein Objekt vom Typ <code>Nachricht</code> im Context.
   * @see de.willuhn.jameica.gui.Action#handleAction(java.lang.Object)
   */
  public void handleAction(Object context) throws ApplicationException
  {
    I18N i18n = Application.getPluginLoader().getPlugin(HBCI.class).getResources().getI18N();

    if (context == null)
      throw new ApplicationException(i18n.tr("Keine System-Nachricht ausgew�hlt"));

    if (!(context instanceof Nachricht) && !(context instanceof Nachricht[]))
      throw new ApplicationException(i18n.tr("Keine System-Nachricht ausgew�hlt"));

    boolean array = (context instanceof Nachricht[]);

    Nachricht[] list = null;
    if (array)
      list = (Nachricht[]) context;
    else
      list = new Nachricht[]{(Nachricht)context}; // Array mit einem Element

    try {

      for (int i=0;i<list.length;++i)
      {
        if (list[i].isNewObject())
          continue; // muss nicht geloescht werden

        // ok, wir loeschen das Objekt
        list[i].setGelesen(true);
        list[i].store();
      }
      if (array)
        GUI.getStatusBar().setSuccessText(i18n.tr("{0} System-Nachrichten als gelesen markiert.",""+list.length));
      else
        GUI.getStatusBar().setSuccessText(i18n.tr("System-Nachricht als gelesen markiert."));

      // Reload view
      GUI.startView(GUI.getCurrentView().getClass(),null);
    }
    catch (RemoteException e)
    {
      GUI.getStatusBar().setErrorText(i18n.tr("Fehler beim Markieren der System-Nachrichten als gelesen."));
      Logger.error("unable to mark system message read",e);
    }
  }
View Full Code Here

   * Erwartet ein Objekt vom Typ <code>Umsatz</code> oder <code>Umsatz[]</code>.
   * @see de.willuhn.jameica.gui.Action#handleAction(java.lang.Object)
   */
  public void handleAction(Object context) throws ApplicationException
  {
    I18N i18n = Application.getPluginLoader().getPlugin(HBCI.class).getResources().getI18N();

    if (context == null)
      throw new ApplicationException(i18n.tr("Bitte w�hlen Sie mindestens einen Umsatz aus"));

    if (!(context instanceof Umsatz) && !(context instanceof Umsatz[]))
      throw new ApplicationException(i18n.tr("Bitte w�hlen Sie einen oder mehrere Ums�tze aus"));

    Umsatz[] u = null;
    try {

      if (context instanceof Umsatz)
      {
        u = new Umsatz[1];
        u[0] = (Umsatz) context;
      }
      else if (context instanceof Umsatz[])
      {
        u = (Umsatz[]) context;
      }

      ExportDialog d = new ExportDialog(u, Umsatz.class);
      d.open();
    }
    catch (OperationCanceledException oce)
    {
      Logger.info(oce.getMessage());
      return;
    }
    catch (ApplicationException ae)
    {
      throw ae;
    }
    catch (Exception e)
    {
      Logger.error("error while exporting umsaetze",e);
      GUI.getStatusBar().setErrorText(i18n.tr("Fehler beim Exportieren der Ums�tze"));
    }
  }
View Full Code Here

   */
  public static DBIterator find(String query) throws RemoteException, ApplicationException
  {
    if (query == null || query.length() == 0)
    {
      I18N i18n = Application.getPluginLoader().getPlugin(HBCI.class).getResources().getI18N();
      throw new ApplicationException(i18n.tr("Bitte geben Sie einen Suchbegriff an"));
    }
   
    return find(null,null,null,null,query);
  }
View Full Code Here

  public HBCIHandler open() throws RemoteException, ApplicationException
  {
    if (isOpen())
      return handler;

    I18N i18n = Application.getPluginLoader().getPlugin(HBCI.class).getResources().getI18N();

    Logger.info("open rdh passport");
    try {
 
      RDHKey activeKey = this.key != null ? this.key : RDHKeyFactory.findByKonto(passport != null ? passport.getKonto() : null);
     
      if (activeKey == null)
        throw new ApplicationException(i18n.tr("Keine Schl�ssel-Diskette f�r dieses Konto definiert"));

      String filename = activeKey.getFilename();
     
      File f = new File(filename);
      if (!f.exists())
      {
        InsertKeyDialog kd = new InsertKeyDialog(f);
        Boolean b = (Boolean) kd.open();
        if (b == null || !b.booleanValue())
          throw new OperationCanceledException(i18n.tr("Schl�sseldiskette nicht eingelegt oder nicht lesbar"));
      }
     
      Logger.info("using passport file " + filename);

      String hbciVersion = activeKey.getHBCIVersion();
      if (hbciVersion == null)
      {
        // Bei der Neuerstellung fragen wir immer den User nach der HBCI-Version
        // Wir fragen die HBCI-Version via Messaging ab, damit sie ggf. auch
        // (z.Bsp. vom Payment-Server) automatisch beantwortet werden kann.
        QueryMessage msg = new QueryMessage(passport);
        Application.getMessagingFactory().getMessagingQueue("hibiscus.passport.rdh.hbciversion").sendSyncMessage(msg);
        Object data = msg.getData();
        if (data == null || !(data instanceof String))
          throw new ApplicationException(i18n.tr("HBCI-Version nicht ermittelbar"));
        hbciVersion = (String) msg.getData();
       
        // Wir merken uns die Auswahl damit wir den User nicht immer wieder fragen muessen
        // Siehe auch http://www.onlinebanking-forum.de/phpBB2/viewtopic.php?t=14883
        if (hbciVersion != null)
        {
          Logger.info("storing hbci [" + hbciVersion + "] version for key " + filename);
          activeKey.setHBCIVersion(hbciVersion);
        }
      }

      hbciPassport = activeKey.load();
     
      // Wir speichern die verwendete PIN/TAN-Config im Passport. Dann wissen wir
      // spaeter in den HBCI-Callbacks noch, aus welcher Config der Passport
      // erstellt wurde. Wird z.Bsp. vom Payment-Server benoetigt.
      ((AbstractHBCIPassport)hbciPassport).setPersistentData(CONTEXT_CONFIG,activeKey);

      Logger.info("using HBCI version " + hbciVersion);
      handler = new HBCIHandler(hbciVersion,hbciPassport);
      return handler;
    }
    catch (RemoteException re)
    {
      close();
      throw re;
    }
    catch (ApplicationException ae)
    {
      close();
      throw ae;
    }
    catch (OperationCanceledException oce)
    {
      close();
      throw oce;
    }
    catch (Exception e)
    {
      close();
      Logger.error("error while opening key",e);
      throw new ApplicationException(i18n.tr("Fehler beim �ffnen des Schl�ssels: {0}",e.getMessage()));
    }
  }
View Full Code Here

  /**
   * @see de.willuhn.datasource.db.AbstractDBObject#insertCheck()
   */
  protected void insertCheck() throws ApplicationException
  {
    I18N i18n = Application.getPluginLoader().getPlugin(HBCI.class).getResources().getI18N();

    try
    {
      if (getName() == null || getName().length() == 0)
      {
        throw new ApplicationException(i18n.tr("Keine Bezeichnung f�r die Version angegeben"));
      }
    }
    catch (RemoteException re)
    {
      Logger.error("error while checking version",re);
      throw new ApplicationException(i18n.tr("Fehler beim Pr�fen der Version"));
    }
    super.insertCheck();
  }
View Full Code Here

   * Erwartet ein Objekt vom Typ <code>SammelTransfer</code> als Context.
   * @see de.willuhn.jameica.gui.Action#handleAction(java.lang.Object)
   */
  public void handleAction(Object context) throws ApplicationException
  {
    final I18N i18n = Application.getPluginLoader().getPlugin(HBCI.class).getResources().getI18N();

    if (!(context instanceof SepaSammelTransfer))
      throw new ApplicationException(i18n.tr("Bitte geben Sie einen SEPA-Sammelauftrag an"));

    try
    {
      final SepaSammelTransfer u = (SepaSammelTransfer) context;
     
      if (u.ausgefuehrt())
        throw new ApplicationException(i18n.tr("SEPA-Sammelauftrag wurde bereits ausgef�hrt"));

      if (u.getBuchungen().size() == 0)
        throw new ApplicationException(i18n.tr("SEPA-Sammelauftrag enth�lt keine Buchungen"));
     
      if (u.isNewObject())
        u.store(); // wir speichern bei Bedarf selbst.

      SepaSammelTransferDialog d = new SepaSammelTransferDialog(u,SepaSammelTransferDialog.POSITION_CENTER);
      try
      {
        if (!((Boolean)d.open()).booleanValue())
          return;
      }
      catch (OperationCanceledException oce)
      {
        Logger.info(oce.getMessage());
        return;
      }
      catch (Exception e)
      {
        Logger.error("error while showing confirm dialog",e);
        GUI.getStatusBar().setErrorText(i18n.tr("Fehler beim Ausf�hren des Sammel-Auftrages"));
        return;
      }
      execute(u);
    }
    catch (RemoteException e)
    {
      Logger.error("error while executing sammelauftrag",e);
      GUI.getStatusBar().setErrorText(i18n.tr("Fehler beim Ausf�hren des Sammel-Auftrages"));
    }
  }
View Full Code Here

   * <code>de.willuhn.jameica.hbci.passport.PassportHandle</code> oder
   * @see de.willuhn.jameica.gui.Action#handleAction(java.lang.Object)
   */
  public void handleAction(final Object context) throws ApplicationException
  {
    final I18N i18n = Application.getPluginLoader().getPlugin(HBCI.class).getResources().getI18N();

    if (context == null || (!(context instanceof Passport) && !(context instanceof PassportHandle)))
      throw new ApplicationException(i18n.tr("Bitte w�hlen Sie ein Sicherheits-Medium aus."));

    BackgroundTask task = new BackgroundTask() {
      public void run(final ProgressMonitor monitor) throws ApplicationException
      {
        HBCIHandler handler = null;
        Target target       = null;
        try {
          monitor.setStatusText(i18n.tr("Teste Sicherheits-Medium..."));

          // Log-Ausgaben temporaer auch mit im Progressbar-Fenster
          // ausgeben
          target = new Target() {
            public void write(Message msg) throws Exception
            {
              monitor.addPercentComplete(2);
              format(monitor,msg.getText());
            }
            public void close() throws Exception
            {
            }
          };
          Logger.addTarget(target);

          PassportHandle handle = null;
          if (context instanceof Passport)
            handle = ((Passport)context).getHandle();
          else
            handle = (PassportHandle) context;
          handler = handle.open();
          handle.close(); // nein, nicht im finally, denn wenn das Oeffnen
                          // fehlschlaegt, ist nichts zum Schliessen da ;)

          Logger.flush();
          monitor.setStatus(ProgressMonitor.STATUS_DONE);
          monitor.setPercentComplete(100);
          monitor.setStatusText(i18n.tr("Sicherheits-Medium erfolgreich getestet."));
          Application.getMessagingFactory().sendMessage(new StatusBarMessage(i18n.tr("Sicherheits-Medium erfolgreich getestet."), StatusBarMessage.TYPE_SUCCESS));
          removeTarget(target);
         
          if (!Application.getCallback().askUser(i18n.tr("Test erfolgreich. Konten automatisch anlegen?")))
            return;

          try
          {
            new KontoMerge().handleAction(handle.getKonten());
            // Wir starten die aktuelle View neu, damit die Liste der Konten
            // gleich aktualisiert wird
            GUI.startView(GUI.getCurrentView().getClass(),GUI.getCurrentView().getCurrentObject());
          }
          catch (Exception e)
          {
            // Das darf fehlschlagen. Zum Beispiel, wenn die Bank sowas nicht unterstuetzt
            Logger.error("unable to fetch accounts",e);
            monitor.log(i18n.tr("Automatisches Anlegen der Konten fehlgeschlagen. Bitte legen Sie sie manuell an"));
          }
        }
        catch (ApplicationException ae)
        {
          // Wenn ein Fehler auftrat, MUSS der PIN-Cache geloescht werden. Denn falls
          // es genau deshalb fehlschlug, WEIL der User eine falsche PIN eingegeben
          // hat, kriegt er sonst keine Chance, seine Eingabe zu korrigieren
          DialogFactory.clearPINCache(handler != null ? handler.getPassport() : null);
         
          Application.getMessagingFactory().sendMessage(new StatusBarMessage(ae.getMessage(), StatusBarMessage.TYPE_ERROR));
          monitor.setStatus(ProgressMonitor.STATUS_ERROR);
          monitor.setPercentComplete(100);
          monitor.setStatusText(ae.getMessage());
          removeTarget(target);
        }
        catch (Exception e)
        {
          Throwable cause = HBCIProperties.getCause(e);
          if (cause == null) cause = e; // NPE proof - man weiss ja nie ;)
          Logger.info("test of passport failed: " + cause.getClass() + ": " + cause.getMessage());
         
          // Den kompletten Stacktrace loggen wir nur auf DEBUG, weil der beim Testen bzw. Suchen nach
          // einem Kartenleser durchaus auftreten kann.
          Logger.write(Level.DEBUG,"error while testing passport",e);
         
          // Wenn ein Fehler auftrat, MUSS der PIN-Cache geloescht werden. Denn falls
          // es genau deshalb fehlschlug, WEIL der User eine falsche PIN eingegeben
          // hat, kriegt er sonst keine Chance, seine Eingabe zu korrigieren
          DialogFactory.clearPINCache(handler != null ? handler.getPassport() : null);

          // Wir entfernen das Ding vor dem Ausgeben der Fehlermeldungen.
          // die kommen sonst alle doppelt.
          removeTarget(target);

          monitor.setStatus(ProgressMonitor.STATUS_ERROR);
          String errorText = i18n.tr("Fehler beim Testen des Sicherheits-Mediums: {0}",cause.getMessage());
          Application.getMessagingFactory().sendMessage(new StatusBarMessage(errorText, StatusBarMessage.TYPE_ERROR));
          monitor.setStatusText(errorText);

          monitor.log(i18n.tr("Aufgetretene Fehlermeldungen:"));
          monitor.log("-----------------------------");
          Throwable current = e;
          for (int i=0;i<10;++i)
          {
            if (current == null)
View Full Code Here

TOP

Related Classes of de.willuhn.util.I18N

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.