[ https://issues.apache.org/jira/browse/CONNECTORS-98?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12907574#action_12907574 ]
Karl Wright commented on CONNECTORS-98: --------------------------------------- Also, I take issue with this: bq. PUT outputconnections/<connection_name> {"outputconnection":<output_connection_object>} The connection name is actually already part of the json object - and must be so, or you couldn't get a list of these things - so you'd be specifying it *twice* if you did it this way? That seems wrong to me. Indeed, the underlying way all of the objects in ACF are managed is as follows: create()->object (where you add your own key) load(key) -> object (which has embedded key) save(object) list() -> list of objects (each of which has embedded key) delete(key) Is there room in a strict interpretation of REST for this eminently sensible way of managing objects? > API should be "pure" RESTful with the API verb represented using the HTTP > GET/PUT/POST/DELETE methods > ----------------------------------------------------------------------------------------------------- > > Key: CONNECTORS-98 > URL: https://issues.apache.org/jira/browse/CONNECTORS-98 > Project: Apache Connectors Framework > Issue Type: Improvement > Components: API > Affects Versions: LCF Release 0.5 > Reporter: Jack Krupansky > Fix For: LCF Release 0.5 > > > (This was originally a comment on CONNECTORS-56 dated 7/16/2010.) > It has come to my attention that the API would be more "pure" RESTful if the > API verb was represented using the HTTP GET/PUT/POST/DELETE methods and the > input argument identifier represented in the context path. > So, GET outputconnection/get \{"connection_name":_<connection_name>_\} would > be GET outputconnections/<connection_name> > and GET outputconnection/delete \{"connection_name":_<connection_name>_\} > would be DELETE outputconnections/<connection_name> > and GET outputconnection/list would be GET outputconnections > and PUT outputconnection/save > \{"outputconnection":_<output_connection_object>_\} would be PUT > outputconnections/<connection_name> > \{"outputconnection":_<output_connection_object>_\} > What we have today is certainly workable, but just not as "pure" as some > might desire. It would be better to take care of this before the initial > release so that we never have to answer the question of why it wasn't done as > a "proper" RESTful API. > BTW, I did check to verify that an HttpServlet running under Jetty can > process the DELETE and PUT methods (using the doDelete and doPut method > overrides.) > Also, POST should be usable as an alternative to PUT for API calls that have > large volumes of data. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online.