Java Reference
In-Depth Information
kationsdiagramm visualisiert die Vorzugsrichtung für den Datenfluss beim Muster
Pipes and Filters.
Die Klassen Datenquelle , Filter und Datensenke sind in diesem Beispiel ak-
tive Klassen. Eine aktive Klasse ist eine Klasse, deren Objekte einen oder mehrere
Threads bzw. Betriebssystem-Prozesse beinhalten. Eine aktive Klasse hat seit UML
2.0 jeweils eine doppelte Linie an der linken und an der rechten Seite.
Im Folgenden das Kommunikationsdiagramm:
data
:Datenquelle
data
:Pipe
data
:Filter
data
:Pipe
:Datensenke
Bild 5-15 Kommunikationsdiagramm des Musters Pipes and Filters für aktive Filter
5.2.3.2 Teilnehmer
Datenquelle
Eine Datenquelle stellt die zu verarbeitenden Daten zur Verfügung. Sie kann sich ge-
genüber der Pipeline aktiv oder passiv verhalten. Aktiv bedeutet wie bei Filtern, dass
die Datenquelle der Pipeline zyklisch oder ereignisbasiert Daten zur Verfügung stellt.
Wenn eine Quelle sich passiv verhält, muss mindestens ein Element der Pipeline aktiv
sein, damit nach dem Pull-Prinzip neue Daten zur Verarbeitung von der Quelle ange-
fordert werden können.
Pipe
Pipes sind Kanäle und dienen als passives Verbindungsstück zwischen jeweils zwei
Elementen vom Typ Quelle, Filter oder Senke. Es können dabei folgende Paarungen
auftreten:
x Quelle - Pipe - Filter (am Anfang einer Pipeline),
x Filter - Pipe - Filter (in der Mitte der Pipeline) oder
x Filter - Pipe - Senke (am Ende der Pipeline).
Pipes funktionieren nach dem FIFO-Prinzip und dienen zur asynchronen Entkopplung
in der Pipeline.
Filter
Filter verarbeiten ihre Eingabedaten. Es gibt zwei Gruppen von Filtern: aktive und
passive . Aktive Filter sind typisch. Sie werden als parallele Einheit, z. B. als Thread
 
Search WWH ::




Custom Search