Benutzer-Werkzeuge

Webseiten-Werkzeuge


develop:addressbook

Dies ist eine alte Version des Dokuments!


Externe Adressdaten einbinden

Seit dem Nightly-Build vom 23.04.2007 ist es möglich, externe Adress-Bestände an das Hibiscus-Adressbuch zu koppeln. Hierzu müssen lediglich zwei Interfaces implementiert werden:

de.willuhn.jameica.hbci.rmi.Addressbook

package de.willuhn.jameica.hbci.rmi;
 
import java.rmi.Remote;
import java.rmi.RemoteException;
import java.util.List;
 
/**
 * Interface fuer ein einzelnes Adressbuch.
 * Alle Klassen, die dieses Interface implementieren, werden automatisch von
 * Hibiscus erkannt.
 * Alle Implementierungen muessen einen parameterlosen Konstruktor
 * besitzen (Bean-Spezifikation), um via Reflection instanziiert werden zu koennen.
 */
public interface Addressbook extends Remote
{
  /**
   * Liefert einen sprechenden Namen fuer das Adressbuch.
   * @return Name des Adressbuches.
   * @throws RemoteException
   */
  public String getName() throws RemoteException;
 
  /**
   * Sucht nach Adressen und liefert die gefundenen zurueck.
   * Es ist der jeweiligen Implementierung des Adressbuches ueberlassen,
   * in welchen Feldern/Attributen der Adressdaten sie nach dem uebergebenen Text
   * sucht.
   * Wird kein Text uebergeben, kann das Adressbuch selbst entscheiden,
   * ob es alle Adressen zurueckliefert oder gar keine.
   * @param text der Suchtext.
   * @return Liste der gefundenen Adressen.
   * Die Objekte der Liste muessen vom Typ <code>Address

sein.

  • Die Funktion darf auch
    null

    zurueckliefern, wenn keine Adressen gefunden wurden.

  • @throws RemoteException
  • @see AddressbookService#findAddresses(String)
  • /

public List findAddresses(String text) throws RemoteException;

/**
 * Prueft, ob im Adressbuch eine Adresse <b>mit diesen Eigenschaften</b> enthalten ist.
 * @param address die gesuchte Adresse.
 * @return die Adresse mit den gleichen Eigenschaften aus dem Adressbuch oder <code>null</code>.
 * @throws RemoteException
 */
public Address contains(Address address) throws RemoteException;

} </code>

de.willuhn.jameica.hbci.rmi.Address

package de.willuhn.jameica.hbci.rmi;
 
import java.rmi.Remote;
import java.rmi.RemoteException;
 
/**
 * Basis-Interface fuer einen Adressbuch-Eintrag.
 * Die deutschen Methoden-Namen (trotz englischem Interface-Namen)
 * sind ein Zugestaendnis an die existierende Hibiscus-API.
 */
public interface Address extends Remote
{
  /**
   * Liefert die Kontonummer.
   * @return Kontonummer.
   * @throws RemoteException
   */
  public String getKontonummer() throws RemoteException;
 
  /**
   * Liefert die BLZ.
   * @return BLZ.
   * @throws RemoteException
   */
  public String getBLZ() throws RemoteException;
 
  /**
   * Liefert den Namen.
   * @return Name.
   * @throws RemoteException
   */
  public String getName() throws RemoteException;
 
  /**
   * Liefert einen zusaetzlichen Kommentar fuer den Adressbuch-Eintrag.
   * @return Kommentar.
   * @throws RemoteException
   */
  public String getKommentar() throws RemoteException;
}

Die Implementierungen können in einer Jar-Datei im Verzeichnis „plugins/hibiscus/lib“ abgelegt werden. Beim nächsten Start wird das Adressbuch automatisch erkannt. Sobald neben dem Hibiscus-eigenen noch ein weiteres Adressbuch existiert, wird die View „Adressbuch“ sowie der Dialog zur Auswahl einer Adresse um eine zusätzliche Combo-Box erweitert, in der der User gezielt in einem bestimmten Adressbuch suchen kann.



Impressum | Datenschutz
develop/addressbook.1177365590.txt.gz · Zuletzt geändert: d.m.Y H:i von willuhn