Feedback-Objekte

Ein WVCM-Feedback-Objekt ist eine Struktur zum Anfordern zusätzlicher Rückmeldungen vom Server während einer Serverinteraktion.

Eine Instanz von Feedback ist PropertyRequest. DetailedFeedback ist eine weitere Instanz, die das Abrufen bestimmter Eigenschaften von mehreren Ressourcen mit Hilfe einer Serverinteraktion ermöglicht.

Fast alle do-Methoden akzeptieren ein Feedback-Argument. Während der Ausführung der Operation werden Ressourcen-Proxys an das DetailedFeedback-Objekt übergeben. Diese Proxys enthalten die vom DetailedFeedback-Objekt angeforderten Eigenschaftswerte. Beispiel:
final ResourceList<Resource> modified = provider.resourceList();
    // Schreiben der Eigenschaften vom aktuellen Dialogregister und
    // Abrufen der Eigenschaften für das Register "newTab"
    Feedback request = new DetailedFeedback() {
        public PropertyRequest getPropertyRequestForModified()
            {
                return DISPLAY_PROPERTIES_FOR_SIDE_EFFECTS;
            }
        public PropertyRequest getPropertyRequestForResult()
            {
                return computePropertiesNeededForTab(newTab);
            }
            public boolean isAbortRequested()
            {
                return false;
            }
            public void notifyActive(String message)
            {
            }
            public void notifyIsModified(Resource resource)
            {
                modified.add(record);
            }
            public void notifyPercentComplete(int percentComplete)
            {
            }
};
    CqRecord newTab = (CqRecord)record.doWriteProperties(request);

    // Aktualisierung der Anzeige, um Nebeneffekte der Operation widerzuspiegeln
    RefreshDisplay(modified);
    if (isEmpty(record.updatedPropertyNameList())) {
        // Alle Felder wurden geschrieben. Weiter mit nächstem Register...
        record = newTab;
        // Einrichten des neuen Registers...
    } else {
        // Fehler melden und auf altem Register bleiben
    }

Feedback