All Downloads are FREE. Search and download functionalities are using the official Maven repository.

javax.jbi.management.InstallationServiceMBean Maven / Gradle / Ivy

The newest version!
/*
 * Licensed to the Apache Software Foundation (ASF) under one or more
 * contributor license agreements.  See the NOTICE file distributed with
 * this work for additional information regarding copyright ownership.
 * The ASF licenses this file to You under the Apache License, Version 2.0
 * (the "License"); you may not use this file except in compliance with
 * the License.  You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package javax.jbi.management;

import javax.management.ObjectName;

/**
 * The installation service MBean allows administrative tools to manage
 * component and shared library installations.  The tasks supported are:
 * 
    *
  • Installing (and uninstalling) a shared library
  • *
  • Creating (loading) and destroying (unloading) a component installer * MBean.
  • *
  • Finding an existing component installer MBean. *
* * Installing and uninstalling components is accomplished using * {@link InstallerMBean}s, loaded by this MBean. An individual installer MBean * is needed for each component installation / uninstallation. This is to support * the more complex installation process that some components require. * * @author JSR208 Expert Group */ public interface InstallationServiceMBean { /** * Load the installer for a new component for the given component * installation package. * * @param installZipURL URL locating a ZIP file containing the * JBI Installation package to be installed; must be non-null, * non-empty, and a legal URL * @return the JMX ObjectName of the InstallerMBean loaded from * installZipURL; must be non-null */ ObjectName loadNewInstaller(String installZipURL); /** * Load the InstallerMBean for a previously installed component. *

* The "component name" refers to the * <identification><name> element value from the * component's installation package (see {@link #loadNewInstaller(String)}). * * @param aComponentName the component name identifying the installer to * load; must be non-null and non-empty * @return the JMX ObjectName of the InstallerMBean loaded from an existing * installation context; null if the installer MBean * doesn't exist */ ObjectName loadInstaller(String aComponentName); /** * Unload an InstallerMBean previously loaded for a component. * * @param aComponentName the component name identifying the installer to * unload; must be non-null and non-empty * @param isToBeDeleted true if the component is to be deleted * as well * @return true if the operation was successful, otherwise false */ boolean unloadInstaller(String aComponentName, boolean isToBeDeleted); /** * Install a shared library installation package. *

* The return value is the unique name for the shared-library, as found * in the the value of the installation descriptor's * <identification><name> element. * * @param aSharedLibURI URL locating a zip file containing a shared library * installation package; must be non-null, non-empty, and a legal * URL * @return the unique name of the shared library loaded from slZipURL; must * be non-null and non-empty */ String installSharedLibrary(String aSharedLibURI); /** * Uninstall a previously installed shared library. * * @param aSharedLibName the name of the shared name space to uninstall; must be * non-null and non-empty * @return true if the uninstall was successful */ boolean uninstallSharedLibrary(String aSharedLibName); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy