Merge lp:~leonardr/lazr.restful/latest-version into lp:lazr.restful
Proposed by
Leonard Richardson
Status: | Merged |
---|---|
Approved by: | Brad Crittenden |
Approved revision: | not available |
Merged at revision: | not available |
Proposed branch: | lp:~leonardr/lazr.restful/latest-version |
Merge into: | lp:lazr.restful |
Diff against target: |
368 lines (+134/-26) 12 files modified
src/lazr/restful/NEWS.txt (+14/-0) src/lazr/restful/docs/absoluteurl.txt (+31/-0) src/lazr/restful/docs/webservice-marshallers.txt (+1/-0) src/lazr/restful/docs/webservice.txt (+1/-0) src/lazr/restful/example/base/root.py (+9/-1) src/lazr/restful/example/base/tests/hostedfile.txt (+1/-1) src/lazr/restful/example/base/tests/root.txt (+0/-3) src/lazr/restful/example/base/tests/service.txt (+35/-3) src/lazr/restful/interfaces/_rest.py (+14/-0) src/lazr/restful/publisher.py (+17/-9) src/lazr/restful/simple.py (+2/-1) src/lazr/restful/testing/webservice.py (+9/-8) |
To merge this branch: | bzr merge lp:~leonardr/lazr.restful/latest-version |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Brad Crittenden (community) | code | Approve | |
Review via email: mp+14791@code.launchpad.net |
To post a comment you must log in.
This is the first branch of my multi-version web service project. It introduces the "devel" or "trunk" web service version. (I'm not sure what the default name should be.) A client can request the "devel" version or the version name given in IWebServiceConf iguration. service_ version_ uri_prefix.
Future branches will allow multiple versions of the web service that can be drastically different. Currently there are only two versions of the web service, and they are exactly the same, except for the URIs.
The two pieces of code that have changed are the traversal code and the code that generates URLs. The traversal code stores the requested web service version in a "lazr.restful. version" annotation on the request object. The URL generation code grabs that annotation and uses it to decide what information to put in the URL. This means that test code that generates URLs without using the traversal code must put fake values in the "lazr.restful. version" annotation.