1 /** 2 * EasyBeans 3 * Copyright (C) 2006 Bull S.A.S. 4 * Contact: easybeans@objectweb.org 5 * 6 * This library is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU Lesser General Public 8 * License as published by the Free Software Foundation; either 9 * version 2.1 of the License, or any later version. 10 * 11 * This library is distributed in the hope that it will be useful, 12 * but WITHOUT ANY WARRANTY; without even the implied warranty of 13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 14 * Lesser General Public License for more details. 15 * 16 * You should have received a copy of the GNU Lesser General Public 17 * License along with this library; if not, write to the Free Software 18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 19 * USA 20 * 21 * -------------------------------------------------------------------------- 22 * $Id: EZBComponent.java 1022 2006-08-04 11:02:28Z benoitf $ 23 * -------------------------------------------------------------------------- 24 */ 25 26 package org.objectweb.easybeans.component.api; 27 28 /** 29 * Defines the interface that a component needs to implement. 30 * @author Florent Benoit 31 */ 32 public interface EZBComponent { 33 34 /** 35 * Init method.<br/> 36 * This method is called before the start method. 37 * @throws EZBComponentException if the initialization has failed. 38 */ 39 void init() throws EZBComponentException; 40 41 42 /** 43 * Start method.<br/> 44 * This method is called after the init method. 45 * @throws EZBComponentException if the start has failed. 46 */ 47 void start() throws EZBComponentException; 48 49 50 /** 51 * Stop method.<br/> 52 * This method is called when component needs to be stopped. 53 * @throws EZBComponentException if the stop is failing. 54 */ 55 void stop() throws EZBComponentException; 56 57 } 58