Interface BindingAwareBroker
-
- All Known Implementing Classes:
RootBindingAwareBroker
@Deprecated(forRemoval=true) public interface BindingAwareBroker
Deprecated, for removal: This API element is subject to removal in a future version.Binding-aware core of the SAL layer responsible for wiring the SAL consumers.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.
Infrastructure services
Some examples of infrastructure services:- YANG Module service - see
RpcConsumerRegistry.getRpcService(Class)
,BindingAwareBroker.ProviderContext
- Notification Service - see
NotificationService
andNotificationProviderService
The services are exposed via session.
Session-based access
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
andBindingAwareBroker.ProviderContext
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
BindingAwareBroker.ConsumerContext
Deprecated.static interface
BindingAwareBroker.ProviderContext
Deprecated.static interface
BindingAwareBroker.RoutedRpcRegistration<T extends RpcService>
Deprecated, for removal: This API element is subject to removal in a future version.Represents a routed RPC implementation registration.static interface
BindingAwareBroker.RpcRegistration<T extends RpcService>
Deprecated, for removal: This API element is subject to removal in a future version.Represents an RPC implementation registration.
-
Method Summary
All Methods Instance Methods Abstract Methods Deprecated Methods Modifier and Type Method 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.
-
-
-
Method Detail
-
registerConsumer
@Deprecated BindingAwareBroker.ConsumerContext registerConsumer(BindingAwareConsumer consumer, org.osgi.framework.BundleContext ctx)
Deprecated.
-
registerConsumer
@Deprecated BindingAwareBroker.ConsumerContext registerConsumer(BindingAwareConsumer consumer)
Deprecated.Registers theBindingAwareConsumer
, 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)
.- Parameters:
consumer
- Consumer to be registered.- Returns:
- a session specific to consumer registration
- Throws:
IllegalArgumentException
- If the consumer isnull
.IllegalStateException
- If the consumer is already registered.
-
registerProvider
@Deprecated BindingAwareBroker.ProviderContext registerProvider(BindingAwareProvider provider, org.osgi.framework.BundleContext ctx)
Deprecated.
-
registerProvider
@Deprecated BindingAwareBroker.ProviderContext registerProvider(BindingAwareProvider provider)
Deprecated.Registers theBindingAwareProvider
, 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)
.- Parameters:
provider
- Provider to be registered.- Returns:
- a session unique to the provider registration.
- Throws:
IllegalArgumentException
- If the provider isnull
.IllegalStateException
- If the consumer is already registered.
-
-