WVCM Feedback 오브젝트는 서버 상호작용 중에 서버에서 추가 피드백을 요청하는 구조입니다. PropertyRequest는 피드백의 하나의 인스턴스입니다. DetailedFeedback은 하나의 서버 상호작용에 포함된 여러 자원에서 특정 특성을 검색할 수 있는 다른 인스턴스입니다.
final ResourceList<Resource> modified = provider.resourceList();
// Write properties from the current dialog tab
// and fetch the properties for the "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);
// Update display to reflect side-effects of the operation
RefreshDisplay(modified);
if (isEmpty(record.updatedPropertyNameList())) {
// All fields were written, so proceed to next tab...
record = newTab;
// setup the new tab...
} else {
// Report failures and stay on the old tab
}