回應物件

WVCM 回應物件是一個可在伺服器互動期間,從伺服器要求其他回應的結構。

PropertyRequest 是一個「回應」的實例。DetailedFeedback 是另一個實例,其允許在一個伺服器互動中,從多個資源擷取特定的內容。

幾乎所有執行方法都接受回應引數。當作業執行時,DetailedFeedback 物件會是已傳遞的資源虛擬物件,其中含有 DetailedFeedback 物件所要求的內容值。例如:
final ResourceList<Resource> modified = provider.resourceList();
    // 從現行對話標籤寫入內容
    // 並提取 "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);

    // 更新顯示畫面以反映該作業的副作用
    RefreshDisplay(modified);
    if (isEmpty(record.updatedPropertyNameList())) {
        // 已寫入所有欄位,因此繼續進行下一個標籤...
        record = newTab;
        // 設定新的標籤...
    } else {
        // 報告失敗並停留在舊的標籤
    }

意見