Package org.osgi.service.wireadmin
Interface Envelope
- All Known Implementing Classes:
BasicEnvelope
public interface Envelope
Identifies a contained value.
An
Envelope
object combines a status value, an identification object
and a scope name. The Envelope
object allows the use of standard Java
types when a Producer service can produce more than one kind of object. The
Envelope
object allows the Consumer service to recognize the kind of
object that is received. For example, a door lock could be represented by a
Boolean
object. If the Producer
service would send such a
Boolean
object, then the Consumer service would not know what door
the Boolean
object represented. The Envelope
object contains
an identification object so the Consumer service can discriminate between
different kinds of values. The identification object may be a simple
String
object, but it can also be a domain specific object that is
mutually agreed by the Producer and the Consumer service. This object can
then contain relevant information that makes the identification easier.
The scope name of the envelope is used for security. The Wire object must
verify that any Envelope
object send through the update
method or coming from the poll
method has a scope name that matches
the permissions of both the Producer service and the Consumer service
involved. The wireadmin package also contains a class BasicEnvelope
that implements the methods of this interface.
- See Also:
-
Method Summary
-
Method Details
-
getValue
Object getValue()Return the value associated with thisEnvelope
object.- Returns:
- the value of the status item, or
null
when no item is associated with this object.
-
getIdentification
Object getIdentification()Return the identification of thisEnvelope
object. An identification may be of any Java type. The type must be mutually agreed between the Consumer and Producer services.- Returns:
- an object which identifies the status item in the address space of the composite producer, must not be null.
-
getScope
String getScope()Return the scope name of thisEnvelope
object. Scope names are used to restrict the communication between the Producer and Consumer services. OnlyEnvelopes
objects with a scope name that is permitted for the Producer and the Consumer services must be passed through aWire
object.- Returns:
- the security scope for the status item, must not be null.
-