Um objeto Feedback do WVCM é uma estrutura para solicitar feedback adicional do servidor durante uma interação do servidor. Um PropertyRequest é uma instância de Feedback. DetailedFeedback é uma outra instância que permite a recuperação de propriedades específicas de vários recursos em uma única interação do servidor.
final ResourceList<Resource> modified = provider.resourceList();
// Gravar propriedades na guia do diálogo atual
// e buscar as propriedades para o "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);
// Atualizar exibição para refletir efeitos colaterais da operação
RefreshDisplay(modified);
if (isEmpty(record.updatedPropertyNameList())) {
// Todos os campos foram gravados, portanto prossiga com a próxima guia...
record = newTab;
// configurar a nova guia...
} else {
// Relatar falhas e permanecer na guia antiga
}