[gnome-maps/wip/osm-edit: 34/47] osmApi: add XML serialization for OSM relations



commit 914a294e2ea974b2370e6ce96a0fccd5b711e1b3
Author: Marcus Lundblad <ml update uu se>
Date:   Tue Feb 17 23:10:57 2015 +0100

    osmApi: add XML serialization for OSM relations

 src/osmRelation.js |   24 +++++++++++++++++++++++-
 1 files changed, 23 insertions(+), 1 deletions(-)
---
diff --git a/src/osmRelation.js b/src/osmRelation.js
index eead4ba..dbc4cb6 100644
--- a/src/osmRelation.js
+++ b/src/osmRelation.js
@@ -35,6 +35,28 @@ const OSMRelation = new Lang.Class({
 
     get members() {
        return this._members;
+    },
+
+    toXML: function() {
+       let tags = this._serializeTagsToList();
+       let attrs = this._serializeAttributes();
+       let result = '<osm>\n' +
+           '\t<relation ' + attrs + '">\n';
+
+       for (var i = 0; i < this._members.length; i++) {
+           let member = this._members[i];
+           result += '\t\t<member type="' + member.type
+               + '" role="' + member.role + '" ref="' + member.ref
+               + '"/>\n';
+       }
+       
+       for (var i = 0; i < tags.length; i++) {
+           result += '\t\t' + tags[i] + '\n';
+       }
+
+       result += '\t</relation>\n' +
+           '</osm>';
+
+       return result;
     }
-    
 });


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]