Zum Inhalt springen

Decorator

aus Wikipedia, der freien Enzyklopädie

Der Decorator (auch Dekorierer) ist ein Entwurfsmuster aus dem Bereich der Softwareentwicklung, das zur Kategorie der Strukturmuster (engl. {{#invoke:Vorlage:lang|flat}}) gehört. Das Muster ist eine flexible Alternative zur Unterklassenbildung, um eine Klasse um zusätzliche Funktionalitäten zu erweitern.<ref>{{#invoke:Vorlage:Literatur|f}}</ref> Es ist ein Entwurfsmuster der sogenannten GoF-Muster.

Verwendung

Die Instanz eines Dekorierers wird vor die zu dekorierende Klasse geschaltet. Der Dekorierer hat die gleiche Schnittstelle wie die zu dekorierende Klasse. Aufrufe an den Dekorierer werden dann verändert oder unverändert weitergeleitet (Delegation), oder sie werden komplett in Eigenregie verarbeitet. Der Dekorierer ist dabei „unsichtbar“, da der Aufrufende gar nicht mitbekommt, dass ein Dekorierer vorgeschaltet ist.

Entwurfsmuster Dekorierer in UML-Notation
Entwurfsmuster Dekorierer in UML-Notation

In einer alternativen Variante kann der Dekorierer als eine Strategie eingebunden und explizit aufgerufen werden.

Akteure

Die abstrakte Komponente definiert die öffentliche Schnittstelle für die zu dekorierenden Objekte. Die konkrete Komponente definiert Objekte, die dekoriert werden können.

Der abstrakte Dekorierer hält eine Referenz auf die abstrakte Komponente und bietet dieselbe Schnittstelle wie die abstrakte Komponente. Der konkrete Dekorierer definiert und implementiert eine oder mehrere spezielle Dekorationen.

Vor- und Nachteile

Die Vorteile bestehen darin, dass mehrere Dekorierer hintereinandergeschaltet werden können; die Dekorierer können zur Laufzeit und sogar nach der Instanziierung ausgetauscht werden. Die zu dekorierende Klasse ist nicht unbedingt festgelegt (wohl aber deren Schnittstelle). Zudem können lange und unübersichtliche Vererbungshierarchien vermieden werden.

Das Muster hat eine Gefahr: Da eine dekorierte Komponente nicht identisch mit der Komponente selbst ist (als Objekt), muss man beim Testen auf Objekt-Identität vorsichtig sein. (Ein Vergleich kann falsch ausgehen, obwohl dieselbe Komponente gemeint ist.) Zudem müssen bei der Verwendung von dekorierten Komponenten die Nachrichten vom Dekorierer an das dekorierte Objekt weitergeleitet werden.

Beispiele

C++

Diese C++14 Implementierung basiert auf der vor C++98 Implementierung im Buch Entwurfsmuster.

<syntaxhighlight lang="cpp">

  1. include <iostream>
  2. include <memory>

class VisuelleKomponente { public:

   virtual void zeichne() = 0;
   virtual ~VisuelleKomponente() = default;

};

class TextAnzeige : public VisuelleKomponente { public:

   void zeichne() override {
       std::cout << "[Text] ";
   }

};

class Dekorierer : public VisuelleKomponente { protected:

   std::shared_ptr<VisuelleKomponente> komponente;

public:

   Dekorierer(std::shared_ptr<VisuelleKomponente> c) : komponente(c) {}
   void zeichne() override {
       komponente->zeichne();
   }

};

class RahmenDekorierer : public Dekorierer {

   int rahmenBreite;

public:

   RahmenDekorierer(std::shared_ptr<VisuelleKomponente> c, int b)
       : Dekorierer(c), rahmenBreite(b) {}
   void zeichne() override {
       Dekorierer::zeichne();
       std::cout << "(Rahmen " << rahmenBreite << ") ";
   }

};

class Fenster {

   std::shared_ptr<VisuelleKomponente> inhalt;

public:

   void setInhalt(std::shared_ptr<VisuelleKomponente> c) {
       inhalt = c;
   }
   void zeichne() {
       if(inhalt) inhalt->zeichne();
       std::cout << std::endl;
   }

};

int main() {

   auto fenster = std::make_unique<Fenster>();
   auto text = std::make_shared<TextAnzeige>();
   fenster->setInhalt(text);
   fenster->zeichne();
   auto rahmen1 = std::make_shared<RahmenDekorierer>(text, 1);
   fenster->setInhalt(rahmen1);
   fenster->zeichne();
   auto rahmen2 = std::make_shared<RahmenDekorierer>(text, 2);
   auto rahmen3 = std::make_shared<RahmenDekorierer>(rahmen2, 1);
   fenster->setInhalt(rahmen3);
   fenster->zeichne();

} </syntaxhighlight>

Die Stream-Klassen der Java-Bibliothek

Eine Implementierung des Decorator-Musters stellen die Stream-Klassen in der Java-Bibliothek dar. Man dekoriert das konkrete Stream-Objekt mit Objekten, die neue Eigenschaften zu dem Stream hinzufügen und sich weiter dekorieren lassen. Dabei können Decorator-Objekte verwendet werden, die neue Statusinformationen hinzufügen oder solche, die neue Schnittstellen zur Verfügung stellen.

Erweitern von GUI-Komponenten

Ein Textfeld soll mit einer Umrahmung „dekoriert“ werden.

Zwischen dem Aufrufer und dem Textfeldobjekt wird das entsprechende Dekoriererobjekt eingefügt. Das Dekoriererobjekt erzeugt die Umrahmung und übergibt den Kontrollfluss an das Textfeld. Da der Dekorierer dieselbe Schnittstelle hat, ändert sich aus der Sicht des Aufrufers nichts.

Erweitern der Funktionalität von GUI-Komponenten

Jede Komponente stellt sich ab dem Ursprungspunkt (0, 0) dar; dies ist die eigentliche, zu dekorierende Klasse. Ein vorgeschalteter Dekorierer kann die Position verschieben, indem Darstellungs- und Mauskoordinaten-Aufrufe verändert werden.

Eine Spezialisierung davon ist ein Dekorierer, der zusätzlich eine feste Größe definiert, außerhalb derer nichts dargestellt werden kann. Eine weitere Spezialisierung erweitert den Darstellungsaufruf um einen darumliegenden Rahmen.

Ein zusätzlicher Dekorierer, der den ersten Dekorierer nochmals dekoriert, kann die Komponente unsichtbar werden lassen oder abschalten, indem Darstellungs- und Mausabfrage-Methoden wahlweise abgeblockt werden.

An diesem Beispiel sieht man auch, dass sich Vererbung und Delegation nicht ausschließen.

Ein Beispiel in C#

In einem Abenteuerspiel gibt es Spielfiguren. Jede davon kann Drohungen ausstoßen. Eine konkrete Spielfigur ist beispielsweise ein Monster. Spielfiguren können sich zur Laufzeit Schnupfen und Husten einfangen – dann geht ihren Drohungen ein Schniefen bzw. Husten voraus.

Das folgende Programmbeispiel zeigt, wie das Dekorierer-Muster benutzt wird, um ein Monster zu verschnupfen und zu verhusten.

Wichtig dabei ist zu verstehen, dass nicht die Unterklassen VerschnupftesMonster, VerhustetesMonster, VerschnupftesVerhustetesMonster und VerhustetesVerschnupftesMonster gebildet werden. Dieser Ansatz würde bei Hinzunahme weiterer Attribute wie „wahnsinnig“ und „feuerspuckend“ zu einer exponentiellen Zunahme der Unterklassen führen – ganz abgesehen von unerträglichen Klassennamen wie VerhustetesVerschnupftesWahnsinnigesFeuerspuckendesMonster. Es werden nur die (Reihenfolgen von) Dekorationen erzeugt, die tatsächlich benötigt werden.

Man sieht zudem, dass der Client-Code von den Dekorierern nichts weiß, nachdem die dekorierten Objekte erzeugt wurden. Aus Sicht des Client-Codes lautet der Aufruf zum Drohen immer Spielfigur.Drohe().

<syntaxhighlight lang="csharp"> using System;

namespace DekoratorMuster {

   public abstract class Spielfigur
   {
       public abstract void Drohe();
   }
   public class Monster : Spielfigur
   {
       public override void Drohe()
       {
           Console.WriteLine("Grrrrrrrr.");
       }
   }
   public abstract class Dekorierer : Spielfigur
   {
       private Spielfigur meineFigur;
       public Dekorierer(Spielfigur s)
       {
           meineFigur = s;
       }
       public override void Drohe()
       {
           meineFigur.Drohe();
       }
   }
   public class HustenDekorierer : Dekorierer
   {
       public HustenDekorierer(Spielfigur s)
           : base(s)
       { }
       public override void Drohe()
       {
           Console.Write("Hust, hust. ");
           base.Drohe();
       }
   }
   public class SchnupfenDekorierer : Dekorierer
   {
       public SchnupfenDekorierer(Spielfigur s)
           : base(s)
       { }
       public override void Drohe()
       {
           Console.Write("Schniff. ");
           base.Drohe();
       }
   }
   public class ClientCode
   {
       public static void Main()
       {
           Spielfigur meinMonster = new Monster();
           meinMonster.Drohe();
           Spielfigur meinVerhustetesMonster = new HustenDekorierer(meinMonster);
           meinVerhustetesMonster.Drohe();
           Spielfigur meinVerschnupftesMonster = new SchnupfenDekorierer(meinMonster);
           meinVerschnupftesMonster.Drohe();
           Spielfigur meinVerschnupftesVerhustetesMonster = new SchnupfenDekorierer(new HustenDekorierer(meinMonster));
           meinVerschnupftesVerhustetesMonster.Drohe();
           Spielfigur meinVerhustetesVerschnupftesMonster = new HustenDekorierer(new SchnupfenDekorierer(meinMonster));
           meinVerhustetesVerschnupftesMonster.Drohe();
       }
   }

} </syntaxhighlight> Die Ausgabe dieses Programms ist:

Grrrrrrrrr.
Hust, hust. Grrrrrrrrrr.
Schniff. Grrrrrrrrrr.
Schniff. Hust, hust. Grrrrrrrrrr.
Hust, hust. Schniff. Grrrrrrrrrr.

Ähnlich lassen sich Beispiele in C++ und anderen objektorientierten Programmiersprachen erstellen.

Verwandte Muster

Im Vergleich zum Dekorierer, welcher die tatsächlich zu verwendende Klasse selbst wählt, muss bei dem Strategie-Muster die aufrufende Instanz explizit wissen, welche Varianten zur Verfügung stehen und welche daraus verwendet werden soll.

Ähnlich dem Dekorierer ist zudem noch das Kompositum-Entwurfsmuster.

Einzelnachweise

<references />

{{#if:||{{#ifeq:0|10|{{#ifeq:Decorator|Vorlage:Erweiterte Navigationsleiste||Vorlage:Templatetransclusioncheck Vorlage:Dokumentation/ruler}}}}}}<templatestyles src="Erweiterte Navigationsleiste/styles legacy.css" />Vorlage:Klappleiste/Anfang{{#if: |

{{{Untertitel}}}

}}{{#if: |

{{{Untertitel2}}}

}}

{{#if: | {{#if: Adapter | Brücke | Decorator | Fassade | Fliegengewicht | Kompositum | Stellvertreter | {{#if:Strukturmuster||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 2|1|2}}px solid #FFF;border-bottom: {{#if: Verhaltensmuster|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|Strukturmuster }} {{#if: Beobachter | Besucher | Interpreter | Iterator | Kommando | Memento | Schablonenmethode | Strategie | Vermittler | Zustand | Zuständigkeitskette | Interceptor | Nullobjekt | Protokollstapel | {{#if:Verhaltensmuster||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 3|1|2}}px solid #FFF;border-bottom: {{#if: Muster für objekt-
relationale Abbildung
|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|Verhaltensmuster }} {{#if: Datentransferobjekt | Table Data Gateway | Row Data Gateway | Active Record | Unit of Work | Identity Map | Lazy Loading | Identity Field | Dependent Mapping | Embedded Value | Serialized LOB | Inheritance Mapper | Metadata Mapping | Query Object | Command-Query-Responsibility-Segregation | {{#if:Muster für objekt-
relationale Abbildung
||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 4|1|2}}px solid #FFF;border-bottom: {{#if: Nachrichten-
übermittlungsmuster
|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|Muster für objekt-
relationale Abbildung
}} {{#if: {{#if: File Transfer | Shared Database | Remote Procedure Invocation | Messaging|
}}{{#if:|
{{{Untergruppe-Inhalt}}}
}}
class="erw-nav-bild" style="width:0; padding:0 2px 0 0; border:1px solid transparent; " rowspan="{{#expr: 0{{#if:Abstrakte Fabrik | Erbauer | Fabrikmethode | Prototyp | Singleton | Multiton | Objektpool|+1}}{{#if:Adapter | Brücke | Decorator | Fassade | Fliegengewicht | Kompositum | Stellvertreter|+1}}{{#if:Beobachter | Besucher | Interpreter | Iterator | Kommando | Memento | Schablonenmethode | Strategie | Vermittler | Zustand | Zuständigkeitskette | Interceptor | Nullobjekt | Protokollstapel|+1}}{{#if:Datentransferobjekt | Table Data Gateway | Row Data Gateway | Active Record | Unit of Work | Identity Map | Lazy Loading | Identity Field | Dependent Mapping | Embedded Value | Serialized LOB | Inheritance Mapper | Metadata Mapping | Query Object | Command-Query-Responsibility-Segregation|+1}}{{#if:{{#if: File Transfer | Shared Database | Remote Procedure Invocation | Messaging|
}}{{#if:|
{{{Untergruppe-Inhalt}}}
}} {{#if: File Transfer | Shared Database | Remote Procedure Invocation | Messaging | {{#if:Integrationsarten||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 1|1|2}}px solid #FFF;border-bottom: {{#if: Nachrichtenaufbau|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Integrationsarten }} {{#if: Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator | {{#if:Nachrichtenaufbau||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 2|1|2}}px solid #FFF;border-bottom: {{#if: Endpunkte|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Nachrichtenaufbau }} {{#if: Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator | {{#if:Endpunkte||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 3|1|2}}px solid #FFF;border-bottom: {{#if: Kanäle|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Endpunkte }} {{#if: Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus | {{#if:Kanäle||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 4|1|2}}px solid #FFF;border-bottom: {{#if: Nachrichtenvermittlung|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Kanäle }} {{#if: Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker | {{#if:Nachrichtenvermittlung||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 5|1|2}}px solid #FFF;border-bottom: {{#if: Nachrichtenumwandlung|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Nachrichtenvermittlung }} {{#if: Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model | {{#if:Nachrichtenumwandlung||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 6|1|2}}px solid #FFF;border-bottom: {{#if: Systemmanagement|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Nachrichtenumwandlung }} {{#if: Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger | {{#if:Systemmanagement||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 7|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Systemmanagement }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 8|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 9|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 10|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 11|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 12|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:13|width:13;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 14|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:15|width:15;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 16|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:17|width:17;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:18|width:18;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 19|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 20|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }}
{{#if:Integrationsarten left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

File Transfer | Shared Database | Remote Procedure Invocation | Messaging }} {{#if: |

style="width:0%; padding:0 2px 0 0; " rowspan="{{#expr: 0{{#if:File Transfer | Shared Database | Remote Procedure Invocation | Messaging|+2}}{{#if:Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator|+2}}{{#if:Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator|+2}}{{#if:Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus|+2}}{{#if:Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker|+2}}{{#if:Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model|+2}}{{#if:Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}}}" | {{{BILD}}}

}}{{#if: |

style="width:0%; padding:0 2px 0 0; " rowspan="{{#expr: 0{{#if:File Transfer | Shared Database | Remote Procedure Invocation | Messaging|+2}}{{#if:Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator|+2}}{{#if:Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator|+2}}{{#if:Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus|+2}}{{#if:Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker|+2}}{{#if:Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model|+2}}{{#if:Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}}}" | [[Datei:{{{Bild}}}|{{#if: | {{{Bild-px}}} | x{{#expr: 0{{#if:File Transfer | Shared Database | Remote Procedure Invocation | Messaging|+11}}{{#if:Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator|+11}}{{#if:Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator|+11}}{{#if:Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus|+16}}{{#if:Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker|+11}}{{#if:Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model|+11}}{{#if:Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger|+11}}{{#if:|+16}}{{#if:|+11}}{{#if:|+11}}{{#if:|+11}}{{#if:{{{Untergruppe-Inhalt12}}}|+16}}{{#if:|+11}}{{#if:|+11}}{{#if:|+11}}{{#if:|+16}}{{#if:|+11}}{{#if:|+11}}{{#if:|+11}}{{#if:|+16}}}}px}}{{#if: {{{Bild-Beschreibung}}} | | {{{Bild-Beschreibung}}} }}]]

}}

{{#if:Nachrichtenaufbau left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator }}

{{#if:Endpunkte colspan="2"}} class="hlist" style="text-align: {{#if:Endpunkte|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator }}

{{#if:Kanäle colspan="2"}} class="hlist" style="text-align: {{#if:Kanäle|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus }}

{{#if:Nachrichtenvermittlung colspan="2"}} class="hlist" style="text-align: {{#if:Nachrichtenvermittlung|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker }}

{{#if:Nachrichtenumwandlung left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model }}

{{#if:Systemmanagement left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger }}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: File Transfer | Shared Database | Remote Procedure Invocation | Messaging|
}}|+1}}{{#if:Application Controller | Business Delegate | Data Access Object | Dependency Injection | Extension Interface | Fluent Interface | Inversion of Control (IoC) | Lock | Model View Controller (MVC) | Model View Presenter (MVP) | Model View Update (MVU) | Model View ViewModel (MVVM) | Page Controller | Registry | Remote Facade | Repository | Service Locator | Session State | Table Module | Template View | Threadpool | Transaction Script | Transform View | Two-Step View | Value Object|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}}}" |

}} {{#if: Abstrakte Fabrik | Erbauer | Fabrikmethode | Prototyp | Singleton | Multiton | Objektpool | {{#if:Erzeugungsmuster||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 1|1|2}}px solid #FFF;border-bottom: {{#if: Strukturmuster|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|Erzeugungsmuster }}

{{#if:Erzeugungsmuster colspan="2"}} class="hlist" style="text-align: {{#if:Erzeugungsmuster|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Abstrakte Fabrik | Erbauer | Fabrikmethode | Prototyp | Singleton | Multiton | Objektpool }} {{#if: |

class="erw-nav-bild" style="width:0; padding:0 2px 0 0; border:1px solid transparent; " rowspan="{{#expr: 0{{#if:Abstrakte Fabrik | Erbauer | Fabrikmethode | Prototyp | Singleton | Multiton | Objektpool|+1}}{{#if:Adapter | Brücke | Decorator | Fassade | Fliegengewicht | Kompositum | Stellvertreter|+1}}{{#if:Beobachter | Besucher | Interpreter | Iterator | Kommando | Memento | Schablonenmethode | Strategie | Vermittler | Zustand | Zuständigkeitskette | Interceptor | Nullobjekt | Protokollstapel|+1}}{{#if:Datentransferobjekt | Table Data Gateway | Row Data Gateway | Active Record | Unit of Work | Identity Map | Lazy Loading | Identity Field | Dependent Mapping | Embedded Value | Serialized LOB | Inheritance Mapper | Metadata Mapping | Query Object | Command-Query-Responsibility-Segregation|+1}}{{#if:{{#if: File Transfer | Shared Database | Remote Procedure Invocation | Messaging|
}}{{#if:|
{{{Untergruppe-Inhalt}}}
}} {{#if: File Transfer | Shared Database | Remote Procedure Invocation | Messaging | {{#if:Integrationsarten||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 1|1|2}}px solid #FFF;border-bottom: {{#if: Nachrichtenaufbau|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Integrationsarten }} {{#if: Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator | {{#if:Nachrichtenaufbau||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 2|1|2}}px solid #FFF;border-bottom: {{#if: Endpunkte|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Nachrichtenaufbau }} {{#if: Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator | {{#if:Endpunkte||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 3|1|2}}px solid #FFF;border-bottom: {{#if: Kanäle|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Endpunkte }} {{#if: Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus | {{#if:Kanäle||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 4|1|2}}px solid #FFF;border-bottom: {{#if: Nachrichtenvermittlung|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Kanäle }} {{#if: Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker | {{#if:Nachrichtenvermittlung||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 5|1|2}}px solid #FFF;border-bottom: {{#if: Nachrichtenumwandlung|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Nachrichtenvermittlung }} {{#if: Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model | {{#if:Nachrichtenumwandlung||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 6|1|2}}px solid #FFF;border-bottom: {{#if: Systemmanagement|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Nachrichtenumwandlung }} {{#if: Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger | {{#if:Systemmanagement||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 7|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Systemmanagement }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 8|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 9|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 10|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 11|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 12|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:13|width:13;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 14|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:15|width:15;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 16|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:17|width:17;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:18|width:18;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 19|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 20|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }}
{{#if:Integrationsarten left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

File Transfer | Shared Database | Remote Procedure Invocation | Messaging }} {{#if: |

style="width:0%; padding:0 2px 0 0; " rowspan="{{#expr: 0{{#if:File Transfer | Shared Database | Remote Procedure Invocation | Messaging|+2}}{{#if:Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator|+2}}{{#if:Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator|+2}}{{#if:Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus|+2}}{{#if:Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker|+2}}{{#if:Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model|+2}}{{#if:Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}}}" | {{{BILD}}}

}}{{#if: |

style="width:0%; padding:0 2px 0 0; " rowspan="{{#expr: 0{{#if:File Transfer | Shared Database | Remote Procedure Invocation | Messaging|+2}}{{#if:Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator|+2}}{{#if:Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator|+2}}{{#if:Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus|+2}}{{#if:Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker|+2}}{{#if:Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model|+2}}{{#if:Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}}}" | [[Datei:{{{Bild}}}|{{#if: | {{{Bild-px}}} | x{{#expr: 0{{#if:File Transfer | Shared Database | Remote Procedure Invocation | Messaging|+11}}{{#if:Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator|+11}}{{#if:Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator|+11}}{{#if:Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus|+16}}{{#if:Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker|+11}}{{#if:Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model|+11}}{{#if:Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger|+11}}{{#if:|+16}}{{#if:|+11}}{{#if:|+11}}{{#if:|+11}}{{#if:{{{Untergruppe-Inhalt12}}}|+16}}{{#if:|+11}}{{#if:|+11}}{{#if:|+11}}{{#if:|+16}}{{#if:|+11}}{{#if:|+11}}{{#if:|+11}}{{#if:|+16}}}}px}}{{#if: {{{Bild-Beschreibung}}} | | {{{Bild-Beschreibung}}} }}]]

}}

{{#if:Nachrichtenaufbau left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator }}

{{#if:Endpunkte colspan="2"}} class="hlist" style="text-align: {{#if:Endpunkte|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator }}

{{#if:Kanäle colspan="2"}} class="hlist" style="text-align: {{#if:Kanäle|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus }}

{{#if:Nachrichtenvermittlung colspan="2"}} class="hlist" style="text-align: {{#if:Nachrichtenvermittlung|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker }}

{{#if:Nachrichtenumwandlung left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model }}

{{#if:Systemmanagement left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger }}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: File Transfer | Shared Database | Remote Procedure Invocation | Messaging|
}}|+1}}{{#if:Application Controller | Business Delegate | Data Access Object | Dependency Injection | Extension Interface | Fluent Interface | Inversion of Control (IoC) | Lock | Model View Controller (MVC) | Model View Presenter (MVP) | Model View Update (MVU) | Model View ViewModel (MVVM) | Page Controller | Registry | Remote Facade | Repository | Service Locator | Session State | Table Module | Template View | Threadpool | Transaction Script | Transform View | Two-Step View | Value Object|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}}}" |
{{{BILD}}}

}}{{#if: |

class="erw-nav-bild" style="width:0; padding:0 2px 0 0; border:1px solid transparent; " rowspan="{{#expr: 0{{#if:Abstrakte Fabrik | Erbauer | Fabrikmethode | Prototyp | Singleton | Multiton | Objektpool|+1}}{{#if:Adapter | Brücke | Decorator | Fassade | Fliegengewicht | Kompositum | Stellvertreter|+1}}{{#if:Beobachter | Besucher | Interpreter | Iterator | Kommando | Memento | Schablonenmethode | Strategie | Vermittler | Zustand | Zuständigkeitskette | Interceptor | Nullobjekt | Protokollstapel|+1}}{{#if:Datentransferobjekt | Table Data Gateway | Row Data Gateway | Active Record | Unit of Work | Identity Map | Lazy Loading | Identity Field | Dependent Mapping | Embedded Value | Serialized LOB | Inheritance Mapper | Metadata Mapping | Query Object | Command-Query-Responsibility-Segregation|+1}}{{#if:{{#if: File Transfer | Shared Database | Remote Procedure Invocation | Messaging|
}}{{#if:|
{{{Untergruppe-Inhalt}}}
}} {{#if: File Transfer | Shared Database | Remote Procedure Invocation | Messaging | {{#if:Integrationsarten||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 1|1|2}}px solid #FFF;border-bottom: {{#if: Nachrichtenaufbau|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Integrationsarten }} {{#if: Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator | {{#if:Nachrichtenaufbau||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 2|1|2}}px solid #FFF;border-bottom: {{#if: Endpunkte|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Nachrichtenaufbau }} {{#if: Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator | {{#if:Endpunkte||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 3|1|2}}px solid #FFF;border-bottom: {{#if: Kanäle|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Endpunkte }} {{#if: Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus | {{#if:Kanäle||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 4|1|2}}px solid #FFF;border-bottom: {{#if: Nachrichtenvermittlung|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Kanäle }} {{#if: Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker | {{#if:Nachrichtenvermittlung||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 5|1|2}}px solid #FFF;border-bottom: {{#if: Nachrichtenumwandlung|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Nachrichtenvermittlung }} {{#if: Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model | {{#if:Nachrichtenumwandlung||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 6|1|2}}px solid #FFF;border-bottom: {{#if: Systemmanagement|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Nachrichtenumwandlung }} {{#if: Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger | {{#if:Systemmanagement||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 7|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Systemmanagement }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 8|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 9|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 10|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 11|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 12|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:13|width:13;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 14|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:15|width:15;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 16|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:17|width:17;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:18|width:18;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 19|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 20|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }}
{{#if:Integrationsarten left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

File Transfer | Shared Database | Remote Procedure Invocation | Messaging }} {{#if: |

style="width:0%; padding:0 2px 0 0; " rowspan="{{#expr: 0{{#if:File Transfer | Shared Database | Remote Procedure Invocation | Messaging|+2}}{{#if:Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator|+2}}{{#if:Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator|+2}}{{#if:Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus|+2}}{{#if:Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker|+2}}{{#if:Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model|+2}}{{#if:Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}}}" | {{{BILD}}}

}}{{#if: |

style="width:0%; padding:0 2px 0 0; " rowspan="{{#expr: 0{{#if:File Transfer | Shared Database | Remote Procedure Invocation | Messaging|+2}}{{#if:Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator|+2}}{{#if:Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator|+2}}{{#if:Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus|+2}}{{#if:Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker|+2}}{{#if:Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model|+2}}{{#if:Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}}}" | [[Datei:{{{Bild}}}|{{#if: | {{{Bild-px}}} | x{{#expr: 0{{#if:File Transfer | Shared Database | Remote Procedure Invocation | Messaging|+11}}{{#if:Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator|+11}}{{#if:Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator|+11}}{{#if:Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus|+16}}{{#if:Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker|+11}}{{#if:Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model|+11}}{{#if:Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger|+11}}{{#if:|+16}}{{#if:|+11}}{{#if:|+11}}{{#if:|+11}}{{#if:{{{Untergruppe-Inhalt12}}}|+16}}{{#if:|+11}}{{#if:|+11}}{{#if:|+11}}{{#if:|+16}}{{#if:|+11}}{{#if:|+11}}{{#if:|+11}}{{#if:|+16}}}}px}}{{#if: {{{Bild-Beschreibung}}} | | {{{Bild-Beschreibung}}} }}]]

}}

{{#if:Nachrichtenaufbau left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator }}

{{#if:Endpunkte colspan="2"}} class="hlist" style="text-align: {{#if:Endpunkte|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator }}

{{#if:Kanäle colspan="2"}} class="hlist" style="text-align: {{#if:Kanäle|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus }}

{{#if:Nachrichtenvermittlung colspan="2"}} class="hlist" style="text-align: {{#if:Nachrichtenvermittlung|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker }}

{{#if:Nachrichtenumwandlung left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model }}

{{#if:Systemmanagement left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger }}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: File Transfer | Shared Database | Remote Procedure Invocation | Messaging|
}}|+1}}{{#if:Application Controller | Business Delegate | Data Access Object | Dependency Injection | Extension Interface | Fluent Interface | Inversion of Control (IoC) | Lock | Model View Controller (MVC) | Model View Presenter (MVP) | Model View Update (MVU) | Model View ViewModel (MVVM) | Page Controller | Registry | Remote Facade | Repository | Service Locator | Session State | Table Module | Template View | Threadpool | Transaction Script | Transform View | Two-Step View | Value Object|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}}}" |

}}

{{#if:Strukturmuster colspan="2"}} class="hlist" style="text-align: {{#if:Strukturmuster|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Adapter | Brücke | Decorator | Fassade | Fliegengewicht | Kompositum | Stellvertreter }}

{{#if:Verhaltensmuster colspan="2"}} class="hlist" style="text-align: {{#if:Verhaltensmuster|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Beobachter | Besucher | Interpreter | Iterator | Kommando | Memento | Schablonenmethode | Strategie | Vermittler | Zustand | Zuständigkeitskette | Interceptor | Nullobjekt | Protokollstapel }}

{{#if:Muster für objekt-
relationale Abbildung
colspan="2"}} class="hlist" style="text-align: {{#if:Muster für objekt-
relationale Abbildung
|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Datentransferobjekt | Table Data Gateway | Row Data Gateway | Active Record | Unit of Work | Identity Map | Lazy Loading | Identity Field | Dependent Mapping | Embedded Value | Serialized LOB | Inheritance Mapper | Metadata Mapping | Query Object | Command-Query-Responsibility-Segregation }}

{{#if: File Transfer | Shared Database | Remote Procedure Invocation | Messaging | {{#if:Integrationsarten||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 1|1|2}}px solid #FFF;border-bottom: {{#if: Nachrichtenaufbau|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Integrationsarten }} {{#if: Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator | {{#if:Nachrichtenaufbau||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 2|1|2}}px solid #FFF;border-bottom: {{#if: Endpunkte|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Nachrichtenaufbau }} {{#if: Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator | {{#if:Endpunkte||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 3|1|2}}px solid #FFF;border-bottom: {{#if: Kanäle|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Endpunkte }} {{#if: Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus | {{#if:Kanäle||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 4|1|2}}px solid #FFF;border-bottom: {{#if: Nachrichtenvermittlung|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Kanäle }} {{#if: Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker | {{#if:Nachrichtenvermittlung||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 5|1|2}}px solid #FFF;border-bottom: {{#if: Nachrichtenumwandlung|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Nachrichtenvermittlung }} {{#if: Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model | {{#if:Nachrichtenumwandlung||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 6|1|2}}px solid #FFF;border-bottom: {{#if: Systemmanagement|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Nachrichtenumwandlung }} {{#if: Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger | {{#if:Systemmanagement||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 7|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Systemmanagement }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 8|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 9|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 10|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 11|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 12|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:13|width:13;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 14|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:15|width:15;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 16|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:17|width:17;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:18|width:18;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 19|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 20|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }}
{{#if:Integrationsarten left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

File Transfer | Shared Database | Remote Procedure Invocation | Messaging }} {{#if: |

style="width:0%; padding:0 2px 0 0; " rowspan="{{#expr: 0{{#if:File Transfer | Shared Database | Remote Procedure Invocation | Messaging|+2}}{{#if:Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator|+2}}{{#if:Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator|+2}}{{#if:Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus|+2}}{{#if:Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker|+2}}{{#if:Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model|+2}}{{#if:Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}}}" | {{{BILD}}}

}}{{#if: |

style="width:0%; padding:0 2px 0 0; " rowspan="{{#expr: 0{{#if:File Transfer | Shared Database | Remote Procedure Invocation | Messaging|+2}}{{#if:Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator|+2}}{{#if:Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator|+2}}{{#if:Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus|+2}}{{#if:Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker|+2}}{{#if:Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model|+2}}{{#if:Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}}}" | [[Datei:{{{Bild}}}|{{#if: | {{{Bild-px}}} | x{{#expr: 0{{#if:File Transfer | Shared Database | Remote Procedure Invocation | Messaging|+11}}{{#if:Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator|+11}}{{#if:Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator|+11}}{{#if:Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus|+16}}{{#if:Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker|+11}}{{#if:Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model|+11}}{{#if:Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger|+11}}{{#if:|+16}}{{#if:|+11}}{{#if:|+11}}{{#if:|+11}}{{#if:{{{Untergruppe-Inhalt12}}}|+16}}{{#if:|+11}}{{#if:|+11}}{{#if:|+11}}{{#if:|+16}}{{#if:|+11}}{{#if:|+11}}{{#if:|+11}}{{#if:|+16}}}}px}}{{#if: {{{Bild-Beschreibung}}} | | {{{Bild-Beschreibung}}} }}]]

}}

{{#if:Nachrichtenaufbau left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator }}

{{#if:Endpunkte colspan="2"}} class="hlist" style="text-align: {{#if:Endpunkte|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator }}

{{#if:Kanäle colspan="2"}} class="hlist" style="text-align: {{#if:Kanäle|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus }}

{{#if:Nachrichtenvermittlung colspan="2"}} class="hlist" style="text-align: {{#if:Nachrichtenvermittlung|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker }}

{{#if:Nachrichtenumwandlung left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model }}

{{#if:Systemmanagement left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger }}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: File Transfer | Shared Database | Remote Procedure Invocation | Messaging|}} |

{{#if:Nachrichten-
übermittlungsmuster
||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 5|1|2}}px solid #FFF;border-bottom: {{#if: andere|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|Nachrichten-
übermittlungsmuster
}}

{{#if:Nachrichten-
übermittlungsmuster
colspan="2"}} class="hlist" style="text-align: {{#if:Nachrichten-
übermittlungsmuster
|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:ja|0|0 .25em}};"| {{#if: File Transfer | Shared Database | Remote Procedure Invocation | Messaging|

}}{{#if:|
{{{Untergruppe-Inhalt}}}
}} {{#if: File Transfer | Shared Database | Remote Procedure Invocation | Messaging | {{#if:Integrationsarten||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 1|1|2}}px solid #FFF;border-bottom: {{#if: Nachrichtenaufbau|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Integrationsarten }} {{#if: Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator | {{#if:Nachrichtenaufbau||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 2|1|2}}px solid #FFF;border-bottom: {{#if: Endpunkte|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Nachrichtenaufbau }} {{#if: Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator | {{#if:Endpunkte||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 3|1|2}}px solid #FFF;border-bottom: {{#if: Kanäle|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Endpunkte }} {{#if: Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus | {{#if:Kanäle||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 4|1|2}}px solid #FFF;border-bottom: {{#if: Nachrichtenvermittlung|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Kanäle }} {{#if: Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker | {{#if:Nachrichtenvermittlung||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 5|1|2}}px solid #FFF;border-bottom: {{#if: Nachrichtenumwandlung|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Nachrichtenvermittlung }} {{#if: Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model | {{#if:Nachrichtenumwandlung||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 6|1|2}}px solid #FFF;border-bottom: {{#if: Systemmanagement|2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Nachrichtenumwandlung }} {{#if: Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger | {{#if:Systemmanagement||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 7|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|Systemmanagement }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 8|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 9|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 10|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 11|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 12|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:13|width:13;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 14|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:15|width:15;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 16|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:17|width:17;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: |1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:18|width:18;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 19|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }} {{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 20|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:;|}}"|' }}
{{#if:Integrationsarten left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

File Transfer | Shared Database | Remote Procedure Invocation | Messaging }} {{#if: |

style="width:0%; padding:0 2px 0 0; " rowspan="{{#expr: 0{{#if:File Transfer | Shared Database | Remote Procedure Invocation | Messaging|+2}}{{#if:Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator|+2}}{{#if:Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator|+2}}{{#if:Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus|+2}}{{#if:Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker|+2}}{{#if:Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model|+2}}{{#if:Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}}}" | {{{BILD}}}

}}{{#if: |

style="width:0%; padding:0 2px 0 0; " rowspan="{{#expr: 0{{#if:File Transfer | Shared Database | Remote Procedure Invocation | Messaging|+2}}{{#if:Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator|+2}}{{#if:Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator|+2}}{{#if:Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus|+2}}{{#if:Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker|+2}}{{#if:Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model|+2}}{{#if:Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}{{#if:|+2}}}}" | [[Datei:{{{Bild}}}|{{#if: | {{{Bild-px}}} | x{{#expr: 0{{#if:File Transfer | Shared Database | Remote Procedure Invocation | Messaging|+11}}{{#if:Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator|+11}}{{#if:Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator|+11}}{{#if:Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus|+16}}{{#if:Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker|+11}}{{#if:Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model|+11}}{{#if:Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger|+11}}{{#if:|+16}}{{#if:|+11}}{{#if:|+11}}{{#if:|+11}}{{#if:{{{Untergruppe-Inhalt12}}}|+16}}{{#if:|+11}}{{#if:|+11}}{{#if:|+11}}{{#if:|+16}}{{#if:|+11}}{{#if:|+11}}{{#if:|+11}}{{#if:|+16}}}}px}}{{#if: {{{Bild-Beschreibung}}} | | {{{Bild-Beschreibung}}} }}]]

}}

{{#if:Nachrichtenaufbau left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message | Command Message | Document Message | Event Message | Request-Reply | Return Address | Correlation Identifier | Message Sequence | Message Expiration | Format Indicator }}

{{#if:Endpunkte colspan="2"}} class="hlist" style="text-align: {{#if:Endpunkte|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message Endpoint | Messaging Gateway | Messaging Mapper | Transactional Client | Polling Consumer | Event-driven Consumer | Competing Consumers | Message Dispatcher | Selective Consumer | Durable Subscriber | Idempotent Receiver | Service Activator }}

{{#if:Kanäle colspan="2"}} class="hlist" style="text-align: {{#if:Kanäle|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message Channel | Point-to-Point Channel | Publisher-Subscriber Channel | Datatype Channel | Invalid Message Channel | Dead Letter Channel | Guaranteed Delivery | Channel Adapter | Messaging Bridge | Message Bus }}

{{#if:Nachrichtenvermittlung colspan="2"}} class="hlist" style="text-align: {{#if:Nachrichtenvermittlung|left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Pipes-and-Filters | Message Router | Content-based Router | Message Filter | Dynamic Router | Recipient List | Splitter | Aggregator | Resequencer | Composed Message Processor | Scatter-Gather | Routing Slip | Process Manager | Message Broker }}

{{#if:Nachrichtenumwandlung left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Message Translator | Envelope Wrapper | Content Enricher | Content Filter | Claim Check | Normalizer | Canonical Data Model }}

{{#if:Systemmanagement left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Control Bus | Detour | Wire Tap | Message History | Message Store | Smart Proxy | Test Message | Channel Purger }}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: File Transfer | Shared Database | Remote Procedure Invocation | Messaging|

}}

}}

{{#if: Application Controller | Business Delegate | Data Access Object | Dependency Injection | Extension Interface | Fluent Interface | Inversion of Control (IoC) | Lock | Model View Controller (MVC) | Model View Presenter (MVP) | Model View Update (MVU) | Model View ViewModel (MVVM) | Page Controller | Registry | Remote Facade | Repository | Service Locator | Session State | Table Module | Template View | Threadpool | Transaction Script | Transform View | Two-Step View | Value Object | {{#if:andere||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 6|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|andere }} {{#if:andere left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

Application Controller | Business Delegate | Data Access Object | Dependency Injection | Extension Interface | Fluent Interface | Inversion of Control (IoC) | Lock | Model View Controller (MVC) | Model View Presenter (MVP) | Model View Update (MVU) | Model View ViewModel (MVVM) | Page Controller | Registry | Remote Facade | Repository | Service Locator | Session State | Table Module | Template View | Threadpool | Transaction Script | Transform View | Two-Step View | Value Object }}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 7|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 8|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 9|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 10|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 11|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 12|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 13|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 14|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 15|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 16|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 17|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 18|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 19|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 20|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 21|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 22|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 23|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 24|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 25|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 26|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 27|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 28|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 29|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 30|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 31|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: | {{#if:||class="erw-nav-gruppe" style="white-space: nowrap;text-align: right;{{#if:|background:#;|{{#switch:|eigen=background:#{{#if:||E6E6FF}};|einheitlich=background:;}}}}border: 1px solid transparent;border-top: {{#if: 32|1|2}}px solid #FFF;border-bottom: {{#if: |2|1}}px solid #FFF;padding: 0 1em;{{#if:|width:{{{Kopfbreite}}};|}}"|' }} {{#if: left|center}};border-left: 2px solid #fdfdfd;width: 100%;margin: .4em 0;border-color: #fdfdfd;padding: {{#if:|0|0 .25em}};"|

}}

{{#if: |

}}{{#if: |

{{{Weiteres2}}}

}}{{#if: Siehe auch:  Analysemuster | Architekturmuster | Integrationsmuster | SOA-Muster |

}}Vorlage:Klappleiste/Ende