public interface BindingAwareBroker
The responsibility of the broker is to maintain registration of SAL
functionality Consumers and Providers, store provider and
consumer specific context and functionality registration via
BindingAwareBroker.ConsumerContext
and provide access to infrastructure services, which
removes direct dependencies between providers and consumers.
The Binding-aware broker is also responsible for translation from Java classes modeling the functionality and data to binding-independent form which is used in SAL Core.
RpcConsumerRegistry.getRpcService(Class)
,
BindingAwareBroker.ProviderContext
NotificationService
and
NotificationProviderService
The services are exposed via session.
The providers and consumers needs to register in order to use the binding-independent SAL layer and to expose functionality via SAL layer.
For more information about session-based access see BindingAwareBroker.ConsumerContext
and BindingAwareBroker.ProviderContext
Modifier and Type | Interface and Description |
---|---|
static interface |
BindingAwareBroker.ConsumerContext
Deprecated.
|
static interface |
BindingAwareBroker.ProviderContext
Deprecated.
|
static interface |
BindingAwareBroker.RoutedRpcRegistration<T extends org.opendaylight.yangtools.yang.binding.RpcService>
Represents a routed RPC implementation registration.
|
static interface |
BindingAwareBroker.RpcRegistration<T extends org.opendaylight.yangtools.yang.binding.RpcService>
Represents an RPC implementation registration.
|
Modifier and Type | Method and Description |
---|---|
BindingAwareBroker.ConsumerContext |
registerConsumer(BindingAwareConsumer consumer)
Deprecated.
|
BindingAwareBroker.ConsumerContext |
registerConsumer(BindingAwareConsumer consumer,
org.osgi.framework.BundleContext ctx)
Deprecated.
|
BindingAwareBroker.ProviderContext |
registerProvider(BindingAwareProvider provider)
Deprecated.
|
BindingAwareBroker.ProviderContext |
registerProvider(BindingAwareProvider provider,
org.osgi.framework.BundleContext ctx)
Deprecated.
|
@Deprecated BindingAwareBroker.ConsumerContext registerConsumer(BindingAwareConsumer consumer, org.osgi.framework.BundleContext ctx)
@Deprecated BindingAwareBroker.ConsumerContext registerConsumer(BindingAwareConsumer consumer)
BindingAwareConsumer
, which will use the SAL layer.
Note that consumer could register additional functionality at later point by using service and functionality specific APIs.
The consumer is required to use returned session for all communication
with broker or one of the broker services. The session is announced to
the consumer by invoking
BindingAwareConsumer#onSessionInitialized(ConsumerContext)
.
consumer
- Consumer to be registered.IllegalArgumentException
- If the consumer is null
.IllegalStateException
- If the consumer is already registered.@Deprecated BindingAwareBroker.ProviderContext registerProvider(BindingAwareProvider provider, org.osgi.framework.BundleContext ctx)
@Deprecated BindingAwareBroker.ProviderContext registerProvider(BindingAwareProvider provider)
BindingAwareProvider
, which will use the SAL layer.
During the registration, the broker obtains the initial functionality from consumer, using the BindingAwareProvider#getImplementations(), and register that functionality into system and concrete infrastructure services.
Note that provider could register additional functionality at later point by using service and functionality specific APIs.
The consumer is required to use returned session for all
communication with broker or one of the broker services. The session is
announced to the consumer by invoking
BindingAwareProvider#onSessionInitiated(ProviderContext)
.
provider
- Provider to be registered.IllegalArgumentException
- If the provider is null
.IllegalStateException
- If the consumer is already registered.Copyright © 2019 OpenDaylight. All rights reserved.