From: Gabriel R. <gr...@op...> - 2011-12-29 23:24:54
|
Hey all, got a question about that catalog event handling. Modification events seem to be deferred to the CatalogFacade, which in turns sends a pre-modified event with the currently saved object plus the modified properties, and after persisting the changes issues a post-modified event with the final object. So far so good. But when it comes to issuing a CatalogAddEvent, the one in charge is CatalogImpl, not the CatalogFacade. Still all CatalogFacade.add( T ) also have return type T, but the return value gets lost, since CatalogImpl issues the CatalogAddEvent with its argument object, not with the one returned by the CatalogFacade. For instance: CatalogImpl{ public void add(LayerInfo info){ ... facade.add(info); added(info); } } instead of public void add(LayerInfo info){ ... LayerInfo added = facade.add(info); added(added); } This happens to all add methods except add(LayerGroupInfo) which does added(facade.add(layerGroup)) I'm under the impression all add methods should issue the add event with the value returned by the facade, but fear to be missing something. Opinions? Cheers, Gabriel -- Gabriel Roldan OpenGeo - http://opengeo.org Expert service straight from the developers. |