Modell suchen

Kontext

Ein Repository kann nach Modellen bzw. Modellelementen durchsucht werden. Die verschiedenen Wege der Nutzung dieser Funktion und der daraus abgeleiteten Möglichkeiten wird im folgenden erklärt.

Aufruf der Suche

Die Funktion Search Model kann aufgerufen werden über die Menüleiste unter Search .

Aufruf der Model Search über die Menüleiste

Ein alternativer Weg ist über die Toolleiste. Hier kommt man direkt zur Model Search .

Aufruf der Model Search über die Toolleiste

Im sich öffnenden Search Dialog lautet der Name einer der Reiter Model Search .

Model Search Dialog

Aufbau einer Suche

Es kann mit verschiedenen Einstellungen ein Repository durchsucht werden. Zur Aktivierung der Relevanz der Groß- und Kleinschreibung wird ein Haken bei Case Sensitive gesetzt.

Case Sensitive Suche

Suche mit regulären Ausdrücken

Des weiteren wird die Verwendung regulärer Ausdrücke unterstützt. Hierzu den Haken bei Regular Expression setzen. Eine Erklärung der üblichen Symbole befindet sich direkt unter dem Eingabefeld für die zu suchende Zeichenkette. Im Beispiel wird nach einer Zeichenkette gesucht, welche mit einem großen 'P' oder einem kleinen 'p' beginnt und danach eine Zeichenkette beliebiger Länge und beliebigen Inhaltes folgt.

Suche unter Verwendung regulärer Ausdrücke

Das Suchergebnis zeigt im Gegensatz zur einfachen Suche nach plane nun auch die Treffer Passenger, passengers, Plane, plane, pages an.

Suchergebnis unter Verwendung regulärer Ausdrücke

Bemerkungen zu EMeta-Klassen

Die Suche kann auf beliebige EMeta-Klassen eingeschränkt werden. Besondere Bedeutung besitzt das EObject , da von ihr alle anderen Klassen erben. Ist der Haken bei EObject gesetzt, werden auch alle Instanzmodelle durchsucht. Fehlt der Haken werden nur die angegebenen Metaklassen durchsucht. D.h. eine Suche bei der standardmäßig alle Metaklassen aktiviert werden und somit in die Suche einbezogen werden, führt zum gleichen Suchergebnis, wie eine Suche mit nur einem einzigen Haken bei EObject .

Auswertung eines Suchergebnisses

Der folgende Screenshot zeigt das Suchergebnis zur obigen Suche an. Alle Treffer sind fett dargestellt. Der Teilbaum des ersten Treffers wird standardmäßig vollkommen ausgeklappt. Alle weiteren nicht.

Suchergebnis einer Standardsuche

Die Navigation im Suchergebnis wird durch die Standard Eclipse Search View Buttons erleichtert. Einige davon haben bei der Arbeit mit dem Model Repository besondere Bedeutung oder sind besonders nützlich. Diese Buttons werden erklärt.

Nützliche Buttons

Unter Rahmen 1 befinden sich die Buttons Show Previous Match und Show Next Match , mit denen zu einzelnen Treffern gesprungen werden kann.

Unter Rahmen 2 kann der Suchergebnisbaum um diejenigen Treffer verringert werden, die nicht relevant sind.

Unter Rahmen 3 befinden Buttons um den Ergebnisbaum vollständig zu entfalten bzw. vollständig zu falten.

Wahlweise mit F5 oder mit dem Button bei Rahmen 4 Run the Current Search Again wird die aktuelle Suche erneut durchgeführt, um z.B. gelöschte Treffer wieder anzuzeigen.

Der Button Show Previous Searches unter Rahmen 5 macht Sucheinstellungen älterer Suchläufe verfügbar und bietet Zugriff auf die Suchhistorie. Die Suchhistorie bietet eine Übersicht und einzelne Suchen können entfernt oder geöffnet werden - wahlweise in einer neuen View.

Such Historie

Weitere Funktionalität aus der Search View heraus

Wurde eine Suche durchgeführt und das Suchergebnis wird angezeigt, können die Funktionalitäten Load und Compare/Merge aus der Search View heraus aufgerufen werden.

Modell laden aus der Search View

Ist ein Modell selektiert, ist Load erneut über das Kontextmenü erreichbar.

Laden aus der Search View

Der weitere Ablauf wird mit dem Standard Eclipse Dialog fortgesetzt und entspricht Modell laden .

Das Laden von Elementen der Modelle ist nicht möglich und wird mit einem Hinweisdialog abgewiesen.

Es wurde kein Modell zum Laden ausgewählt, sondern Elemente eines Modells

Vergleichen und Zusammenführen von Modellen aus der Search View

Um ein Compare/Merge durchzuführen müssen zwei zu vergleichende Modelle in der Search View selektiert werden. Der Kontextmenüeintrag Compare/Merge ist dafür verfügbar.

Compare/Merge aus der Search View

Das weitere Vorgehen entspricht Modelle vergleichen und zusammenführen .

Nach oben