String listenerName = listener.getClass().getName() + "@" + Integer.toHexString(listener.hashCode());
String listenerName = listener.getClass().getName() + "@" + Integer.toHexString(System.identityHashCode(listener));
	public void addServiceListener(ServiceListener listener, String filter) throws InvalidSyntaxException {		checkValid();		if (Debug.DEBUG && Debug.DEBUG_EVENTS) {			String listenerName = listener.getClass().getName() + "@" + Integer.toHexString(listener.hashCode()); //$NON-NLS-1$			Debug.println("addServiceListener[" + bundle + "](" + listenerName + ", \"" + filter + "\")"); //$NON-NLS-1$ //$NON-NLS-2$ //$NON-NLS-3$ //$NON-NLS-4$		}		ServiceListener filteredListener = new FilteredServiceListener(filter, listener, this);		synchronized (framework.serviceEvent) {			if (serviceEvent == null) {				serviceEvent = new EventListeners();				framework.serviceEvent.addListener(this, this);			}			serviceEvent.addListener(listener, filteredListener);		}	}