OSGi™ Service Platform
Core Specification

Release 4 Version 4.3

org.osgi.framework.hooks.service
Interface ListenerHook.ListenerInfo

Enclosing interface:
ListenerHook

public static interface ListenerHook.ListenerInfo

Information about a Service Listener. This interface describes the bundle which added the Service Listener and the filter with which it was added.

ThreadSafe
Consumers of this API must not implement this interface

Method Summary
 boolean equals(java.lang.Object obj)
          Compares this ListenerInfo to another ListenerInfo.
 BundleContext getBundleContext()
          Return the context of the bundle which added the listener.
 java.lang.String getFilter()
          Return the filter string with which the listener was added.
 int hashCode()
          Returns the hash code for this ListenerInfo.
 boolean isRemoved()
          Return the state of the listener for this addition and removal life cycle.
 

Method Detail

getBundleContext

BundleContext getBundleContext()
Return the context of the bundle which added the listener.

Returns:
The context of the bundle which added the listener.

getFilter

java.lang.String getFilter()
Return the filter string with which the listener was added.

Returns:
The filter string with which the listener was added. This may be null if the listener was added without a filter.

isRemoved

boolean isRemoved()
Return the state of the listener for this addition and removal life cycle. Initially this method will return false indicating the listener has been added but has not been removed. After the listener has been removed, this method must always return true.

There is an extremely rare case in which removed notification to ListenerHooks can be made before added notification if two threads are racing to add and remove the same service listener. Because ListenerHooks are called synchronously during service listener addition and removal, the Framework cannot guarantee in-order delivery of added and removed notification for a given service listener. This method can be used to detect this rare occurrence.

Returns:
false if the listener has not been been removed, true otherwise.

equals

boolean equals(java.lang.Object obj)
Compares this ListenerInfo to another ListenerInfo. Two ListenerInfos are equals if they refer to the same listener for a given addition and removal life cycle. If the same listener is added again, it must have a different ListenerInfo which is not equal to this ListenerInfo.

Overrides:
equals in class java.lang.Object
Parameters:
obj - The object to compare against this ListenerInfo.
Returns:
true if the other object is a ListenerInfo object and both objects refer to the same listener for a given addition and removal life cycle.

hashCode

int hashCode()
Returns the hash code for this ListenerInfo.

Overrides:
hashCode in class java.lang.Object
Returns:
The hash code of this ListenerInfo.

OSGi™ Service Platform
Core Specification

Release 4 Version 4.3

Copyright © OSGi Alliance (2000, 2012). All Rights Reserved. Licensed under the OSGi Specification License, Version 2.0