public class OsmServerWriter extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
private OsmApi |
api |
private boolean |
canceled |
private static java.util.List<OsmServerWritePostprocessor> |
postprocessors |
private java.util.Collection<OsmPrimitive> |
processed
This list contains all successfully processed objects.
|
private long |
uploadStartTime |
| Constructor and Description |
|---|
OsmServerWriter() |
| Modifier and Type | Method and Description |
|---|---|
void |
cancel()
Cancel operation.
|
void |
executePostprocessors(ProgressMonitor pm)
Calls all registered upload postprocessors.
|
java.util.Collection<OsmPrimitive> |
getProcessedPrimitives()
Replies the collection of successfully processed primitives
|
(package private) void |
makeApiRequest(OsmPrimitive osm,
ProgressMonitor progressMonitor) |
static void |
registerPostprocessor(OsmServerWritePostprocessor pp)
Registers a post-processor.
|
protected java.lang.String |
timeLeft(int progress,
int listSize) |
static void |
unregisterPostprocessor(OsmServerWritePostprocessor pp)
Unregisters a post-processor.
|
protected void |
uploadChangesAsDiffUpload(java.util.Collection<? extends OsmPrimitive> primitives,
ProgressMonitor progressMonitor)
Upload all changes in one diff upload
|
protected void |
uploadChangesInChunks(java.util.Collection<? extends OsmPrimitive> primitives,
ProgressMonitor progressMonitor,
int chunkSize)
Upload all changes in one diff upload
|
protected void |
uploadChangesIndividually(java.util.Collection<? extends OsmPrimitive> primitives,
ProgressMonitor progressMonitor)
Uploads the changes individually.
|
void |
uploadOsm(UploadStrategySpecification strategy,
java.util.Collection<? extends OsmPrimitive> primitives,
Changeset changeset,
ProgressMonitor monitor)
Send the dataset to the server.
|
private java.util.Collection<OsmPrimitive> processed
private static volatile java.util.List<OsmServerWritePostprocessor> postprocessors
private boolean canceled
private long uploadStartTime
public OsmServerWriter()
public static void registerPostprocessor(OsmServerWritePostprocessor pp)
pp - post-processor to registerpublic static void unregisterPostprocessor(OsmServerWritePostprocessor pp)
pp - post-processor to unregisterprotected java.lang.String timeLeft(int progress, int listSize)
protected void uploadChangesIndividually(java.util.Collection<? extends OsmPrimitive> primitives, ProgressMonitor progressMonitor) throws OsmTransferException
primitives - the collection of primitives to uploadprogressMonitor - the progress monitorOsmTransferException - if an exception occursprotected void uploadChangesAsDiffUpload(java.util.Collection<? extends OsmPrimitive> primitives, ProgressMonitor progressMonitor) throws OsmTransferException
primitives - the collection of primitives to uploadprogressMonitor - the progress monitorOsmTransferException - if an exception occursprotected void uploadChangesInChunks(java.util.Collection<? extends OsmPrimitive> primitives, ProgressMonitor progressMonitor, int chunkSize) throws OsmTransferException
primitives - the collection of primitives to uploadprogressMonitor - the progress monitorchunkSize - the size of the individual upload chunks. > 0 required.java.lang.IllegalArgumentException - if chunkSize <= 0OsmTransferException - if an exception occurspublic void uploadOsm(UploadStrategySpecification strategy, java.util.Collection<? extends OsmPrimitive> primitives, Changeset changeset, ProgressMonitor monitor) throws OsmTransferException
strategy - the upload strategy. Must not be null.primitives - list of objects to sendchangeset - the changeset the data is uploaded to. Must not be null.monitor - the progress monitor. If null, assumes NullProgressMonitor.INSTANCEjava.lang.IllegalArgumentException - if changeset is nulljava.lang.IllegalArgumentException - if strategy is nullOsmTransferException - if something goes wrongvoid makeApiRequest(OsmPrimitive osm, ProgressMonitor progressMonitor) throws OsmTransferException
OsmTransferExceptionpublic void cancel()
public java.util.Collection<OsmPrimitive> getProcessedPrimitives()
public void executePostprocessors(ProgressMonitor pm)
pm - progress monitor