|
OSGi™ Enterprise Release 5 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.osgi.service.remoteserviceadmin.EndpointDescription
public class EndpointDescription
A description of an endpoint that provides sufficient information for a
compatible distribution provider to create a connection to this endpoint
An Endpoint Description is easy to transfer between different systems because
it is property based where the property keys are strings and the values are
simple types. This allows it to be used as a communications device to convey
available endpoint information to nodes in a network.
An Endpoint Description reflects the perspective of an importer. That
is, the property keys have been chosen to match filters that are created by
client bundles that need a service. Therefore the map must not contain any
service.exported.* property and must contain the corresponding
service.imported.* ones.
The service.intents property must contain the intents provided by the
service itself combined with the intents added by the exporting distribution
provider. Qualified intents appear fully expanded on this property.
| Constructor Summary | |
|---|---|
EndpointDescription(java.util.Map<java.lang.String,?> properties)
Create an Endpoint Description from a Map. |
|
EndpointDescription(ServiceReference reference,
java.util.Map<java.lang.String,?> properties)
Create an Endpoint Description based on a Service Reference and a Map of properties. |
|
| Method Summary | |
|---|---|
boolean |
equals(java.lang.Object other)
Compares this EndpointDescription object to another object. |
java.util.List<java.lang.String> |
getConfigurationTypes()
Returns the configuration types. |
java.lang.String |
getFrameworkUUID()
Return the framework UUID for the remote service, if present. |
java.lang.String |
getId()
Returns the endpoint's id. |
java.util.List<java.lang.String> |
getIntents()
Return the list of intents implemented by this endpoint. |
java.util.List<java.lang.String> |
getInterfaces()
Provide the list of interfaces implemented by the exported service. |
Version |
getPackageVersion(java.lang.String packageName)
Provide the version of the given package name. |
java.util.Map<java.lang.String,java.lang.Object> |
getProperties()
Returns all endpoint properties. |
long |
getServiceId()
Returns the service id for the service exported through this endpoint. |
int |
hashCode()
Returns a hash code value for the object. |
boolean |
isSameService(EndpointDescription other)
Answers if this Endpoint Description refers to the same service instance as the given Endpoint Description. |
boolean |
matches(java.lang.String filter)
Tests the properties of this EndpointDescription against the
given filter using a case insensitive match. |
java.lang.String |
toString()
Returns the string representation of this EndpointDescription. |
| Methods inherited from class java.lang.Object |
|---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public EndpointDescription(java.util.Map<java.lang.String,?> properties)
The endpoint.id,
service.imported.configs
and objectClass properties must be set.
properties - The map from which to create the Endpoint Description.
The keys in the map must be type String and, since the
keys are case insensitive, there must be no duplicates with case
variation.
java.lang.IllegalArgumentException - When the properties are not proper for
an Endpoint Description.
public EndpointDescription(ServiceReference reference,
java.util.Map<java.lang.String,?> properties)
This method will automatically set the
endpoint.framework.uuid
and endpoint.service.id
properties based on the specified Service Reference as well as the
service.imported property if
they are not specified as properties.
The endpoint.id,
service.imported.configs
and objectClass properties must be set.
reference - A service reference that can be exported.properties - Map of properties. This argument can be null.
The keys in the map must be type String and, since the
keys are case insensitive, there must be no duplicates with case
variation.
java.lang.IllegalArgumentException - When the properties are not proper for
an Endpoint Description| Method Detail |
|---|
public java.lang.String getId()
RemoteConstants.ENDPOINT_ID
property.
null. The returned value
has leading and trailing whitespace removed.public java.util.List<java.lang.String> getInterfaces()
objectClass
property.
public Version getPackageVersion(java.lang.String packageName)
endpoint.package.version., and then using this as an endpoint property
key. For example:
endpoint.package.version.com.acmeThe value of this property is in String format and will be converted to a
Version object by this method.
packageName - The name of the package for which a version is
requested.
Version.emptyVersion if the package has no version in
this Endpoint Description.
java.lang.IllegalArgumentException - If the version property value is not
String.public long getServiceId()
RemoteConstants.ENDPOINT_SERVICE_ID endpoint property.
public java.util.List<java.lang.String> getConfigurationTypes()
RemoteConstants.SERVICE_IMPORTED_CONFIGS service property.
public java.util.List<java.lang.String> getIntents()
RemoteConstants.SERVICE_INTENTS service property.
public java.lang.String getFrameworkUUID()
RemoteConstants.ENDPOINT_FRAMEWORK_UUID endpoint property.
null if this endpoint is not
associated with an OSGi framework having a framework uuid.public java.util.Map<java.lang.String,java.lang.Object> getProperties()
public boolean isSameService(EndpointDescription other)
other - The Endpoint Description to look at
public int hashCode()
hashCode in class java.lang.Objectpublic boolean equals(java.lang.Object other)
EndpointDescription object to another object.
An Endpoint Description is considered to be equal to another Endpoint Description if their ids are equal.
equals in class java.lang.Objectother - The EndpointDescription object to be compared.
true if object is a EndpointDescription
and is equal to this object; false otherwise.public boolean matches(java.lang.String filter)
EndpointDescription against the
given filter using a case insensitive match.
filter - The filter to test.
true If the properties of this
EndpointDescription match the filter, false
otherwise.
java.lang.IllegalArgumentException - If filter contains an invalid
filter string that cannot be parsed.public java.lang.String toString()
toString in class java.lang.Object
|
OSGi™ Enterprise Release 5 |
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||