/** * Sets the byte buffer holding the transferred bytes since the last event. * * @param buffer The byte buffer holding the transferred bytes since the last event, may be {@code null} if not * applicable to the event. * @param offset The starting point of valid bytes in the array. * @param length The number of valid bytes, must not be negative. * @return This event builder for chaining, never {@code null}. */ public Builder setDataBuffer( byte[] buffer, int offset, int length ) { return setDataBuffer( ( buffer != null ) ? ByteBuffer.wrap( buffer, offset, length ) : null ); }
/** * Sets the byte buffer holding the transferred bytes since the last event. * * @param buffer The byte buffer holding the transferred bytes since the last event, may be {@code null} if not * applicable to the event. * @param offset The starting point of valid bytes in the array. * @param length The number of valid bytes, must not be negative. * @return This event builder for chaining, never {@code null}. */ public Builder setDataBuffer( byte[] buffer, int offset, int length ) { return setDataBuffer( ( buffer != null ) ? ByteBuffer.wrap( buffer, offset, length ) : null ); }
@Override public void copyTo(OutputStream os) throws IOException { Closer closer = Closer.create(); try { InputStream is = closer.register(new FileInputStream(resource.getFile())); closer.register(os); int n = 0; final byte[] buffer = new byte[4 * 1024]; while (-1 != (n = is.read(buffer))) { os.write(buffer, 0, n); transferProgressed(transfer, newEvent(resource, null, RequestType.PUT, EventType.PROGRESSED).setTransferredBytes(bytesTransferred) .setDataBuffer(buffer, 0, n).build()); bytesTransferred = bytesTransferred + n; } } catch (TransferCancelledException e) { this.exception = e; } finally { closer.close(); } }
os.write(buffer, 0, n); if (emitProgressEvent) { transferProgressed(download, newEvent(transferResource, null, requestType, EventType.PROGRESSED).setTransferredBytes(n).setDataBuffer(buffer, 0, n).build());
public void progressed( ByteBuffer buffer ) throws IOException { total += buffer.remaining(); TransferEvent.Builder event = newEvent( transfer ); event.setDataBuffer( buffer ).setTransferredBytes( total ); try { catapult.fireProgressed( event ); } catch ( TransferCancelledException e ) { throw new IOException( "Transfer was cancelled: " + e.getMessage() ); } } } );
@Override public void transportProgressed( ByteBuffer data ) throws TransferCancelledException { if ( checksumCalculator != null ) { checksumCalculator.update( data ); } if ( listener != null ) { eventBuilder.resetType( EventType.PROGRESSED ).addTransferredBytes( data.remaining() ).setDataBuffer( data ); listener.transferProgressed( eventBuilder.build() ); } }
@Override public void transportProgressed( ByteBuffer data ) throws TransferCancelledException { if ( checksumCalculator != null ) { checksumCalculator.update( data ); } if ( listener != null ) { eventBuilder.resetType( EventType.PROGRESSED ).addTransferredBytes( data.remaining() ).setDataBuffer( data ); listener.transferProgressed( eventBuilder.build() ); } }
@Override public void transferProgress( TransferEvent event, byte[] buffer, int length ) { eventBuilder.addTransferredBytes( length ); try { delegate.transferProgressed( newEvent( EventType.PROGRESSED ).setDataBuffer( buffer, 0, length ).build() ); } catch ( TransferCancelledException e ) { throw new WagonCancelledException( e ); } }