[oslc-core] Creating multiple resources in one POST?
Arthur Ryman
ryman at ca.ibm.com
Mon Oct 17 23:04:49 EDT 2011
Andy,
There are also simple command line tools that can easily POST files - curl
and wget. These can be scripted.
Regards,
___________________________________________________________________________
Arthur Ryman
DE, PPM & Reporting Chief Architect
IBM Software, Rational
Toronto Lab | +1-905-413-3077 (office) | +1-416-939-5063 (mobile)
From:
Andrew J Berner/Dallas/IBM at IBMUS
To:
Arthur Ryman <ryman at ca.ibm.com>
Cc:
John Arwe/Poughkeepsie/IBM at IBMUS, oslc-core at open-services.net
Date:
10/17/2011 01:12 AM
Subject:
Re: [oslc-core] Creating multiple resources in one POST?
Arthur Ryman said: I am not a fan of multi-create since I don't see
what's wrong with the
client just doing multiple POSTs. (then, and I appreciate this,
continued to explain how it might be done).
Let me explain why I suggested this, when it's obvious that the "client"
could just do multiple POSTs. And while potentially an issue, it's not
the performance of the network traffic I'm concerned about...
One of the advantages of the use of HTTP based technology for the api is
that a lot can be done through a browser, especially with plugins that
allow you to POST with headers etc. A lot of us (most of us? all of us?)
make use of this to test out the api's before we write code---just do the
GETs, POSTs and PUTs through a browser, copying and pasting the right
URL's that through code we would get through RDF parsing.
But this actually can be a viable technique for some quick integrations.
If the end user can get at the needed resources (maybe through GETs from
another tool or a dedicated export), then the end user can also do the
POST. So imagine (and I have in my pocket a good example that's not
public info yet if anyone wants to communicate privately) a tool that
could generate a fairly large set of resources that would be good to POST
to another tool through OSLC. The first tool could generate a set of
RDF/XML files in the format the other tool expects. Maybe the vendor can
commit the resources to do that, or it could be through a field services
contract. Then the end user could use a browser plugin to GET the
services document from the receiving tool, choose the desired
creationFactory and POST the resources. If the POST would support
multiple resources, this is easy for the customer---have a "canned" POST
setup in the browser plugin, log into the actual tool (which gives the
browser plugin authorization!), and select the exported file and send the
POST command. This is very easy if there's one file for all the
resources. If it's one at a time, it's quite a bit more painful (the
degree of pain is linear in the number of resources!). Since it's "just
as easy" for the server to handle the multiple posts (well, with the
exceptions about error handling noted earlier of course!! nothing is
really easy!), this would help customers put tools together easily, which
is the point of OSLC. And the error handling is a small problem for a
server writer (compared to all the error handling you have to do anyway to
make sure the POST is valid), at the saving for multiple end users.
I'd be happy with this being a "should" or "may" in the spec rather than
"must" (perhaps with some standard error message if it's not supported, or
something in the services document, so that clients that are written in
code can tell) and the receiveing vendor can decide if its customers would
get value from it.
Andy Berner
Lead Architect, ISV Technical Enablement and Strategy
IBM Rational Business Development
972 561-6599
ajberner at us.ibm.com
Ready for IBM Rational software partner program -
http://www.ibm.com/isv/rational/readyfor.html
More information about the Oslc-Core
mailing list