]> git.openstreetmap.org Git - rails.git/blobdiff - lib/osm.rb
Make the API reject changes to closed notes
[rails.git] / lib / osm.rb
index 8902e6c9e25f7ecd97f50ca6c782b1ad3baf6f66..393011dac563a4e205b7511c6f4a62e7f2c2f769 100644 (file)
@@ -281,6 +281,23 @@ module OSM
     end
   end
 
+  # Raised when the note provided is already closed
+  class APINoteAlreadyClosedError < APIError
+    def initialize(note)
+      @note = note
+    end
+
+    attr_reader :note
+
+    def status
+      :conflict
+    end
+
+    def to_s
+      "The note #{@note.id} was closed at #{@note.closed_at}"
+    end
+  end
+
   # Helper methods for going to/from mercator and lat/lng.
   class Mercator
     include Math
@@ -460,6 +477,9 @@ module OSM
       root = XML::Node.new 'osm'
       root['version'] = API_VERSION.to_s
       root['generator'] = GENERATOR
+      root['copyright'] = COPYRIGHT_OWNER
+      root['attribution'] = ATTRIBUTION_URL
+      root['license'] =  LICENSE_URL
       doc.root = root
       return doc
     end