Package org.apache.maven.cli.transfer
Class SimplexTransferListener
- java.lang.Object
-
- org.eclipse.aether.transfer.AbstractTransferListener
-
- org.apache.maven.cli.transfer.SimplexTransferListener
-
- All Implemented Interfaces:
org.eclipse.aether.transfer.TransferListener
public final class SimplexTransferListener extends org.eclipse.aether.transfer.AbstractTransferListenerATransferListenerimplementation that wraps another delegateTransferListenerbut makes it run on single thread, keeping the listener logic simple. This listener also blocks on last transfer event to allow output to perform possible cleanup. It spawns a daemon thread to consume queued events that may fall in even concurrently.- Since:
- 3.9.7
-
-
Constructor Summary
Constructors Constructor Description SimplexTransferListener(org.eclipse.aether.transfer.TransferListener delegate)Constructor that makes passed in delegate run on single thread, and will block on last event.SimplexTransferListener(org.eclipse.aether.transfer.TransferListener delegate, int queueSize, int batchMaxSize, boolean blockOnLastEvent)Constructor that may alter behaviour of this listener.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description org.eclipse.aether.transfer.TransferListenergetDelegate()voidtransferCorrupted(org.eclipse.aether.transfer.TransferEvent event)voidtransferFailed(org.eclipse.aether.transfer.TransferEvent event)voidtransferInitiated(org.eclipse.aether.transfer.TransferEvent event)voidtransferProgressed(org.eclipse.aether.transfer.TransferEvent event)voidtransferStarted(org.eclipse.aether.transfer.TransferEvent event)voidtransferSucceeded(org.eclipse.aether.transfer.TransferEvent event)
-
-
-
Constructor Detail
-
SimplexTransferListener
public SimplexTransferListener(org.eclipse.aether.transfer.TransferListener delegate)
Constructor that makes passed in delegate run on single thread, and will block on last event.
-
SimplexTransferListener
public SimplexTransferListener(org.eclipse.aether.transfer.TransferListener delegate, int queueSize, int batchMaxSize, boolean blockOnLastEvent)Constructor that may alter behaviour of this listener.- Parameters:
delegate- The delegate that should run on single thread.queueSize- The event queue size (default1024).batchMaxSize- The maximum batch size delegate should receive (default500).blockOnLastEvent- Should this listener block on last transfer end (completed or corrupted) block? (defaulttrue).
-
-
Method Detail
-
getDelegate
public org.eclipse.aether.transfer.TransferListener getDelegate()
-
transferInitiated
public void transferInitiated(org.eclipse.aether.transfer.TransferEvent event)
- Specified by:
transferInitiatedin interfaceorg.eclipse.aether.transfer.TransferListener- Overrides:
transferInitiatedin classorg.eclipse.aether.transfer.AbstractTransferListener
-
transferStarted
public void transferStarted(org.eclipse.aether.transfer.TransferEvent event) throws org.eclipse.aether.transfer.TransferCancelledException- Specified by:
transferStartedin interfaceorg.eclipse.aether.transfer.TransferListener- Overrides:
transferStartedin classorg.eclipse.aether.transfer.AbstractTransferListener- Throws:
org.eclipse.aether.transfer.TransferCancelledException
-
transferProgressed
public void transferProgressed(org.eclipse.aether.transfer.TransferEvent event) throws org.eclipse.aether.transfer.TransferCancelledException- Specified by:
transferProgressedin interfaceorg.eclipse.aether.transfer.TransferListener- Overrides:
transferProgressedin classorg.eclipse.aether.transfer.AbstractTransferListener- Throws:
org.eclipse.aether.transfer.TransferCancelledException
-
transferCorrupted
public void transferCorrupted(org.eclipse.aether.transfer.TransferEvent event) throws org.eclipse.aether.transfer.TransferCancelledException- Specified by:
transferCorruptedin interfaceorg.eclipse.aether.transfer.TransferListener- Overrides:
transferCorruptedin classorg.eclipse.aether.transfer.AbstractTransferListener- Throws:
org.eclipse.aether.transfer.TransferCancelledException
-
transferSucceeded
public void transferSucceeded(org.eclipse.aether.transfer.TransferEvent event)
- Specified by:
transferSucceededin interfaceorg.eclipse.aether.transfer.TransferListener- Overrides:
transferSucceededin classorg.eclipse.aether.transfer.AbstractTransferListener
-
transferFailed
public void transferFailed(org.eclipse.aether.transfer.TransferEvent event)
- Specified by:
transferFailedin interfaceorg.eclipse.aether.transfer.TransferListener- Overrides:
transferFailedin classorg.eclipse.aether.transfer.AbstractTransferListener
-
-