001: /*
002: * BEGIN_HEADER - DO NOT EDIT
003: *
004: * The contents of this file are subject to the terms
005: * of the Common Development and Distribution License
006: * (the "License"). You may not use this file except
007: * in compliance with the License.
008: *
009: * You can obtain a copy of the license at
010: * https://open-esb.dev.java.net/public/CDDLv1.0.html.
011: * See the License for the specific language governing
012: * permissions and limitations under the License.
013: *
014: * When distributing Covered Code, include this CDDL
015: * HEADER in each file and include the License file at
016: * https://open-esb.dev.java.net/public/CDDLv1.0.html.
017: * If applicable add the following below this CDDL HEADER,
018: * with the fields enclosed by brackets "[]" replaced with
019: * your own identifying information: Portions Copyright
020: * [year] [name of copyright owner]
021: */
022:
023: /*
024: * @(#)ModelBindingInstaller.java
025: * Copyright 2004-2007 Sun Microsystems, Inc. All Rights Reserved.
026: *
027: * END_HEADER - DO NOT EDIT
028: */
029: package com.sun.jbi.management.binding;
030:
031: import javax.jbi.JBIException;
032: import javax.management.ObjectName;
033: import javax.jbi.component.Bootstrap;
034: import javax.jbi.component.InstallationContext;
035:
036: /**
037: * The ModelBindingInstaller implements the management controls for a standard
038: * binding installer class, and can be extended to provide full installer
039: * functionality for a JBI Framework binding component.
040: *
041: * @author Sun Microsystems, Inc.
042: */
043: public abstract class ModelBindingInstaller implements Bootstrap {
044: /**
045: * Initializes the installation environment for a component. This method is
046: * expected to save any information from the installation context that
047: * may be needed by other methods.
048: * <p>
049: * If the component needs to register an optional installer configuration
050: * MBean, it MUST do so during execution of this method, or the
051: * getExtensionMBean() method.
052: * <p>
053: * This method must be called after the installation root (available
054: * through the installContext parameter) is prepared.
055: *
056: * @param installContext the context containing information from the
057: * install command and from the component installation
058: * ZIP file; this must be non-null.
059: * @exception JBIException when there is an error requiring that
060: * the installation be terminated
061: */
062: public void init(InstallationContext installContext)
063: throws JBIException {
064: }
065:
066: /**
067: * Cleans up any resources allocated by the bootstrap implementation,
068: * including performing deregistration of the extension MBean, if
069: * applicable.
070: * <p>
071: * This method must be called after the onInstall() or onUninstall() method
072: * is called, whether it succeeds or fails. It must be called after
073: * init() is called, if init() fails by throwing an exception.
074: *
075: * @exception JBIException if the bootstrap cannot clean up allocated
076: * resources
077: */
078: public void cleanUp() throws JBIException {
079: }
080:
081: /**
082: * Obtains the <code>ObjectName</code> of the optional installer
083: * configuration MBean. If none is provided by this component, this method
084: * must return <code>null</code>.
085: * <p>
086: * This method must be called before onInstall() (or onUninstall()) is
087: * called by the JBI implementation.
088: *
089: * @return ObjectName of the optional installer configuration MBean;
090: * returns <code>null</code> if there is no such MBean
091: */
092: public ObjectName getExtensionMBeanName() {
093: return (ObjectName) null;
094: }
095:
096: /**
097: * Called at the beginning of installation of a component to perform any
098: * special installation tasks required by the component.
099: * <p>
100: * This method must not be called if the init() method failed with an
101: * exception.
102: *
103: * @exception JBIException when there is an error requiring that
104: * the installation be terminated
105: */
106: public void onInstall() throws JBIException {
107: }
108:
109: /**
110: * Called at the beginning of uninstallation of a component to perform any
111: * special uninstallation tasks required by the component.
112: * <p>
113: * This method must not be called if the init() method failed with an
114: * exception.
115: *
116: * @exception JBIException when there is an error requiring that
117: * the uninstallation be terminated.
118: */
119: public void onUninstall() throws JBIException {
120: }
121: }
|