Rework:Protokolle:22-06-2005
From Wiki
Contents |
Allgemeines
Protokoll der Sitzung vom 09. Juni 2005
- Sitzungsleitung: Marc
- Protokollführer: Andreas
Zeit und Ort:
- Raum: LF 230
- Beginn: 14:20 Uhr
- Ende: 16:15 Uhr
Anwesenheit:
- Betreuer: Henrik
- Teilnehmer: Marc, Andreas
Nächste Sitzung:
- Dienstag, den 05. Juli 2005
- bei Problemen, Fragen oder Ungereimtheiten sind weitere Treffen möglich. In diesem Falle bitte per Email anfragen.
Sitzung
Daffodil-Vortrag
Peter hält einen Vortrag zur Struktur von Daffodil.
Zusammenfassung:
- Kommunikation in Daffodil:
- Daffodil arbeitet mit Asynchroner Kommunikation.
- Auf der Frontend-Seite stehen die GUI und die PLib.
- Im Backend stehen die Services mit Agenten und dazugehörigen Requests.
- Die Kommunikation zwischen Front- und Backend geschieht lediglich über Strings in denen XML-Daten stehen, die ihrerseits OWL-Formate einhüllen.
- Eine Nachricht zwischen Frontend und Backend beinhaltet folgende Punkte:
- Befehl, der ausgeführt werden soll (z.B. store.Annotation)
- den Inhalt im XML-Format
- eine RequestID (sehr wichtig zur Identifizierung, kann jederzeit mit GetRequestID angefordert werden)
- Art der Nachricht (z.B. TELL für void-Methoden oder ASK für Anfragen)
- Benötigte Sourcen: PaddleGUIFunctionality.java; Message.java
- Ein Agent leitet die Anfrage dann an den entsprechenden Request weiter
- Eine Antwort vom Backend ans Frontend wird an alle Dienste geleitet, die sich dafür angemeldet haben. Da diese Dienste XML-Daten erwarten, sollten wir zunächst eine eigene Klasse für Messages schreiben, um die Ausgabe fehlerhafter Nachrichten zu vermeiden.
- Die Wrapper leiten Anfragen an externe Suchmaschinen weiter und empfangen deren Antworten. Die Formate werden jeweils umgewandelt und somit die Heterogenität aufgehoben.
- Einen neuen Agenten erstellen
- Kopiere AliveAgent.java, dieser erbt von RunableAgent
- Der Request muss neu geschrieben werden. Jeder Request öffnet einen eigenen Thread, deswegen muss er durch KillRequest nach Beendigung der Arbeit explizit gelöscht werden.
- Benötigte Sourcen sind /paddle/folderserver; FolderServerAgentRequest.java;
- wichtige Methoden: getServiceName; getNewRequest
- Einen neuen Service integrieren:
- Methoden implementieren
- Nachrichten definieren
- PLib Fallunterscheidungsmethode implementieren
- Service aufsetzen (macht dann Peter)
- Starten und Stoppen von Services unter http: //daffodil:3456/Agents/ (benötigt Administratorrechte)
Präsentation der vorläufigen GUI
Andreas führt die vorläufigen Dialoge sowie eine Neufassung des JCheckBoxTree vor.
- Absprache: Marc liefert die Ontologie aus dem Backend ins Frontend und von dort als Baumobjekt an die GUI. Explizit reicht dazu eine Übergabe des Wurzelknotens.
- Annotationsicons aus Daffodil einbinden
- JTree nutzen für Annotationen, Dokumente und Topics
Meilensteine
Besprechung der Meilensteine
Aufträge
- alle: Fertigstellen des ersten Meilensteins.
Ausblick
- Am Dienstag, den 05.07.05 wird es voraussichtlich eine Präsentation des ersten Meilensteins geben.
