Class SimplexTransferListener

  • All Implemented Interfaces:
    org.eclipse.aether.transfer.TransferListener

    public final class SimplexTransferListener
    extends org.eclipse.aether.transfer.AbstractTransferListener
    A TransferListener implementation that wraps another delegate TransferListener but 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.TransferListener getDelegate()  
      void transferCorrupted​(org.eclipse.aether.transfer.TransferEvent event)  
      void transferFailed​(org.eclipse.aether.transfer.TransferEvent event)  
      void transferInitiated​(org.eclipse.aether.transfer.TransferEvent event)  
      void transferProgressed​(org.eclipse.aether.transfer.TransferEvent event)  
      void transferStarted​(org.eclipse.aether.transfer.TransferEvent event)  
      void transferSucceeded​(org.eclipse.aether.transfer.TransferEvent event)  
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • 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 (default 1024).
        batchMaxSize - The maximum batch size delegate should receive (default 500).
        blockOnLastEvent - Should this listener block on last transfer end (completed or corrupted) block? (default true).
    • Method Detail

      • getDelegate

        public org.eclipse.aether.transfer.TransferListener getDelegate()
      • transferInitiated

        public void transferInitiated​(org.eclipse.aether.transfer.TransferEvent event)
        Specified by:
        transferInitiated in interface org.eclipse.aether.transfer.TransferListener
        Overrides:
        transferInitiated in class org.eclipse.aether.transfer.AbstractTransferListener
      • transferStarted

        public void transferStarted​(org.eclipse.aether.transfer.TransferEvent event)
                             throws org.eclipse.aether.transfer.TransferCancelledException
        Specified by:
        transferStarted in interface org.eclipse.aether.transfer.TransferListener
        Overrides:
        transferStarted in class org.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:
        transferProgressed in interface org.eclipse.aether.transfer.TransferListener
        Overrides:
        transferProgressed in class org.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:
        transferCorrupted in interface org.eclipse.aether.transfer.TransferListener
        Overrides:
        transferCorrupted in class org.eclipse.aether.transfer.AbstractTransferListener
        Throws:
        org.eclipse.aether.transfer.TransferCancelledException
      • transferSucceeded

        public void transferSucceeded​(org.eclipse.aether.transfer.TransferEvent event)
        Specified by:
        transferSucceeded in interface org.eclipse.aether.transfer.TransferListener
        Overrides:
        transferSucceeded in class org.eclipse.aether.transfer.AbstractTransferListener
      • transferFailed

        public void transferFailed​(org.eclipse.aether.transfer.TransferEvent event)
        Specified by:
        transferFailed in interface org.eclipse.aether.transfer.TransferListener
        Overrides:
        transferFailed in class org.eclipse.aether.transfer.AbstractTransferListener