Currently, Pelix Remote Services supports the pelix.remote.export.reject property to reject the export of a specific interface when using remote services, even if it has been indicated in the service.exported.interfaces property.
The main use case is when a component provides multiple services but disallows the export of only some of them, like local-only services (shell commands, ...).
This is useful when a component is instantiated manually, with the services.exported.interfaces property set to * (all).
Two other properties should be defined to ease the description of those constraints:
pelix.remote.export.none: no export is allowed for this component, even if the instantiator says otherwise.
pelix.remote.export.only: this is the opposite of reject. Only interfaces listed in this property can be exported.
pelix.remote.export.none is the top-priority property: when set all others are ignored.
If both export.onlyand export.reject properties are set, the exported interfaces those in export.only minus those of export.reject.
if the result is an empty set, then the export is aborted.
Currently, Pelix Remote Services supports the
pelix.remote.export.reject
property to reject the export of a specific interface when using remote services, even if it has been indicated in theservice.exported.interfaces
property.The main use case is when a component provides multiple services but disallows the export of only some of them, like local-only services (shell commands, ...). This is useful when a component is instantiated manually, with the
services.exported.interfaces
property set to*
(all).Two other properties should be defined to ease the description of those constraints:
pelix.remote.export.none
: no export is allowed for this component, even if the instantiator says otherwise.pelix.remote.export.only
: this is the opposite ofreject
. Only interfaces listed in this property can be exported.pelix.remote.export.none
is the top-priority property: when set all others are ignored. If bothexport.only
andexport.reject
properties are set, the exported interfaces those inexport.only
minus those ofexport.reject
. if the result is an empty set, then the export is aborted.