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=d5759c52d69ba8725d9bbdc18e81848f319861d1;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> {