Hi all,
I have been working through the feedback gathered for GSIP 73.
http://geoserver.org/display/GEOS/GSIP+73±+Workspace+Local+Styles+and+Layer+Groups
From the email exchange earlier this week this the major feedback I mined out of it:
- rest api needs to be updated
- better ui for local workspace stuff, ideally a single global workspace drop down
- more care taken when updating the ResourceAccessManager interface
- ResourceAccessManager might not be the best place for simply filtering styles and layer groups
(1) has been completed. Will update patch shortly.
(2) I would like to push off as a future improvement. I thought about it and I think it represents quite a bit of work, but i do agree it would be a much better workflow.
(3) Added an abstract base class for the ResourceAccessManager that extensions can extend from, protecting them from future api changes
(4) This one i am torn on and allow me to explain. I agree that the ResourceAccessManager should really be used strictly for security, but on the other hand we currently do use it for filtering components of the catalog. And the CatalogFilter interface already supports some catalog components so why not others.
As previously mentioned for this proposal I had to add a second catalog wrapper called LocalWorkspaceCatalog, to do some special handling around local workspace stuff. I could move all the local workspace filtering stuff there and away from the CatalogFilter interface. But then we would be duplicating a lot of the stuff done in SecureCatalog to do filtering of the various catalog contents. This is actually more inline with how the local workspace stuff was originally implemented but then it was decided that using the CatalogFilter interface would be a good idea for that.
To decide which way to go I would like to ask a secondary question. Does having access limits for styles and layer groups make sense, in any context, not just a workspace local context? If it doesn’t then i can remove those interface and move everything over to the LocalWorkspaceCatalog wrapper.
However if those interfaces do make sense then the fact that we use them for this filtering is really just an implementation detail, and we could potentally leave things as is now and move them over at a later time.
Thanks folks.
-Justin
–
Justin Deoliveira
OpenGeo - http://opengeo.org
Enterprise support for open source geospatial.