javax.jbi.management.InstallerMBean Maven / Gradle / Ivy
Show all versions of petals-jbi Show documentation
/**
* @(#) InstallerMBean.java
*
* PETALS - PETALS Services Platform.
* Copyright (c) 2005 Fossil E-Commerce, http://www.fossilec.com/
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*
* -------------------------------------------------------------------------
* $Id: InstallerMBean.java 69 2006-01-17 16:00:26Z rmarins $
* -------------------------------------------------------------------------
*/
//
// This source code implements specifications defined by the Java
// Community Process. In order to remain compliant with the specification
// DO NOT add / change / or delete method signatures!
//
package javax.jbi.management;
/**
* The InstallerMBean defines standard installation and uninstallation controls
* for components. InstallerMBeans are created by the
* {@link InstallationServiceMBean}. The InstallerMBean offers controls to allow
* an administrative tool to:
*
* - Install the component from the installation package.
*
- Uninstall the component.
*
- Check the installation status of the component.
*
- Get the file path to the component's installation root directory.
*
*
* @author JSR208 Expert Group
*/
public interface InstallerMBean {
/**
* Get the installer configuration MBean name for this component.
*
* @return the MBean object name of the Installer Configuration MBean;
* null
if none is provided by this component
* @throws javax.jbi.JBIException
* if the component is not in the appropriate state (after
* install() but before life cycle initialization), or if any
* error occurs during processing
*/
public javax.management.ObjectName getInstallerConfigurationMBean()
throws javax.jbi.JBIException;
/**
* Get the installation root directory path for this component.
*
* @return the full installation path of this component; this must be in
* absolute path name form, in platform-specific format; must be
* non-null and non-empty
*/
public java.lang.String getInstallRoot();
/**
* Install a component.
*
* Note that the implementation must leave the component in its installed,
* shutdown state. Automatic starting of components during installation by
* implementations is not allowed.
*
* @return JMX ObjectName representing the LifeCycleMBean for the installed
* component, or null
if the installation did not
* complete
* @throws javax.jbi.JBIException
* if the installation fails
*/
public javax.management.ObjectName install() throws javax.jbi.JBIException;
/**
* Determine whether or not the component is installed.
*
* @return true
if this component is currently installed,
* otherwise false
*/
public boolean isInstalled();
/**
* Uninstall a component. This completely removes the component from
* the JBI system.
*
* @throws javax.jbi.JBIException if the uninstallation fails
*/
public void uninstall() throws javax.jbi.JBIException;
}