treuhaender
Class Treuhaender

java.lang.Object
  |
  +--treuhaender.Treuhaender
All Implemented Interfaces:
idman.rules.ChainEvaluationListener, org.ssonet.net.SSONETContextFactory

public class Treuhaender
extends java.lang.Object
implements idman.rules.ChainEvaluationListener, org.ssonet.net.SSONETContextFactory

Diese Klasse repraesentiert den Treuhaender in unserem Protokoll fuer rechtsverbindlichen Einkauf im Internet.
Grober Ablaufplan im Treuhaender:

  1. Es wurde eine Verbindung zur Netzschnittstelle aufgebaut (vom Kunden)
  2. Die empfangenen Daten werden zu einem Document geparst.
  3. Es wird die Methode handleRequest(Document) aufgerufen.
  4. Auf jeden Fall muss die Signatur ueberprueft werden.
  5. nach dem Abhandeln des Requests liefert die Methode handleRequest ein Document zurueck, welches ueber die Netzschnittstelle zum urspruenglichen Sender uebertragen wird.

Version:
$Id: Treuhaender.java,v 1.12 2004/02/10 16:20:33 tk4 Exp $
Author:
Sven Doering (lehrprojekt), Thomas Kriegelstein

Constructor Summary
Treuhaender(java.util.Properties settings, java.lang.String name, java.lang.String port)
          Konstruktor.
 
Method Summary
protected  java.lang.String chooseRole(java.lang.String host, int port)
          Wählt vokonfigurierte Rolle aus.
 org.ssonet.net.SSONETContext createContext()
          Erzeugt einen Context zur Verwendung bei der Kommunikation mit einem Kunden.
 idman.mngt.Context createContext(java.lang.String rolename, java.lang.String action)
          Erzeugt einen Context zur Verwendung bei der Kommunikation mit einem Händler.
 boolean doWarning(java.lang.String chainname, idman.rules.Condition cond, java.lang.String id, byte[] content, idman.mngt.Context context, java.lang.String duno)
           
 org.w3c.dom.Document handleRequest(org.w3c.dom.Document request, idman.mngt.Context context)
          Verarbeitung einer vom Kunden empfangenen Bestellung.
 java.lang.String hash(java.lang.String s)
          Berechnet einen Hashwert für den String.
protected  java.lang.String parsePrice(java.lang.String price)
          Parst den Geldstring.
 org.w3c.dom.Document sign(org.w3c.dom.Document d, idman.mngt.Context c)
          Delegiert das Signieren eines Dokuments an den Manager weiter.
 void start()
          Bereitet die Kommunikation zum Kunden vor.
 org.w3c.dom.Document[] verify(org.w3c.dom.Document d, idman.mngt.Context c)
          Delegiert das Überprüfen eines Dokuments an den Manager weiter.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Treuhaender

public Treuhaender(java.util.Properties settings,
                   java.lang.String name,
                   java.lang.String port)
Konstruktor.

Parameters:
settings - Die Einstellungen.
name - Name der Rolle für die Kommunikation mit Kunden.
port - Port für die Kommunikation mit Kunden.
Method Detail

doWarning

public boolean doWarning(java.lang.String chainname,
                         idman.rules.Condition cond,
                         java.lang.String id,
                         byte[] content,
                         idman.mngt.Context context,
                         java.lang.String duno)
Specified by:
doWarning in interface idman.rules.ChainEvaluationListener

createContext

public org.ssonet.net.SSONETContext createContext()
Erzeugt einen Context zur Verwendung bei der Kommunikation mit einem Kunden.

Specified by:
createContext in interface org.ssonet.net.SSONETContextFactory
Returns:
Context als SSONETContext mit den Verbindungsdaten.

createContext

public idman.mngt.Context createContext(java.lang.String rolename,
                                        java.lang.String action)
Erzeugt einen Context zur Verwendung bei der Kommunikation mit einem Händler.

Parameters:
rolename - Name der zu verwendenden Rolle.
action - Auszuführende Aktion.
Returns:
Context mit den Verbindungsdaten.

start

public void start()
Bereitet die Kommunikation zum Kunden vor.


verify

public org.w3c.dom.Document[] verify(org.w3c.dom.Document d,
                                     idman.mngt.Context c)
Delegiert das Überprüfen eines Dokuments an den Manager weiter.

Parameters:
d - Zu überprüfendes Dokument.
c - Verbindungsdaten.
Returns:
Feld von Dokumenten deren Signatur stimmte.

sign

public org.w3c.dom.Document sign(org.w3c.dom.Document d,
                                 idman.mngt.Context c)
Delegiert das Signieren eines Dokuments an den Manager weiter.

Parameters:
d - Zu signierendes Dokument.
c - Verbindungsdaten.
Returns:
Signiertes Dokument.

hash

public java.lang.String hash(java.lang.String s)
Berechnet einen Hashwert für den String.

Parameters:
s - Zu hashender String.
Returns:
String mit dem Hashwert.

handleRequest

public org.w3c.dom.Document handleRequest(org.w3c.dom.Document request,
                                          idman.mngt.Context context)
Verarbeitung einer vom Kunden empfangenen Bestellung.

Parameters:
request - Bestelldokument.
context - Verbindungsdaten.
Returns:
Dokument mit Mangel-/Fehlerbeschreibung oder die Lieferung.

chooseRole

protected java.lang.String chooseRole(java.lang.String host,
                                      int port)
Wählt vokonfigurierte Rolle aus.

Parameters:
host - Wird ignoriert.
port - Wird ignoriert.
Returns:
Treuhänder

parsePrice

protected java.lang.String parsePrice(java.lang.String price)
Parst den Geldstring. Mit "." statt ",".

Parameters:
price - Alter Preis.
Returns:
String mit korrekt dargestelltem float-Wert.


Copyright © 2003 DRIM Team. All Rights Reserved.