Commit graph

38 commits

Author SHA1 Message Date
Tom Hughes
2f3e23f6eb Move to version 2.3.2 of rails. 2009-06-04 08:08:24 +00:00
Tom Hughes
b38684e59e Add a global timeout that is applied to most API requests. 2009-05-20 22:18:36 +00:00
Matt Amos
3d0ca940d2 Using an around_handler for catching and rendering errors in most of the API controller methods. This simplifies the code and makes errors and error messages a bit more consistent. Also added a utility method for checking the HTTP method. 2009-05-20 17:39:59 +00:00
Tom Hughes
fe13e13d16 Arrays of object IDs are a bad idea. 2009-05-15 09:18:10 +00:00
Tom Hughes
fa13a11a94 Optimise retrieval of full relations. 2009-05-15 09:10:50 +00:00
Tom Hughes
bf31791f65 Add a changeset cache to stop us looking up the same changeset over
and over again when processing a map call.
2009-04-28 13:40:30 +00:00
Tom Hughes
4eafa04ff8 Reject uploads unless the user has made their edits pubic. 2009-04-16 21:50:20 +00:00
Tom Hughes
5449cf4adc Merge 14394:14533 from trunk. 2009-04-16 21:11:12 +00:00
Shaun McDonald
08bd1688ee Railsify the relation member model, type attribute, by putting it into class case, rather than lower case. Requires reload of postgres databases or manual change to the enum. Fixes the databrowser on postgres, however affects the rest of the codebase. 2009-04-15 14:49:21 +00:00
Tom Hughes
45dfd0f05f Fix spelling mistake. 2009-04-15 08:03:26 +00:00
Tom Hughes
09fdee5493 Add a "database readonly" state that allows all writes to the database
to be suppressed.
2009-04-14 14:27:30 +00:00
Shaun McDonald
8348493ccb Some improvements to the error messages that are returned by the api. 2008-11-25 18:59:35 +00:00
Shaun McDonald
0ff1214f86 Make the role in relations optional, with a test to make sure it is. Also start moving the errors reading the xml to exceptions, thus making it possible to give meaningful error messages, when bad xml is sent (More work is required on this including doing the same for nodes and ways). With the latest gems update it seems that the lib xml handling was broken, using the newer method. Adding the content type for the exceptions. 2008-11-24 18:55:24 +00:00
Matt Amos
e79fd07638 Made relations ordered. Added some tests for this. Otherwise interface is unchanged. 2008-11-10 15:41:05 +00:00
Matt Amos
498d695064 Added test for relations_for_node where the relation had been deleted. 2008-10-21 11:38:13 +00:00
Matt Amos
b56f57ec43 Fixed up delete methods on nodes, ways and relations to return the new version number and added some more tests. 2008-10-14 14:27:12 +00:00
Shaun McDonald
fb5f39f19a Creating consistency check for creation of nodes, way and relations. Moving some creation code from the controller to the model, and adding error handling on create errors. 2008-10-13 15:39:21 +00:00
Matt Amos
127bb4523e Fixed problems with the relations functional tests. 2008-10-13 15:23:48 +00:00
Shaun McDonald
3d24694add moving the conistency checks for updates and deletes to library, hopefully got the updates and deletes working now. 2008-10-09 16:22:05 +00:00
Shaun McDonald
2b7a40069f adding the controller code to be able to get a specific version of a node, way or relation. Add some node checks on update. Some code indentation cleanup. 2008-10-08 18:03:41 +00:00
Shaun McDonald
e1b205913c Fix the data config, so that the development database is not the same as the test database. Make a good stab at getting the creates and updates for relations working, adding some new error exceptions. Some code indentation cleanup. 2008-10-08 15:42:42 +00:00
Gabriel Ebner
7151fa05e4 api06: simplify exception handling and add exception handling to the diff
upload.
2008-05-13 12:15:06 +00:00
Gabriel Ebner
86b4d1bc2c api06: Move version-checking into the models, raising an exception on mismatch
(still not implemented for delete requests though.)
2008-05-12 21:05:11 +00:00
Christopher Schmidt
618908319c prevent update of any object without providing the correct/current
version as part of the XML. This affects update-only at this time: 
DELETE doesn't work the same way because we don't provide the data as 
part of a DELETE
2008-05-11 21:49:33 +00:00
Christopher Schmidt
7a216c0ce6 Make edits return version numbers as plain text strings 2008-05-11 19:47:19 +00:00
Gabriel Ebner
6ebb7045fe api06: Fix diff uploading (still doesn't give a useful response):
Modification and deletion works fine now.  Rollback also works apparently.
Just auto increment doesn't get reset.
2008-05-04 15:16:58 +00:00
Gabriel Ebner
3d6e1c67fb api06: Preliminary support for diff uploading. This will not return anything
useful and the code will need some heavy refactoring.
2008-05-04 13:52:43 +00:00
Gabriel Ebner
6ae23bed90 split_node_tags:
- Use InnoDB.
  - Put version column on the current_* tables.
  - Use transactions (untested).
2008-05-03 16:27:49 +00:00
Steve Coast
dbf4e32671 add last-modified header to relation read 2008-01-21 17:42:57 +00:00
Tom Hughes
f09b16cade When asked for ways which use a node, or relations which use some given
object, return 200 OK with an empty document if not matches are found
rather than 400 Bad Request (for ways) or 404 Not Found (for relations).
2007-11-24 14:47:50 +00:00
Tom Hughes
e4df9a8219 Allow objects to be resurrected. 2007-10-31 15:52:36 +00:00
Tom Hughes
0fd29dc003 Render an empty text string instead of nothing (which actually generate a
single space character) for 410 and 412 responses as there is a bug in
lighttpd (http://trac.lighttpd.net/trac/ticket/1055) that prevents it
passing on the response body for these codes, leading to the client blocking
waiting for the data until it times out. Closes #537.
2007-10-17 23:22:51 +00:00
Tom Hughes
7b190a18f1 Pass a list of visible nodes when generating XML for a way. Closes #553. 2007-10-08 16:54:34 +00:00
Frederik Ramm
25ad9dd38c fix for preconditions 2007-09-28 20:47:01 +00:00
Gabriel Ebner
cfbdd3f7e1 Merge rails_port as of r4613 & fix tests. 2007-09-20 14:37:29 +00:00
Frederik Ramm
6d44c78407 fixed "full" and "relationships_for_object" modes 2007-09-13 11:08:15 +00:00
Frederik Ramm
603af36a83 some changes suggested by SteveC / yet untested 2007-08-29 23:08:13 +00:00
Frederik Ramm
78b440ffc1 preliminary commit 0.5 API with relations / untested after entity-relation rename, some changes still in queue 2007-08-29 22:00:26 +00:00