Erstellen von Topic-Names

Den in den oberen Abschnitten erstellten Topics können nun Namen zugewiesen werden. Das Topic-Objekt bzw. –Interface bietet dazu die Funktion createTopicName an. Dieser Funktion können zahlreiche Parameter übergeben werden. Es können der Name, die Scopes und Types direkt bei Aufruf der Funktion übergeben werden.

Das erste Beispiel erstellt einen neuen Namen ohne Scopes und Types:

// erstellen eines Topic-Names ohne Type
TopicName tn1 = t1.createTopicName("Website der TU Ilmenau", null);

Um dies zu bewerkstelligen, wird als zweiter Parameter der Funktion einfach null übergeben. Dadurch erreichen Sie, dass ein Topic-Name ohne Scope angelegt wird. Sie können den Scope problemlos zu einem späteren Zeitpunkt zuweisen, da das Topic-Name-Objekt direkt Funktionen des Scoped-Objects zur Verfügung stellt. Das Beispiel skizziert kurz die Vorgehensweise:

// Topic-Name ohne Scope erstellen
TopicName tn1 = t1.createTopicName("Website der TU Ilmenau", null);

// Scope nachträglich zuweisen
tn1.addScopingTopic(german);

Das nächste Beispiel demonstriert nun, wie Sie direkt beim Erstellen des Topic-Names einen oder mehrere Scopes zuweisen können. Bitte vergissen Sie nicht, dass Scopes nichts anderes als Topics sind. Die Funktion createTopicName erwarten als Parameter eine Menge von Topics die als Scope genutzt werden sollen. Dazu wird im folgenden Beispiel zunächst eine Collection mit zwei Topics erstellt, die beim Erzeugen eines neuen Topic-Names als Scope verwendet werden.

Das Beispiel zeigt die Erstellung eines Topic-Names mit Scope:

// Topic für die Sprache deutsch
Topic german = tm.createTopic();

// Topic für das Jahr 2008
Topic year2008 = tm.createTopic();

// Beide Topics als Scope hinzufügen
Collection scopes = new Collection();
scopes.add(german);
scopes.add(year2008);

// Erstellung des Namens mit mehrere Scopes
TopicName tn1 = t1.createTopicName("Website der TU Ilmenau", scopes);

In diesem Bespiel weisen Sie dem Namen mit dem Wert “Website der TU Ilmenau” zwei Topics als Scope zu. In diesem Fall z.B. einmal eine Topic die die Sprache (german) angibt und zum anderen eine Topic die das Jahr (year2008) bestimmt.

Wie Sie mit den eigentlichen Werten des Topic-Name, dem Topic-Name-Value, umgehen, erfahren Sie in den nächsten Abschnitten.

Leave a Reply