Benutzer-Werkzeuge

Webseiten-Werkzeuge


develop:addressbook

Dies ist eine alte Version des Dokuments!


Externe Adressdaten einbinden

In Hibiscus können auf einfache Weise zusätzliche Adressbücher integriert werden. Hierzu müssen lediglich die beiden folgenden Interfaces implementiert werden.

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.

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 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 mit diesen Eigenschaften enthalten ist.
   * @param address die gesuchte Adresse.
   * @return die Adresse mit den gleichen Eigenschaften aus dem Adressbuch oder null.
   * @throws RemoteException
   */
  public Address contains(Address address) throws RemoteException;
}

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;
 
  /**
   * Liefert die BIC.
   * @return die BIC.
   * @throws RemoteException
   */
  public String getBic() throws RemoteException;
 
  /**
   * Liefert die IBAN.
   * @return die IBAN.
   * @throws RemoteException
   */
  public String getIban() throws RemoteException;
 
  /**
   * Liefert einen Freitext mit der Kategorie.
   * @return Freitext mit der Kategorie.
   * @throws RemoteException
   */
  public String getKategorie() throws RemoteException;
}


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