Remove deprecated MD-SAL APIs
[controller.git] / opendaylight / md-sal / sal-binding-api / src / main / java / org / opendaylight / controller / sal / binding / api / AbstractBrokerAwareActivator.java
diff --git a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/AbstractBrokerAwareActivator.java b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/AbstractBrokerAwareActivator.java
deleted file mode 100644 (file)
index b169ac4..0000000
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
- * Copyright (c) 2014 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.sal.binding.api;
-
-import static java.util.Objects.requireNonNull;
-
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderContext;
-import org.osgi.framework.BundleActivator;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.ServiceReference;
-import org.osgi.util.tracker.ServiceTracker;
-import org.osgi.util.tracker.ServiceTrackerCustomizer;
-
-@Deprecated(forRemoval = true)
-public abstract class AbstractBrokerAwareActivator implements BundleActivator {
-    private final class Customizer implements ServiceTrackerCustomizer<BindingAwareBroker, BindingAwareBroker> {
-        private final BundleContext context;
-
-        Customizer(final BundleContext context) {
-            this.context = requireNonNull(context);
-        }
-
-        @Override
-        public BindingAwareBroker addingService(final ServiceReference<BindingAwareBroker> reference) {
-            final BindingAwareBroker broker = context.getService(reference);
-            MD_ACTIVATION_POOL.execute(() -> onBrokerAvailable(broker, context));
-            return broker;
-        }
-
-        @Override
-        public void modifiedService(final ServiceReference<BindingAwareBroker> reference,
-                final BindingAwareBroker service) {
-            removedService(reference, service);
-            addingService(reference);
-        }
-
-        @Override
-        public void removedService(final ServiceReference<BindingAwareBroker> reference,
-                final BindingAwareBroker service) {
-            final BindingAwareBroker broker = context.getService(reference);
-            MD_ACTIVATION_POOL.execute(() -> onBrokerRemoved(broker, context));
-        }
-    }
-
-    private static final ExecutorService MD_ACTIVATION_POOL = Executors.newCachedThreadPool();
-
-    private ServiceTracker<BindingAwareBroker, BindingAwareBroker> tracker;
-
-    @Override
-    public final void start(final BundleContext bundleContext) {
-        startImpl(bundleContext);
-        tracker = new ServiceTracker<>(bundleContext, BindingAwareBroker.class, new Customizer(bundleContext));
-        tracker.open();
-    }
-
-    @Override
-    public final void stop(final BundleContext bundleContext) {
-        if (tracker != null) {
-            tracker.close();
-        }
-        stopImpl(bundleContext);
-    }
-
-    /**
-     * Called when this bundle is started (before
-     * {@link BindingAwareProvider#onSessionInitiated(ProviderContext)} so the Framework can perform
-     * the bundle-specific activities necessary to start this bundle. This
-     * method can be used to register services or to allocate any resources that
-     * this bundle needs.
-     *
-     * <p>
-     * This method must complete and return to its caller in a timely manner.
-     *
-     * @param bundleContext
-     *            The execution context of the bundle being started.
-     * @throws RuntimeException
-     *             If this method throws an exception, this bundle is marked as
-     *             stopped and the Framework will remove this bundle's
-     *             listeners, unregister all services registered by this bundle,
-     *             and release all services used by this bundle.
-     */
-    protected void startImpl(final BundleContext bundleContext) {
-        // NOOP
-    }
-
-    /**
-     * Called when this bundle is stopped so the Framework can perform the
-     * bundle-specific activities necessary to stop the bundle. In general, this
-     * method should undo the work that the {@code BundleActivator.start} method
-     * started. There should be no active threads that were started by this
-     * bundle when this bundle returns. A stopped bundle must not call any
-     * Framework objects.
-     *
-     * <p>
-     * This method must complete and return to its caller in a timely manner.
-     *
-     * @param bundleContext The execution context of the bundle being stopped.
-     * @throws RuntimeException If this method throws an exception, the bundle is still
-     *         marked as stopped, and the Framework will remove the bundle's
-     *         listeners, unregister all services registered by the bundle, and
-     *         release all services used by the bundle.
-     */
-    protected void stopImpl(final BundleContext bundleContext) {
-        // NOOP
-    }
-
-    protected abstract void onBrokerAvailable(BindingAwareBroker bindingBroker, BundleContext bundleContext);
-
-    protected void onBrokerRemoved(final BindingAwareBroker bindingBroker, final BundleContext bundleContext) {
-        stopImpl(bundleContext);
-    }
-}