Remove CSS code
[controller.git] / opendaylight / config / config-api / src / main / java / org / opendaylight / controller / config / spi / ModuleFactory.java
diff --git a/opendaylight/config/config-api/src/main/java/org/opendaylight/controller/config/spi/ModuleFactory.java b/opendaylight/config/config-api/src/main/java/org/opendaylight/controller/config/spi/ModuleFactory.java
deleted file mode 100644 (file)
index 37dcd65..0000000
+++ /dev/null
@@ -1,120 +0,0 @@
-/*
- * Copyright (c) 2013, 2017 Cisco Systems, Inc. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-package org.opendaylight.controller.config.spi;
-
-import java.util.Set;
-import org.opendaylight.controller.config.api.DependencyResolver;
-import org.opendaylight.controller.config.api.DependencyResolverFactory;
-import org.opendaylight.controller.config.api.DynamicMBeanWithInstance;
-import org.opendaylight.controller.config.api.annotations.AbstractServiceInterface;
-import org.osgi.framework.BundleContext;
-
-/**
- * Factory which creates {@link Module} instances. An instance of this interface
- * needs to be exported into the OSGi Service Registry. Such an instance
- * provides metadata describing services which can be published from it.
- *
- * <p>
- * Each {@link Module} can optionally be instantiated with a
- * {@link javax.management.DynamicMBean} which represents the configuration of
- * the currently running instance.
- */
-public interface ModuleFactory {
-
-    /**
-     * Returns the human-friendly implementation name. This value needs to be unique
-     * within all implementations of all interfaces returned by
-     * getImplementedInterfaces().
-     *
-     * @return human-friendly implementation name
-     */
-    String getImplementationName();
-
-    /**
-     * Create a new Module instance. The returned object is expected to use the
-     * dependencyResolver provided when resolving ObjectNames to actual Module
-     * instances.
-     *
-     * @param dependencyResolver
-     *            This resolver will return actual config mbean based on its
-     *            ObjectName.
-     * @param bundleContext
-     *            Reference to OSGi bundleContext that can be used to acquire OSGi
-     *            services, startup configuration and other OSGi related
-     *            information.
-     *
-     * @return newly created module
-     *
-     */
-    Module createModule(String instanceName, DependencyResolver dependencyResolver, BundleContext bundleContext);
-
-    /**
-     * Create a new Module instance. The returned object is expected to use the
-     * dependencyResolver provided when resolving ObjectNames to actual Module
-     * instances. A reference to an abstract view of the previous configuration is
-     * also provided in the form of a {@link javax.management.DynamicMBean}.
-     * Implementations should use the MBeanInfo interface to understand the
-     * structure of the configuration information.
-     *
-     * <p>
-     * Structural information impacts hot-swap operations in that in order to
-     * perform such a swap the newly loaded code needs to understand the
-     * previously-running instance configuration layout and how to map it onto
-     * itself.
-     *
-     * @param dependencyResolver
-     *            This resolver will return actual config mbean based on its
-     *            ObjectName.
-     * @param old
-     *            existing module from platform MBeanServer that is being
-     *            reconfigured. Implementations should inspect its attributes using
-     *            {@link javax.management.DynamicMBean#getAttribute(String)} and set
-     *            those attributes on newly created module. If reconfiguration of
-     *            live instances is supported, this live instance can be retreived
-     *            using
-     *            {@link org.opendaylight.controller.config.api.DynamicMBeanWithInstance#getInstance()}
-     *            . It is possible that casting this old instance throws
-     *            {@link ClassCastException} when OSGi bundle is being updated. In
-     *            this case, implementation should revert to creating new instance.
-     * @param bundleContext
-     *            Reference to OSGi bundleContext that can be used to acquire OSGi
-     *            services, startup configuration and other OSGi related
-     *            information.
-     *
-     * @return newly created module
-     * @throws Exception
-     *             if it is not possible to recover configuration from old. This
-     *             leaves server in a running state but no configuration transaction
-     *             can be created.
-     */
-    Module createModule(String instanceName, DependencyResolver dependencyResolver, DynamicMBeanWithInstance old,
-            BundleContext bundleContext) throws Exception;
-
-    boolean isModuleImplementingServiceInterface(Class<? extends AbstractServiceInterface> serviceInterface);
-
-    Set<Class<? extends AbstractServiceInterface>> getImplementedServiceIntefaces();
-
-    /**
-     * Called when ModuleFactory is registered to config manager. Useful for
-     * populating the registry with pre-existing state. Since the method is called
-     * for each ModuleFactory separately and transaction is committed automatically,
-     * returned modules MUST be valid and commitable without any manual
-     * intervention.
-     *
-     * @param dependencyResolverFactory
-     *            factory for getting dependency resolvers for each module.
-     * @param bundleContext
-     *            Reference to OSGi bundleContext that can be used to acquire OSGi
-     *            services, startup configuration and other OSGi related
-     *            information.
-     *
-     * @return set of default modules. Null is not allowed.
-     */
-    Set<? extends Module> getDefaultModules(DependencyResolverFactory dependencyResolverFactory,
-            BundleContext bundleContext);
-}