public class OsmServerWriter extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
private OsmApi |
api |
private boolean |
canceled |
private static int |
MSECS_PER_MINUTE |
private static int |
MSECS_PER_SECOND |
private static java.util.List<OsmServerWritePostprocessor> |
postprocessors |
private java.util.Collection<IPrimitive> |
processed
This list contains all successfully processed objects.
|
private static int |
SECONDS_PER_MINUTE |
(package private) long |
uploadStartTime |
Constructor and Description |
---|
OsmServerWriter() |
Modifier and Type | Method and Description |
---|---|
void |
cancel() |
void |
executePostprocessors(ProgressMonitor pm)
Calls all registered upload postprocessors.
|
java.util.Collection<IPrimitive> |
getProcessedPrimitives()
Replies the collection of successfully processed primitives
|
(package private) void |
makeApiRequest(IPrimitive osm,
ProgressMonitor progressMonitor) |
static void |
registerPostprocessor(OsmServerWritePostprocessor pp) |
java.lang.String |
timeLeft(int progress,
int list_size) |
static void |
unregisterPostprocessor(OsmServerWritePostprocessor pp) |
protected void |
uploadChangesAsDiffUpload(java.util.Collection<? extends IPrimitive> primitives,
ProgressMonitor progressMonitor)
Upload all changes in one diff upload
|
protected void |
uploadChangesInChunks(java.util.Collection<? extends IPrimitive> primitives,
ProgressMonitor progressMonitor,
int chunkSize)
Upload all changes in one diff upload
|
protected void |
uploadChangesIndividually(java.util.Collection<? extends IPrimitive> primitives,
ProgressMonitor progressMonitor)
Uploads the changes individually.
|
void |
uploadOsm(UploadStrategySpecification strategy,
java.util.Collection<? extends IPrimitive> primitives,
Changeset changeset,
ProgressMonitor monitor)
Send the dataset to the server.
|
private java.util.Collection<IPrimitive> processed
private static java.util.List<OsmServerWritePostprocessor> postprocessors
private boolean canceled
private static final int MSECS_PER_SECOND
private static final int SECONDS_PER_MINUTE
private static final int MSECS_PER_MINUTE
long uploadStartTime
public OsmServerWriter()
public static void registerPostprocessor(OsmServerWritePostprocessor pp)
public static void unregisterPostprocessor(OsmServerWritePostprocessor pp)
public java.lang.String timeLeft(int progress, int list_size)
protected void uploadChangesIndividually(java.util.Collection<? extends IPrimitive> primitives, ProgressMonitor progressMonitor) throws OsmTransferException
primitives
- the collection of primitives to uploadprogressMonitor
- the progress monitorOsmTransferException
- thrown if an exception occursprotected void uploadChangesAsDiffUpload(java.util.Collection<? extends IPrimitive> primitives, ProgressMonitor progressMonitor) throws OsmTransferException
primitives
- the collection of primitives to uploadprogressMonitor
- the progress monitorOsmTransferException
- thrown if an exception occursprotected void uploadChangesInChunks(java.util.Collection<? extends IPrimitive> primitives, ProgressMonitor progressMonitor, int chunkSize) throws OsmTransferException, java.lang.IllegalArgumentException
primitives
- the collection of primitives to uploadprogressMonitor
- the progress monitorchunkSize
- the size of the individual upload chunks. > 0 required.java.lang.IllegalArgumentException
- thrown if chunkSize <= 0OsmTransferException
- thrown if an exception occurspublic void uploadOsm(UploadStrategySpecification strategy, java.util.Collection<? extends IPrimitive> 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.INSTANCE
java.lang.IllegalArgumentException
- thrown if changeset is nulljava.lang.IllegalArgumentException
- thrown if strategy is nullOsmTransferException
- thrown if something goes wrongvoid makeApiRequest(IPrimitive osm, ProgressMonitor progressMonitor) throws OsmTransferException
OsmTransferException
public void cancel()
public java.util.Collection<IPrimitive> getProcessedPrimitives()
public void executePostprocessors(ProgressMonitor pm)