/** * Creates a new instance. * * @param bufferCapacity * The size of the buffer to use. */ public ChangeBuffer(int bufferCapacity) { buffer = new DataPostbox<ChangeContainer>(bufferCapacity); }
/** * {@inheritDoc} */ @Override public void close() { postbox.close(); } }
/** * {@inheritDoc} */ public void complete() { buffer.complete(); }
/** * Sends all input data to the sink. */ public void run() { try { sink.initialize(buffer.outputInitialize()); while (buffer.hasNext()) { sink.process(buffer.getNext()); } sink.complete(); buffer.outputComplete(); } finally { sink.close(); buffer.outputRelease(); } } }
/** * {@inheritDoc} */ @Override public void process(EntityContainer entity) { postbox.put(entity); }
/** * {@inheritDoc} */ @Override public void initialize(Map<String, Object> metaData) { postbox.initialize(metaData); }
/** * Returns the next available object from the postbox. This should be * preceeded by a call to hasNext. * * @return The next available object. */ public T getNext() { if (hasNext()) { T result; result = outboundQueue.remove(); return result; } else { throw new OsmosisRuntimeException("No data is available, should call hasNext first."); } }
/** * Sends all input data to the sink. */ public void run() { try { changeSink.initialize(buffer.outputInitialize()); while (buffer.hasNext()) { changeSink.process(buffer.getNext()); } changeSink.complete(); buffer.outputComplete(); } finally { changeSink.close(); buffer.outputRelease(); } } }
/** * {@inheritDoc} */ public void process(ChangeContainer changeContainer) { buffer.put(changeContainer); }
/** * {@inheritDoc} */ @Override public void initialize(Map<String, Object> metaData) { postbox.initialize(metaData); }
/** * Returns the next available object from the postbox. This should be * preceeded by a call to hasNext. * * @return The next available object. */ public T getNext() { if (hasNext()) { T result; result = outboundQueue.remove(); return result; } else { throw new OsmosisRuntimeException("No data is available, should call hasNext first."); } }
/** * Sends all input data to the sink. */ public void run() { try { sink.initialize(buffer.outputInitialize()); while (buffer.hasNext()) { sink.process(buffer.getNext()); } sink.complete(); buffer.outputComplete(); } finally { sink.close(); buffer.outputRelease(); } } }
/** * Creates a new instance. * * @param bufferCapacity * The size of the buffer to use. */ public EntityBuffer(int bufferCapacity) { buffer = new DataPostbox<EntityContainer>(bufferCapacity); }
/** * {@inheritDoc} */ @Override public void process(ChangeContainer change) { postbox.put(change); }
/** * {@inheritDoc} */ @Override public void complete() { postbox.complete(); }
/** * {@inheritDoc} */ public void close() { buffer.close(); }
/** * {@inheritDoc} */ public void initialize(Map<String, Object> metaData) { buffer.initialize(metaData); }
/** * Sends all input data to the sink. */ public void run() { try { changeSink.initialize(buffer.outputInitialize()); while (buffer.hasNext()) { changeSink.process(buffer.getNext()); } changeSink.complete(); buffer.outputComplete(); } finally { changeSink.close(); buffer.outputRelease(); } } }