Optionen für den Import von Binärdateien
Bei Aufruf des Menübefehls Projekt | Binärtypen importieren werden Sie in einem der Schritte des Assistenten aufgefordert, Optionen für den Import von Binärdateien zu definieren. Im Folgenden wird beschrieben, welche Optionen Sie definieren können. Beachten Sie, dass die Dialogfeldoptionen je nachdem, ob Sie .NET- oder Java-Binärdateien importieren, etwas unterschiedlich sein können.
Dialogfeld "Optionen für den Import von Binärdateien"
Automatische Typinkludierung
.NET- oder Java-Binärdateien können verschiedene externe Assemblys oder Pakete referenzieren. Aktivieren Sie die Option alle referenzierten Typen hinzufügen... , wenn alle Typen, die von den in der Binärdatei inkludierten Typen referenziert werden, importiert werden sollen.
Um referenzierte Typen nur für bestimmte Java-Pakete oder .NET-Namespaces zu importieren, geben Sie die entsprechenden Pakete oder Namespaces in das Textfeld daneben ein. Mehrere Pakete oder Namespaces können durch Kommas, Semikola oder Leerzeichen voneinander getrennt werden.
Angenommen, die Quell-.NET .dll-Datei referenziert Typen aus den Namespaces System.Reflection und System.Data. Wenn Typen aus dem Namespace System.Reflection, nicht aber solche aus dem Namespace System.Data importiert werden sollen, aktivieren Sie die Option alle referenzierten Typen hinzufügen, optional auf die folgenden Pakete einschränken: und geben Sie in das Textfeld "System.Reflection" ein.
Inhaltseinschränkung
Aktivieren Sie die Option Nur Typen importieren, um Member wie Felder, Operationen, Eigenschaften usw. zu überspringen.
Aktivieren Sie die Option nur Elemente importieren mit Sichtbarkeit größer oder gleich:, um Typen und Typmember nach ihrer Sichtbarkeit zu importieren. In der Tabelle unten ist die Sichtbarkeit von Typen beginnend mit Typen mit der geringsten Sichtbarkeit aufgelistet. Wenn Sie z.B. "private" auswählen, werden alle Typen importiert, während bei Auswahl von "public" nur öffentliche Typen und Typmember importiert werden.
Anmerkung: | Wenn das Kontrollkästchen deaktiviert ist, werden alle Typen unabhängig von ihrer Sichtbarkeit importiert. |
.NET | Java |
---|---|
private | private |
internal | package (Standardsichtbarkeit, wenn kein expliziter Modifier vorhanden ist) |
protected | protected |
public | public |
Die Option Attributabschnitte unterdrücken ist auf .NET-Binärdateien anwendbar. Standardmäßig importiert UModel die in der Binärdatei gefundenen C#- oder VB.NET-Attribute. Aktivieren Sie die Option Attributabschnitte unterdrücken, wenn Attribute nicht importiert werden sollen. Andernfalls wird auf Member, die in Originalquellcode mit Attributen ausgestattet waren, nach Import der Binärdatei in das Modell das Stereotyp <<attributes>> angewendet. Wenn Attribute importiert werden, können Sie diese im Diagramm als Eigenschaftswerte anzeigen, Klicken Sie dazu mit der rechten Maustaste im Diagramm auf die Klasse und wählen Sie im Kontextmenü den Befehl Eigenschaftswerte | Alle. Nähere Informationen dazu finden Sie unter Stereotype und Eigenschaftswerte.
Die Option Attributabschnitte unterdrücken kann auch auf Java-Binärdateien angewendet werden. Standardmäßig importiert UModel die in der Binärdatei gefundenen Java-Annotationen, vorausgesetzt ihre Beibehaltungsrichtlinie wurde als RUNTIME (nicht CLASS oder SOURCE) definiert. Wenn keine Annotationen importiert werden sollen, aktivieren Sie die Option Annotations-Modifier unterdrücken. Wenn Annotationen importiert werden, erhalten Member, die in der Originaldatei Annotationen hatten, das Stereotyp <<annotations>> und Annotationen werden, wie unten gezeigt, als Eigenschaftswerte angezeigt.
Stile für Attributabschnitte
Diese Optionen sind nur auf .NET-Binärdateien anwendbar. Wie bereits zuvor erwähnt, werden Typen oder Typmember in UModel als Eigenschaftswerte importiert, falls diese im ursprünglichen Quellcode Attribute hatten.
Am besten lässt sich die Option nur ein Attribut pro Attributabschnitt erstellen anhand eines Beispiels erläutern. Angenommen, im ursprünglichen C#-Quellcode ist eine Methode mit zwei Attributen definiert:
using System; using System.Diagnostics;
namespace MyNamespace { class Program { [Conditional("VERBOSE"), Conditional("TERSE")] static void reportHeader() { Console.WriteLine("This is the header"); }
static void Main(string[] args) { reportHeader(); } } } |
Wenn beim Import der Binärdatei die Option nur ein Attribut pro Attributabschnitt erstellen aktiviert ist, würde jedes Attribut im Element "Eigenschaftswerte" in einer eigenen Zeile angezeigt:
Andernfalls würde die Attribute durch Kommas getrennt:
Mit der Option 'Attribut'-Suffix bei Attributtypnamen unterdrücken schließlich wird das 'Attribute'-Suffix eines Attributtyps entfernt. So würde z.B. ein im Quellcode definierter Attributtyp System.Xml.Serialization.XmlTypeAttribute als System.Xml.Serialization.XmlType importiert, wenn diese Option aktiviert ist.