From 899ccfb2052bc5b2c52828d6ccb04c16f9787784 Mon Sep 17 00:00:00 2001 From: Tom Pantelis Date: Fri, 27 Jul 2018 10:23:15 -0400 Subject: [PATCH] Deprecate controller APIs Deprecated the high-level interfaces, eg DataBroker. Change-Id: I754e3a5059c05d70616f3bd4ff3a00a05115fead Signed-off-by: Tom Pantelis --- opendaylight/md-sal/sal-binding-api/pom.xml | 4 ++++ .../controller/md/sal/binding/api/DataBroker.java | 3 +++ .../controller/md/sal/binding/api/MountPointService.java | 6 ++++++ .../md/sal/binding/api/NotificationPublishService.java | 3 +++ .../controller/md/sal/binding/api/NotificationService.java | 3 +++ .../controller/sal/binding/api/BindingAwareBroker.java | 7 ++++--- .../controller/sal/binding/api/BindingAwareConsumer.java | 1 + .../controller/sal/binding/api/BindingAwareProvider.java | 1 + .../sal/binding/api/NotificationProviderService.java | 2 +- .../controller/sal/binding/api/NotificationService.java | 2 +- .../controller/sal/binding/api/RpcConsumerRegistry.java | 2 ++ .../controller/sal/binding/api/RpcProviderRegistry.java | 3 +++ .../controller/md/sal/dom/api/DOMDataBroker.java | 3 +++ .../controller/md/sal/dom/api/DOMMountPointService.java | 6 ++++++ .../md/sal/dom/api/DOMNotificationPublishService.java | 3 +++ .../controller/md/sal/dom/api/DOMNotificationService.java | 3 +++ .../controller/md/sal/dom/api/DOMRpcProviderService.java | 3 +++ .../controller/md/sal/dom/api/DOMRpcService.java | 3 +++ 18 files changed, 53 insertions(+), 5 deletions(-) diff --git a/opendaylight/md-sal/sal-binding-api/pom.xml b/opendaylight/md-sal/sal-binding-api/pom.xml index ddfba2b280..5a3a3ee073 100644 --- a/opendaylight/md-sal/sal-binding-api/pom.xml +++ b/opendaylight/md-sal/sal-binding-api/pom.xml @@ -18,6 +18,10 @@ org.opendaylight.controller sal-common-api + + org.opendaylight.mdsal + mdsal-binding-api + org.opendaylight.yangtools concepts diff --git a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/DataBroker.java b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/DataBroker.java index 8c3e17ed28..bc5dd21900 100644 --- a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/DataBroker.java +++ b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/DataBroker.java @@ -22,7 +22,10 @@ import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; * * @see AsyncDataBroker * @see TransactionChainFactory + * + * @deprecated Use {@link org.opendaylight.mdsal.binding.api.DataBroker} instead */ +@Deprecated public interface DataBroker extends AsyncDataBroker, DataObject>, TransactionChainFactory, DataObject>, TransactionFactory, BindingService, DataTreeChangeService { diff --git a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/MountPointService.java b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/MountPointService.java index 43e2d85d46..dec4b8caa8 100644 --- a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/MountPointService.java +++ b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/MountPointService.java @@ -12,6 +12,12 @@ import java.util.EventListener; import org.opendaylight.yangtools.concepts.ListenerRegistration; import org.opendaylight.yangtools.yang.binding.InstanceIdentifier; +/** + * Deprecated. + * + * @deprecated Use {@link org.opendaylight.mdsal.binding.api.MountPointService} instead + */ +@Deprecated public interface MountPointService extends BindingService { Optional getMountPoint(InstanceIdentifier mountPoint); diff --git a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/NotificationPublishService.java b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/NotificationPublishService.java index db36d3001f..7a8b09aa45 100644 --- a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/NotificationPublishService.java +++ b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/NotificationPublishService.java @@ -27,7 +27,10 @@ import org.opendaylight.yangtools.yang.binding.Notification; * The actual delivery to listeners is asynchronous and implementation-specific. * Users of this interface should not make any assumptions as to whether the * notification has or has not been seen. + * + * @deprecated Use {@link org.opendaylight.mdsal.binding.api.NotificationPublishService} instead */ +@Deprecated public interface NotificationPublishService extends BindingService { /** diff --git a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/NotificationService.java b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/NotificationService.java index 3744eeef99..8492296fda 100644 --- a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/NotificationService.java +++ b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/md/sal/binding/api/NotificationService.java @@ -68,7 +68,10 @@ import org.opendaylight.yangtools.yang.binding.NotificationListener; * } * The onStart method will be invoked when someone publishes a Start notification and * the onStop method will be invoked when someone publishes a Stop notification. + * + * @deprecated Use {@link org.opendaylight.mdsal.binding.api.NotificationService} instead */ +@Deprecated public interface NotificationService extends BindingService { /** * Registers a listener which implements a YANG-generated notification interface derived from diff --git a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/BindingAwareBroker.java b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/BindingAwareBroker.java index 81f8124c46..385754f8b8 100644 --- a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/BindingAwareBroker.java +++ b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/BindingAwareBroker.java @@ -52,9 +52,6 @@ import org.osgi.framework.BundleContext; * and {@link ProviderContext} */ public interface BindingAwareBroker { - /* - * @deprecated Use registerConsumer(BindingAwareConsumer cons) instead (BundleContext is no longer used) - */ @Deprecated ConsumerContext registerConsumer(BindingAwareConsumer consumer, BundleContext ctx); @@ -79,6 +76,7 @@ public interface BindingAwareBroker { * @throws IllegalStateException * If the consumer is already registered. */ + @Deprecated ConsumerContext registerConsumer(BindingAwareConsumer consumer); /* @@ -115,6 +113,7 @@ public interface BindingAwareBroker { * @throws IllegalStateException * If the consumer is already registered. */ + @Deprecated ProviderContext registerProvider(BindingAwareProvider provider); /** @@ -130,6 +129,7 @@ public interface BindingAwareBroker { * infrastructure services and other functionality provided by * {@link BindingAwareProvider}s. */ + @Deprecated interface ConsumerContext extends RpcConsumerRegistry { /** @@ -158,6 +158,7 @@ public interface BindingAwareBroker { * functionality provided by other {@link BindingAwareConsumer}s. * */ + @Deprecated interface ProviderContext extends ConsumerContext, RpcProviderRegistry { } diff --git a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/BindingAwareConsumer.java b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/BindingAwareConsumer.java index d194591a88..5cbdc920bd 100644 --- a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/BindingAwareConsumer.java +++ b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/BindingAwareConsumer.java @@ -73,6 +73,7 @@ import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ConsumerCo * } * } */ +@Deprecated public interface BindingAwareConsumer { /** diff --git a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/BindingAwareProvider.java b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/BindingAwareProvider.java index 699fd9171e..8b3bc62393 100644 --- a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/BindingAwareProvider.java +++ b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/BindingAwareProvider.java @@ -103,6 +103,7 @@ import org.opendaylight.controller.sal.binding.api.BindingAwareBroker.ProviderCo * } * } */ +@Deprecated public interface BindingAwareProvider { /** diff --git a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/NotificationProviderService.java b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/NotificationProviderService.java index 0f183a0e8c..9d3efc2851 100644 --- a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/NotificationProviderService.java +++ b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/NotificationProviderService.java @@ -18,7 +18,7 @@ import org.opendaylight.yangtools.yang.binding.Notification; * modeled notifications. This interface is a combination of the {@link NotificationService} and * {@link NotificationPublishService} interfaces. * - * @deprecated Please use {@link org.opendaylight.controller.md.sal.binding.api.NotificationPublishService}. + * @deprecated Please use {@link org.opendaylight.mdsal.binding.api.NotificationPublishService}. */ @Deprecated public interface NotificationProviderService extends NotificationService, NotificationPublishService { diff --git a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/NotificationService.java b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/NotificationService.java index 8f3e1470e4..d8678d351a 100644 --- a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/NotificationService.java +++ b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/NotificationService.java @@ -99,7 +99,7 @@ import org.opendaylight.yangtools.yang.binding.Notification; * The onStart method will be invoked when someone publishes a Start notification and * the onStop method will be invoked when someone publishes a Stop notification. * - * @deprecated Please use {@link org.opendaylight.controller.md.sal.binding.api.NotificationService} instead. + * @deprecated Please use {@link org.opendaylight.mdsal.binding.api.NotificationService} instead. */ @Deprecated public interface NotificationService extends BindingAwareService { diff --git a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/RpcConsumerRegistry.java b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/RpcConsumerRegistry.java index 83be512fb8..d6978d73d1 100644 --- a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/RpcConsumerRegistry.java +++ b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/RpcConsumerRegistry.java @@ -17,7 +17,9 @@ import org.opendaylight.yangtools.yang.binding.RpcService; *

* RPC implementations are registered using the {@link RpcProviderRegistry}. * + * @deprecated Use {@link org.opendaylight.mdsal.binding.api.RpcConsumerRegistry} instead */ +@Deprecated public interface RpcConsumerRegistry extends BindingAwareService, BindingService { /** * Returns an implementation of a requested RPC service. diff --git a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/RpcProviderRegistry.java b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/RpcProviderRegistry.java index 268906f450..367e55d927 100644 --- a/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/RpcProviderRegistry.java +++ b/opendaylight/md-sal/sal-binding-api/src/main/java/org/opendaylight/controller/sal/binding/api/RpcProviderRegistry.java @@ -253,7 +253,10 @@ import org.opendaylight.yangtools.yang.binding.RpcService; * on failure rather than purposely throwing unchecked exceptions if at all possible. * While unchecked exceptions will fail the returned {@link java.util.concurrent.Future Future}, * using the intended RpcResult to convey the error information is more user-friendly. + * + * @deprecated Use {@link org.opendaylight.mdsal.binding.api.RpcProviderService} instead */ +@Deprecated public interface RpcProviderRegistry extends // RpcConsumerRegistry, // RouteChangePublisher> { diff --git a/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMDataBroker.java b/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMDataBroker.java index 9507ac5d4b..2f123cd712 100644 --- a/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMDataBroker.java +++ b/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMDataBroker.java @@ -20,7 +20,10 @@ import org.opendaylight.yangtools.yang.data.api.schema.NormalizedNode; *

* This interface is type capture of generic interfaces and returns type captures * of results for client-code convenience. + * + * @deprecated Use {@link org.opendaylight.mdsal.dom.api.DOMDataBroker} instead */ +@Deprecated public interface DOMDataBroker extends AsyncDataBroker>, TransactionChainFactory>, diff --git a/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMMountPointService.java b/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMMountPointService.java index 0524481ba4..0c72b86417 100644 --- a/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMMountPointService.java +++ b/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMMountPointService.java @@ -14,6 +14,12 @@ import org.opendaylight.yangtools.concepts.ObjectRegistration; import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier; import org.opendaylight.yangtools.yang.model.api.SchemaContext; +/** + * Deprecated. + * + * @deprecated Use {@link org.opendaylight.mdsal.dom.api.DOMMountPointService} instead + */ +@Deprecated public interface DOMMountPointService extends DOMService { Optional getMountPoint(YangInstanceIdentifier path); diff --git a/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMNotificationPublishService.java b/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMNotificationPublishService.java index 0233446427..852dc56075 100644 --- a/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMNotificationPublishService.java +++ b/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMNotificationPublishService.java @@ -22,7 +22,10 @@ import javax.annotation.Nonnull; * - an offer-style method, which attempts to enqueue the notification, but allows * the caller to specify that it should never wait, or put an upper bound on how * long it is going to wait. + * + * @deprecated Use {@link org.opendaylight.mdsal.dom.api.DOMNotificationPublishService} instead */ +@Deprecated public interface DOMNotificationPublishService extends DOMService { /** * Well-known value indicating that the implementation is currently not diff --git a/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMNotificationService.java b/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMNotificationService.java index 3edde3c8cd..37d3a019a6 100644 --- a/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMNotificationService.java +++ b/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMNotificationService.java @@ -15,7 +15,10 @@ import org.opendaylight.yangtools.yang.model.api.SchemaPath; /** * A {@link DOMService} which allows its users to subscribe to receive * {@link DOMNotification}s. + * + * @deprecated Use {@link org.opendaylight.mdsal.dom.api.DOMNotificationService} instead */ +@Deprecated public interface DOMNotificationService extends DOMService { /** * Register a {@link DOMNotificationListener} to receive a set of notifications. As with diff --git a/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMRpcProviderService.java b/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMRpcProviderService.java index 82de4b02a2..9454214650 100644 --- a/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMRpcProviderService.java +++ b/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMRpcProviderService.java @@ -28,7 +28,10 @@ import javax.annotation.Nonnull; * *

* All implementations are required to perform these steps as specified above. + * + * @deprecated Use {@link org.opendaylight.mdsal.dom.api.DOMRpcProviderService} instead */ +@Deprecated public interface DOMRpcProviderService extends DOMService { /** * Register an {@link DOMRpcImplementation} object with this service. diff --git a/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMRpcService.java b/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMRpcService.java index c84e2d3ad0..e8826de060 100644 --- a/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMRpcService.java +++ b/opendaylight/md-sal/sal-dom-api/src/main/java/org/opendaylight/controller/md/sal/dom/api/DOMRpcService.java @@ -19,7 +19,10 @@ import org.opendaylight.yangtools.yang.model.api.SchemaPath; * service is that of a dynamic router, where the set of available RPC services can change * dynamically. The service allows users to add a listener to track the process of * RPCs becoming available. + * + * @deprecated Use {@link org.opendaylight.mdsal.dom.api.DOMRpcService} instead */ +@Deprecated public interface DOMRpcService extends DOMService { /** * Initiate invocation of an RPC. This method is guaranteed to not block on any external -- 2.36.6