Index: /applications/editors/josm/plugins/o5m/build.xml
===================================================================
--- /applications/editors/josm/plugins/o5m/build.xml	(revision 33242)
+++ /applications/editors/josm/plugins/o5m/build.xml	(revision 33243)
@@ -5,5 +5,5 @@
     <property name="commit.message" value="Commit message"/>
     <!-- enter the *lowest* JOSM version this plugin is currently compatible with -->
-    <property name="plugin.main.version" value="11626"/>
+    <property name="plugin.main.version" value="11919"/>
 
     <!-- Configure these properties (replace "..." accordingly).
Index: /applications/editors/josm/plugins/o5m/src/org/openstreetmap/josm/plugins/o5m/io/O5mReader.java
===================================================================
--- /applications/editors/josm/plugins/o5m/src/org/openstreetmap/josm/plugins/o5m/io/O5mReader.java	(revision 33242)
+++ /applications/editors/josm/plugins/o5m/src/org/openstreetmap/josm/plugins/o5m/io/O5mReader.java	(revision 33243)
@@ -25,4 +25,5 @@
 import org.openstreetmap.josm.data.osm.User;
 import org.openstreetmap.josm.data.osm.Way;
+import org.openstreetmap.josm.data.osm.DataSet.UploadPolicy;
 import org.openstreetmap.josm.gui.progress.NullProgressMonitor;
 import org.openstreetmap.josm.gui.progress.ProgressMonitor;
@@ -30,6 +31,4 @@
 import org.openstreetmap.josm.io.IllegalDataException;
 import org.openstreetmap.josm.tools.CheckParameterUtil;
-
-
 
 /**
@@ -132,5 +131,5 @@
                 readFile();
                 if (discourageUpload)
-                    ds.setUploadDiscouraged(true);
+                    ds.setUploadPolicy(UploadPolicy.DISCOURAGED);
             } catch (IOException e) {
                 e.printStackTrace();
@@ -716,18 +715,21 @@
         }
         CheckParameterUtil.ensureParameterNotNull(source, "source");
-
-        O5mReader reader = new O5mReader(source);
-        
+        return new O5mReader(source).doParseDataSet(source, progressMonitor);
+    }
+
+    @Override
+    protected DataSet doParseDataSet(InputStream source, ProgressMonitor progressMonitor)
+            throws IllegalDataException {
         try {
             progressMonitor.beginTask(tr("Prepare OSM data...", 2));
             progressMonitor.indeterminateSubTask(tr("Reading OSM data..."));
 
-            reader.parse();
+            parse();
             progressMonitor.worked(1);
 
             progressMonitor.indeterminateSubTask(tr("Preparing data set..."));
-            reader.prepareDataSet();
+            prepareDataSet();
             progressMonitor.worked(1);
-            return reader.getDataSet();
+            return getDataSet();
         } catch (IllegalDataException e) {
             throw e;
@@ -738,4 +740,3 @@
         }
     }
-
 }
