Ermitteln aller Occurrences eines Topic

Jedem Topic innerhalb einer Topic-Map können mehrere Occurrences zugeordnet werden. Mit der Funktion getOccurrences des Topic-Interfaces erhält man die Menge aller Occurrences eines Topics. Das folgende Beispiel ermittelt zunächst alle Occurrences des Topic t1 und gibt dann entweder den Wert oder die Referenz der externen Ressource aus. Ist beides nicht gesetzt, wird eine Fehlermeldung ausgegeben.

// Alle Occurrences ermitteln
HashSet occurrences = t1.getOccurrences();

// Iterator ermitteln
Iterator occIt = occurrences.iterator();

// Iterieren über alle Occurrences
while (occIt.hasNext()) {
  // Aktuelle Occurrence merken
  Occurrence currentOcc = (Occurrence) occIt.next();

  // Ist der Wert gesetzt?
  if (currentOcc.getValue != null) {
    // Ausgabe des Wertes
    System.out.println("Wert: " + currentOcc.getValue());
  } else if (currentOcc.getResource() != null) {
    // Ermitteln der Referenz
    String ref = currentOcc.getResource().getReference();      

    // Ausgabe der Referenz
    System.out.println("Referenz: " + ref);
  } else {
    // Fehlermeldung ausgeben
    System.err.println("Weder Wert noch Ressource gesetzt.");
  }
}

Im letzten Abschnitt dieses Unterkapitels erfahren Sie nun, wie Sie eine Occurrence löschen können.

Leave a Reply