Zusätzliche Informationen zu Eigenschaften

Es gibt Eigenschaften, die für eine bestimmte Ressource spezifisch sind. Viele Eigenschaften sind jedoch allen Ressourcen gemeinsam. Ein Client kann die folgenden Informationen zu einer Ressource abrufen:

Obwohl diese Eigenschaften für alle Ressourcen definiert sind, können einige Ressourcen Nullwerte oder leere Werte bzw. eine Ausnahme PROPERTY_NOT_SUPPORTED_BY_SERVER für die Eigenschaften zurückgeben.

Alle Eigenschaften (mit Ausnahme der Position) können erst von einem Proxy zur Verfügung gestellt werden, nachdem sie explizit vom Server angefordert wurden.

Die Klasse Resource bietet generische Methoden für den Zugriff auf die von einem Proxy definierten Eigenschaftswerte, die für jede Eigenschaft das PropertyName-Objekt verwenden. Das WVCM definiert die Methoden Resource.getProperty(PropertyNameList.PropertyName) und Resource.setProperty(PropertyNameList.PropertyName, Object). Die Methode getProperty löst die Ausnahme PropertyException aus, wenn der Proxy keinen gültigen Wert für die vom PropertyName-Objekt definierte Eigenschaft enthält.

Darüber hinaus gibt es die Methode Resource.lookupProperty() zum Abrufen eines Eigenschaftswertes. Wenn der Eigenschaftswert definiert ist, gibt lookupProperty() dasselbe Objekt wie getProperty zurück. Ist der Eigenschaftswert nicht definiert, gibt lookupProperty() die Ausnahme zurück, die von der Methode getProperty ausgelöst wird.

Die Methoden setProperty, getProperty und lookupProperty prüfen nicht, ob der PropertyName von der Proxyklasse definiert ist. Für die Interaktion mit einem Ressourcentyp kann jeder Proxy verwendet werden. Derartige Interkationen schlagen nur fehl, wenn sie versuchen, Werte für Eigenschaften zu schreiben oder abzurufen, die nicht für die Zielressource des Proxys definiert sind. Die Fehler treten nur auf, wenn der API-Provider versucht, solche Eigenschaftswerte an die Ressource oder von der Ressource weiterzuleiten. Beachten Sie beim Konstruieren eines Proxys für eine gegebene Position, dass die Domäne für die Position mit der Domäne des Providers übereinstimmen muss, von dem der Proxy angefordert wird.

Zugriff auf Felder eines ClearQuest-Datensatzes

Die Klasse CqRecord.FieldName ist eine Unterklasse von PropertyName und wird für die Benennung der Ressourceneigenschaften verwendet, die schemadefinierte Felder eines ClearQuest-Datensatzes sind. Beachten Sie, dass der Typparameter wie bei PropertyName den Wertetyp des Feldes angibt.

CqFieldValue und CqHistoryFieldValue sind Erweiterungen von StpProperty und repräsentieren die Werte eines ClearQuest-Satzfeldes und -Protokollfeldes. Sie können Methoden der CqFieldValue-Interfaces nutzen, um mit Feldern von ClearQuest-Datensätzen zu arbeiten.
  • CqFieldValue ist die Darstellung für den Wert eines Satzfeldes als erweitertes Property-Objekt.
  • CqHistoryFieldValue enthält den Wert des Protokollfeldes eines ClearQuest-Datensatzes. Der Wert dieser Eigenschaft ist eine Sammlung von Zeichenfolgen, die jeweils ein einzelnes Ereignis während der Lebensdauer des Datensatzes repräsentieren.

Mit diesen für ClearQuest-Datensätze spezifischen Erweiterungen können Sie auf Felder eines Datensatzes zugreifen. Ein Beispiel finden Sie im Abschnitt Verschachtelte Eigenschaften.