Interface RepositorySystemLifecycle

All Known Implementing Classes:
DefaultRepositorySystemLifecycle

public interface RepositorySystemLifecycle
Lifecycle managing component for repository system.
Since:
1.9.0
Restriction:
This interface is not intended to be extended by clients.
Restriction:
This interface is not intended to be implemented by clients.
Provisional:
This type is provisional and can be changed, moved or removed without prior notice.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addOnSessionEndedHandle(org.eclipse.aether.RepositorySystemSession.CloseableSession session, Runnable handler)
    Registers an "on session end" handler.
    void
    Registers an "on repository system end" handler.
    void
    sessionEnded(org.eclipse.aether.RepositorySystemSession.CloseableSession session)
    Signals that passed in session was ended, it will not be used anymore.
    void
    sessionStarted(org.eclipse.aether.RepositorySystemSession.CloseableSession session)
    Registers the session for lifecycle tracking: it marks that the passed in session instance is about to start.
    void
    Marks the repository system as ended (shut down): all "on close" handlers will be invoked.
  • Method Details

    • systemEnded

      void systemEnded()
      Marks the repository system as ended (shut down): all "on close" handlers will be invoked. This method may be invoked multiple times, only once will execute, subsequent calls will be no-op.
    • addOnSystemEndedHandler

      Registers an "on repository system end" handler.

      Throws if repository system is already shut down.

    • sessionStarted

      void sessionStarted(org.eclipse.aether.RepositorySystemSession.CloseableSession session)
      Registers the session for lifecycle tracking: it marks that the passed in session instance is about to start.

      Same session instance can be started only once.

      Since:
      2.0.0
    • sessionEnded

      void sessionEnded(org.eclipse.aether.RepositorySystemSession.CloseableSession session)
      Signals that passed in session was ended, it will not be used anymore. Repository system will invoke the registered handlers for this session, if any. This method throws if the passed in session instance was not passed to method sessionStarted(CloseableSession) beforehand.

      Same session instance can be ended only once.

      Since:
      2.0.0
    • addOnSessionEndedHandle

      void addOnSessionEndedHandle(org.eclipse.aether.RepositorySystemSession.CloseableSession session, Runnable handler)
      Registers an "on session end" handler.

      Throws if session was not passed to sessionStarted(CloseableSession) beforehand.

      Since:
      2.0.0