Estou usando o RequestFactory para recuperar uma lista de objetos do servidor. Agora, quero excluir a propriedade "descrição" (String) do objeto que pode conter um texto longo.
Existe alguma maneira de fazer isso em RequestFactory em Runtime?
É assim que eu recupero a lista
collectcontextProvider.get().getListObject().fire(
new Receiver<List<ObjectProxy>>() {
@Override
public void onSuccess (List<ObjectProxy> objectList) {
//display the list
}
@Override
public void onFailure(ServerFailure error) {
//Error
}
});
Eu uso o Hibernate
Respostas:
0 para resposta № 1Supondo que você deseja o campo de descrição em outrolocais do seu aplicativo, você desejará um proxy reduzido que não exponha essa propriedade e, claro, um método de serviço que retorne uma lista de tais proxies.
@ProxyFor(value=MyObject.class, locator=MyLocator.class)
interface MyObjectLiteProxy extends EntityProxy {
// all properties but "description"
}
@ProxyFor(value=MyObject.class, locator=MyLocator.class)
interface MyObjectProxy extend MyObjectLiteProxy {
String getDescription();
}
@Service(MyService.class)
interface CollectContext extends RequestContext {
Request<List<MyObjectLiteProxy>> getListObjectLite();
Request<List<MyObjectProxy>> getListObject();
}
Na verdade, você poderia ir mais longe e usar o mesmo MyService
implementação para 2 RequestContext
s:
@Service(MyService.class)
interface CollectLiteContext extends RequestContext {
Request<List<MyObjectLiteProxy>> getListObject();
}
@Service(MyService.class)
interface CollectContext extends RequestContext {
Request<List<MyObjectProxy>> getListObject();
}