X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fmd-sal%2Fsal-binding-api%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fsal%2Fbinding%2Fapi%2FBindingAwareBroker.java;h=ab62c803e2d3e01badc4824bf548f27bd5e80226;hb=e67e519778a0692f3183a059a52e5cb378fce9e0;hp=5b700703bc0b522357f42ec2580e9b64e94c924e;hpb=4f8166639477de8c1c9048baee2ba70003748756;p=controller.git
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 5b700703bc..ab62c803e2 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
@@ -8,9 +8,6 @@
package org.opendaylight.controller.sal.binding.api;
import org.opendaylight.controller.md.sal.common.api.routing.RoutedRegistration;
-import org.opendaylight.controller.sal.binding.api.BindingAwareProvider.ProviderFunctionality;
-import org.opendaylight.controller.sal.binding.api.data.DataBrokerService;
-import org.opendaylight.controller.sal.binding.api.data.DataProviderService;
import org.opendaylight.yangtools.concepts.ObjectRegistration;
import org.opendaylight.yangtools.yang.binding.BaseIdentity;
import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
@@ -39,8 +36,8 @@ import org.osgi.framework.BundleContext;
*
Notification Service - see {@link NotificationService} and
* {@link NotificationProviderService}
* Functionality and Data model
- * Data Store access and modification - see {@link DataBrokerService} and
- * {@link DataProviderService}
+ * Data Store access and modification - see {@link org.opendaylight.controller.sal.binding.api.data.DataBrokerService} and
+ * {@link org.opendaylight.controller.sal.binding.api.data.DataProviderService}
*
*
* The services are exposed via session.
@@ -52,11 +49,14 @@ import org.osgi.framework.BundleContext;
*
* For more information about session-based access see {@link ConsumerContext}
* and {@link ProviderContext}
- *
- *
- *
*/
public interface BindingAwareBroker {
+ /*
+ * @deprecated Use registerConsumer(BindingAwareConsumer cons) instead (BundleContext is no longer used)
+ */
+ @Deprecated
+ ConsumerContext registerConsumer(BindingAwareConsumer consumer, BundleContext ctx);
+
/**
* Registers the {@link BindingAwareConsumer}, which will use the SAL layer.
*
@@ -78,7 +78,13 @@ public interface BindingAwareBroker {
* @throws IllegalStateException
* If the consumer is already registered.
*/
- ConsumerContext registerConsumer(BindingAwareConsumer consumer, BundleContext ctx);
+ ConsumerContext registerConsumer(BindingAwareConsumer consumer);
+
+ /*
+ * @deprecated Use registerProvider(BindingAwareProvider prov) instead (BundleContext is no longer used)
+ */
+ @Deprecated
+ ProviderContext registerProvider(BindingAwareProvider provider, BundleContext ctx);
/**
* Registers the {@link BindingAwareProvider}, which will use the SAL layer.
@@ -108,7 +114,7 @@ public interface BindingAwareBroker {
* @throws IllegalStateException
* If the consumer is already registered.
*/
- ProviderContext registerProvider(BindingAwareProvider provider, BundleContext ctx);
+ ProviderContext registerProvider(BindingAwareProvider provider);
/**
* {@link BindingAwareConsumer} specific access to the SAL functionality.
@@ -122,9 +128,6 @@ public interface BindingAwareBroker {
* functionality) for the consumer and provides access to the SAL
* infrastructure services and other functionality provided by
* {@link Provider}s.
- *
- *
- *
*/
public interface ConsumerContext extends RpcConsumerRegistry {
@@ -137,8 +140,6 @@ public interface BindingAwareBroker {
* @return Session specific implementation of service
*/
T getSALService(Class service);
-
-
}
/**
@@ -159,18 +160,31 @@ public interface BindingAwareBroker {
*/
public interface ProviderContext extends ConsumerContext, RpcProviderRegistry {
- @Deprecated
- void registerFunctionality(ProviderFunctionality functionality);
-
- @Deprecated
- void unregisterFunctionality(ProviderFunctionality functionality);
}
+ /**
+ * Represents an RPC implementation registration. Users should call the
+ * {@link ObjectRegistration#close close} method when the registration is no longer needed.
+ *
+ * @param the implemented RPC service interface
+ */
public interface RpcRegistration extends ObjectRegistration {
+ /**
+ * Returns the implemented RPC service interface.
+ */
Class getServiceType();
+
+ @Override
+ void close();
}
+ /**
+ * Represents a routed RPC implementation registration. Users should call the
+ * {@link RoutedRegistration#close close} method when the registration is no longer needed.
+ *
+ * @param the implemented RPC service interface
+ */
public interface RoutedRpcRegistration extends RpcRegistration,
RoutedRegistration, InstanceIdentifier>, T> {