@Override public Element export(ExportSupport support) throws IOException { Element layerElem = support.createElement("layer"); layerElem.setAttribute("type", "imagery"); layerElem.setAttribute("version", "0.1"); ImageryPreferenceEntry e = new ImageryPreferenceEntry(layer.getInfo()); Map<String, String> data = Preferences.serializeStruct(e, ImageryPreferenceEntry.class); for (Map.Entry<String, String> entry : data.entrySet()) { Element attrElem = support.createElement(entry.getKey()); layerElem.appendChild(attrElem); attrElem.appendChild(support.createTextNode(entry.getValue())); } return layerElem; }
@Override public Element export(ExportSupport support) throws IOException { Element layerEl = support.createElement("layer"); layerEl.setAttribute("type", "osm-data"); layerEl.setAttribute("version", "0.1"); Element file = support.createElement("file"); layerEl.appendChild(file); if (requiresZip()) { String zipPath = "layers/" + String.format("%02d", support.getLayerIndex()) + "/data.osm"; file.appendChild(support.createTextNode(zipPath)); addDataFile(support.getOutputStreamZip(zipPath)); } else { URI uri = layer.getAssociatedFile().toURI(); URL url = null; try { url = uri.toURL(); } catch (MalformedURLException e) { throw new IOException(e); } file.appendChild(support.createTextNode(url.toString())); } return layerEl; }