org.jgroups.Lifecycle Maven / Gradle / Ivy
Go to download
This artifact provides a single jar that contains all classes required to use remote EJB and JMS, including
all dependencies. It is intended for use by those not using maven, maven users should just import the EJB and
JMS BOM's instead (shaded JAR's cause lots of problems with maven, as it is very easy to inadvertently end up
with different versions on classes on the class path).
package org.jgroups;
/**
* Interface that defines lifecycle methods. Used by protocols and components
* @author Bela Ban
* @since 5.2
*/
public interface Lifecycle {
/**
* Called after an instance has been created and before it is started.
* @exception Exception Thrown if the instance cannot be initialized successfully.
*/
default void init() throws Exception {}
/**
* This method is called after an instance has been initialized. Starts work.
* @exception Exception Thrown if the instance cannot be started successfully.
*/
default void start() throws Exception {}
/**
* Called before an instance is stopped; stops work.
*/
default void stop() {}
/**
* Called after an instance has been stopped. Cleans up resources
*/
default void destroy() {}
}