+1. Looking pretty good. Observations:

- Instead of metadata, it would be (arguably) more RESTful to support a 
HEAD operation. You have a header for Last-Modified, could add an 
X-Parent and X-Type, and name could be deduced from the URL. Or is the 
need for custom HTTP headers a red flag? (Not to mention the problems 
passing these through the stack.) Andrea raised the issue of HEAD and I 
do not recall seeing a response. Please state why you are not using 
HEAD. The core need I see is for directory traversal. I dislike parsing 
URLs to find a parent resource, but would that be more RESTful? Is the 
use of a metadata parameter a REST best practice?

- I am not sure that "operation" is the right word to GET "metadata", 
but I do not have an alternative. Metadata is not a format. "aspect", 
perhaps? Do we have anything similar in the existing API?

- Are resources strictly a tree? Can you have loops? Unix filesystems 
support this with hard links, in which there can be multiple paths for a 
single resource, all canonical. What does this mean for recursive 
deletion? It might be worth documenting your assumptions.

- Should this API support parameters from the main REST API like 
"recurse" and "quietOnNotFound"? There may be more. I am not saying that 
I like these parameters; I think this GSIP is a bit more RESTful. I just 
thought that users might expect them. Please skim the existing REST API 
as a final review with consistency in mind.

- Should these be lowercase? Uppercase looks out of place:
"<type> UNDEFINED | RESOURCE | DIRECTORY </type>"

- Document that POST returns a 405.

Kind regards,
Ben.

On 27/01/16 10:51, Jody Garnett wrote:
> Here is the proposal from Niels:
> https://github.com/geoserver/geoserver/wiki/GSIP-137

-- 
Ben Caradoc-Davies <[email protected]>
Director
Transient Software Limited <http://transient.nz/>
New Zealand

------------------------------------------------------------------------------
Site24x7 APM Insight: Get Deep Visibility into Application Performance
APM + Mobile APM + RUM: Monitor 3 App instances at just $35/Month
Monitor end-to-end web transactions and take corrective actions now
Troubleshoot faster and improve end-user experience. Signup Now!
http://pubads.g.doubleclick.net/gampad/clk?id=267308311&iu=/4140
_______________________________________________
Geoserver-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geoserver-devel

Reply via email to