Download
Getting Started
Members
Projects
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
More
Community
Marketplace
Events
Planet Eclipse
Newsletter
Videos
Participate
Report a Bug
Forums
Mailing Lists
Wiki
IRC
How to Contribute
Working Groups
Automotive
Internet of Things
LocationTech
Long-Term Support
PolarSys
Science
OpenMDM
Toggle navigation
Bugzilla – Attachment 82578 Details for
Bug 202278
[eventadmin] Remove event adapters
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
Log In
[x]
|
Terms of Use
|
Copyright Agent
Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read
this important communication.
[patch]
org.eclipse.equinox.event.patch
clipboard.txt (text/plain), 38.99 KB, created by
Chris Aniszczyk
on 2007-11-09 16:51:48 EST
(
hide
)
Description:
org.eclipse.equinox.event.patch
Filename:
MIME Type:
Creator:
Chris Aniszczyk
Created:
2007-11-09 16:51:48 EST
Size:
38.99 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.equinox.event >Index: src/org/eclipse/equinox/event/mapper/FrameworkEventAdapter.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.equinox.event/src/org/eclipse/equinox/event/mapper/FrameworkEventAdapter.java,v >retrieving revision 1.2 >diff -u -r1.2 FrameworkEventAdapter.java >--- src/org/eclipse/equinox/event/mapper/FrameworkEventAdapter.java 24 Oct 2007 16:47:31 -0000 1.2 >+++ src/org/eclipse/equinox/event/mapper/FrameworkEventAdapter.java 9 Nov 2007 21:49:36 -0000 >@@ -22,11 +22,11 @@ > */ > public class FrameworkEventAdapter extends EventAdapter { > // constants for Event topic substring >- public static final String HEADER = "org/osgi/framework/FrameworkEvent"; >- public static final String STARTLEVEL_CHANGED = "STARTLEVEL_CHANGED"; >- public static final String STARTED = "STARTED"; >- public static final String PACKAGES_REFRESHED = "PACKAGES_REFRESHED"; >- public static final String ERROR = "ERROR"; >+ public static final String HEADER = "org/osgi/framework/FrameworkEvent"; //$NON-NLS-1$ >+ public static final String STARTLEVEL_CHANGED = "STARTLEVEL_CHANGED"; //$NON-NLS-1$ >+ public static final String STARTED = "STARTED"; //$NON-NLS-1$ >+ public static final String PACKAGES_REFRESHED = "PACKAGES_REFRESHED"; //$NON-NLS-1$ >+ public static final String ERROR = "ERROR"; //$NON-NLS-1$ > protected FrameworkEvent event; > > public FrameworkEventAdapter(FrameworkEvent event, EventAdmin eventAdmin) { >Index: src/org/eclipse/equinox/event/mapper/WireAdminEventAdapter.java >=================================================================== >RCS file: src/org/eclipse/equinox/event/mapper/WireAdminEventAdapter.java >diff -N src/org/eclipse/equinox/event/mapper/WireAdminEventAdapter.java >--- src/org/eclipse/equinox/event/mapper/WireAdminEventAdapter.java 24 Oct 2007 16:47:31 -0000 1.2 >+++ /dev/null 1 Jan 1970 00:00:00 -0000 >@@ -1,107 +0,0 @@ >-/******************************************************************************* >- * Copyright (c) 2005, 2007 IBM Corporation. >- * All rights reserved. This program and the accompanying materials >- * are made available under the terms of the Eclipse Public License v1.0 >- * which accompanies this distribution, and is available at >- * http://www.eclipse.org/legal/epl-v10.html >- * >- * Contributors: >- * IBM Corporation - initial API and implementation >- *******************************************************************************/ >-package org.eclipse.equinox.event.mapper; >- >-import java.util.Hashtable; >-import org.osgi.framework.ServiceReference; >-import org.osgi.service.event.Event; >-import org.osgi.service.event.EventAdmin; >-import org.osgi.service.wireadmin.Wire; >-import org.osgi.service.wireadmin.WireAdminEvent; >- >-/** >- * @version $Revision: 1.2 $ >- */ >-public class WireAdminEventAdapter extends EventAdapter { >- // constants for Event topic substring >- public static final String TOPIC = "org/osgi/service/wireadmin/WireAdminEvent"; >- public static final String WIRE_CREATED = "WIRE_CREATED"; >- public static final String WIRE_CONNECTED_T = "WIRE_CONNECTED"; >- public static final String WIRE_UPDATED = "WIRE_UPDATED"; >- public static final String WIRE_TRACE = "WIRE_TRACE"; >- public static final String WIRE_DISCONNECTED = "WIRE_DISCONNECTED"; >- public static final String WIRE_DELETED = "WIRE_DELETED"; >- public static final String PRODUCER_EXCEPTION = "PRODUCER_EXCEPTION"; >- public static final String CONSUMER_EXCEPTION = "CONSUMER_EXCEPTION"; >- // constants for Event properties >- public static final String WIRE = "wire"; >- public static final String WIRE_FLAVORS = "wire.flavors"; >- public static final String WIRE_SCOPE = "wire.scope"; >- public static final String WIRE_CONNECTED_P = "wire.connected"; >- public static final String WIRE_VALID = "wire.valid"; >- private WireAdminEvent event; >- >- public WireAdminEventAdapter(WireAdminEvent event, EventAdmin admin) { >- super(admin); >- this.event = event; >- } >- >- /** >- * @see org.eclipse.equinox.event.mapper.EventAdapter#convert() >- */ >- public Event convert() { >- String typename = null; >- switch (event.getType()) { >- case WireAdminEvent.WIRE_CONNECTED : >- typename = WIRE_CONNECTED_T; >- break; >- case WireAdminEvent.WIRE_CREATED : >- typename = WIRE_CREATED; >- break; >- case WireAdminEvent.WIRE_UPDATED : >- typename = WIRE_UPDATED; >- break; >- case WireAdminEvent.WIRE_DELETED : >- typename = WIRE_DELETED; >- break; >- case WireAdminEvent.WIRE_DISCONNECTED : >- typename = WIRE_DISCONNECTED; >- break; >- case WireAdminEvent.WIRE_TRACE : >- typename = WIRE_TRACE; >- break; >- case WireAdminEvent.PRODUCER_EXCEPTION : >- typename = PRODUCER_EXCEPTION; >- break; >- case WireAdminEvent.CONSUMER_EXCEPTION : >- typename = CONSUMER_EXCEPTION; >- break; >- default : >- return null; >- } >- String topic = TOPIC + Constants.TOPIC_SEPARATOR + typename; >- Hashtable properties = new Hashtable(); >- Throwable t = event.getThrowable(); >- if (t != null) { >- putExceptionProperties(properties, t); >- } >- ServiceReference ref = event.getServiceReference(); >- if (ref == null) { >- throw new RuntimeException("WireAdminEvent's getServiceReference() returns null."); >- } >- putServiceReferenceProperties(properties, ref); >- Wire wire = event.getWire(); >- if (wire != null) { >- properties.put(WIRE, wire); >- if (wire.getFlavors() != null) { >- properties.put(WIRE_FLAVORS, classes2strings(wire.getFlavors())); >- } >- if (wire.getScope() != null) { >- properties.put(WIRE_SCOPE, wire.getScope()); >- } >- properties.put(WIRE_CONNECTED_P, new Boolean(wire.isConnected())); >- properties.put(WIRE_VALID, new Boolean(wire.isValid())); >- } >- properties.put(Constants.EVENT, event); >- Event converted = new Event(topic, properties); >- return converted; >- } >-} >\ No newline at end of file >Index: src/org/eclipse/equinox/event/mapper/EventAdapter.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.equinox.event/src/org/eclipse/equinox/event/mapper/EventAdapter.java,v >retrieving revision 1.2 >diff -u -r1.2 EventAdapter.java >--- src/org/eclipse/equinox/event/mapper/EventAdapter.java 24 Oct 2007 16:47:31 -0000 1.2 >+++ src/org/eclipse/equinox/event/mapper/EventAdapter.java 9 Nov 2007 21:49:36 -0000 >@@ -77,11 +77,11 @@ > properties.put(Constants.SERVICE_ID, ref.getProperty(org.osgi.framework.Constants.SERVICE_ID)); > Object o = ref.getProperty(org.osgi.framework.Constants.SERVICE_PID); > if ((o != null) && (o instanceof String)) { >- properties.put(Constants.SERVICE_PID, (String) o); >+ properties.put(Constants.SERVICE_PID, o); > } > Object o2 = ref.getProperty(org.osgi.framework.Constants.OBJECTCLASS); > if ((o2 != null) && (o2 instanceof String[])) { >- properties.put(Constants.SERVICE_OBJECTCLASS, (String[]) o2); >+ properties.put(Constants.SERVICE_OBJECTCLASS, o2); > } > } > >Index: src/org/eclipse/equinox/event/mapper/ServiceEventAdapter.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.equinox.event/src/org/eclipse/equinox/event/mapper/ServiceEventAdapter.java,v >retrieving revision 1.3 >diff -u -r1.3 ServiceEventAdapter.java >--- src/org/eclipse/equinox/event/mapper/ServiceEventAdapter.java 24 Oct 2007 16:47:31 -0000 1.3 >+++ src/org/eclipse/equinox/event/mapper/ServiceEventAdapter.java 9 Nov 2007 21:49:36 -0000 >@@ -22,10 +22,10 @@ > */ > public class ServiceEventAdapter extends EventAdapter { > // constants for Event topic substring >- public static final String HEADER = "org/osgi/framework/ServiceEvent"; >- public static final String UNREGISTERING = "UNREGISTERING"; >- public static final String MODIFIED = "MODIFIED"; >- public static final String REGISTERED = "REGISTERED"; >+ public static final String HEADER = "org/osgi/framework/ServiceEvent"; //$NON-NLS-1$ >+ public static final String UNREGISTERING = "UNREGISTERING"; //$NON-NLS-1$ >+ public static final String MODIFIED = "MODIFIED"; //$NON-NLS-1$ >+ public static final String REGISTERED = "REGISTERED"; //$NON-NLS-1$ > private ServiceEvent event; > > public ServiceEventAdapter(ServiceEvent event, EventAdmin eventAdmin) { >Index: src/org/eclipse/equinox/event/mapper/Constants.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.equinox.event/src/org/eclipse/equinox/event/mapper/Constants.java,v >retrieving revision 1.1 >diff -u -r1.1 Constants.java >--- src/org/eclipse/equinox/event/mapper/Constants.java 26 Jul 2006 18:04:12 -0000 1.1 >+++ src/org/eclipse/equinox/event/mapper/Constants.java 9 Nov 2007 21:49:36 -0000 >@@ -1,5 +1,5 @@ > /******************************************************************************* >- * Copyright (c) 2005 IBM Corporation. >+ * Copyright (c) 2005, 2007 IBM Corporation. > * All rights reserved. This program and the accompanying materials > * are made available under the terms of the Eclipse Public License v1.0 > * which accompanies this distribution, and is available at >@@ -16,18 +16,18 @@ > public interface Constants { > // constants for Event common properties; event specific properties are > // defined in the corresponding event adapter. >- public static final String BUNDLE = "bundle"; >- public static final String BUNDLE_ID = "bundle.id"; >- public static final String BUNDLE_SYMBOLICNAME = "bundle.symbolicName"; >- public static final String EVENT = "event"; >- public static final String EXCEPTION = "exception"; >- public static final String EXCEPTION_CLASS = "exception.class"; >- public static final String EXCEPTION_MESSAGE = "exception.message"; >- public static final String MESSAGE = "message"; >- public static final String SERVICE = "service"; >- public static final String SERVICE_ID = "service.id"; >- public static final String SERVICE_OBJECTCLASS = "service.objectClass"; >- public static final String SERVICE_PID = "service.pid"; >- public static final String TIMESTAMP = "timestamp"; >- public static final char TOPIC_SEPARATOR = '/'; >+ public static final String BUNDLE = "bundle"; //$NON-NLS-1$ >+ public static final String BUNDLE_ID = "bundle.id"; //$NON-NLS-1$ >+ public static final String BUNDLE_SYMBOLICNAME = "bundle.symbolicName"; //$NON-NLS-1$ >+ public static final String EVENT = "event"; //$NON-NLS-1$ >+ public static final String EXCEPTION = "exception"; //$NON-NLS-1$ >+ public static final String EXCEPTION_CLASS = "exception.class"; //$NON-NLS-1$ >+ public static final String EXCEPTION_MESSAGE = "exception.message"; //$NON-NLS-1$ >+ public static final String MESSAGE = "message"; //$NON-NLS-1$ >+ public static final String SERVICE = "service"; //$NON-NLS-1$ >+ public static final String SERVICE_ID = "service.id"; //$NON-NLS-1$ >+ public static final String SERVICE_OBJECTCLASS = "service.objectClass"; //$NON-NLS-1$ >+ public static final String SERVICE_PID = "service.pid"; //$NON-NLS-1$ >+ public static final String TIMESTAMP = "timestamp"; //$NON-NLS-1$ >+ public static final char TOPIC_SEPARATOR = '/'; > } >\ No newline at end of file >Index: src/org/eclipse/equinox/event/mapper/LogReaderServiceTracker.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.equinox.event/src/org/eclipse/equinox/event/mapper/LogReaderServiceTracker.java,v >retrieving revision 1.1 >diff -u -r1.1 LogReaderServiceTracker.java >--- src/org/eclipse/equinox/event/mapper/LogReaderServiceTracker.java 26 Jul 2006 18:04:12 -0000 1.1 >+++ src/org/eclipse/equinox/event/mapper/LogReaderServiceTracker.java 9 Nov 2007 21:49:36 -0000 >@@ -1,5 +1,5 @@ > /******************************************************************************* >- * Copyright (c) 2005 IBM Corporation. >+ * Copyright (c) 2005, 2007 IBM Corporation. > * All rights reserved. This program and the accompanying materials > * are made available under the terms of the Eclipse Public License v1.0 > * which accompanies this distribution, and is available at >@@ -20,34 +20,29 @@ > * @version $Revision: 1.1 $ > */ > public class LogReaderServiceTracker extends ServiceTracker { >- private final LogReaderServiceListener listener; >- private ServiceReference reference; >+ private final LogReaderServiceListener listener; >+ private ServiceReference reference; > >- public LogReaderServiceTracker(BundleContext context, >- LogReaderServiceListener listener) { >+ public LogReaderServiceTracker(BundleContext context, LogReaderServiceListener listener) { > super(context, LogReaderService.class.getName(), null); > this.listener = listener; > } > >- public Object addingService(ServiceReference reference) { >- Object object = super.addingService(reference); >- if ((object != null) && (this.reference == null) >- && (object instanceof LogReaderService)) { >- this.reference = reference; >- listener.logReaderServiceAdding(reference, >- (LogReaderService) object); >+ public Object addingService(ServiceReference ref) { >+ Object object = super.addingService(ref); >+ if ((object != null) && (this.reference == null) && (object instanceof LogReaderService)) { >+ this.reference = ref; >+ listener.logReaderServiceAdding(ref, (LogReaderService) object); > } > return object; > } > >- public void removedService(ServiceReference reference, Object service) { >- if ((service != null) && (this.reference.equals(reference)) >- && (service instanceof LogReaderService)) { >- listener.logReaderServiceRemoved(reference, >- (LogReaderService) service); >+ public void removedService(ServiceReference ref, Object service) { >+ if ((service != null) && (this.reference.equals(ref)) && (service instanceof LogReaderService)) { >+ listener.logReaderServiceRemoved(ref, (LogReaderService) service); > this.reference = null; > } >- super.removedService(reference, service); >+ super.removedService(ref, service); > //this method calls ungetService() > } > } >\ No newline at end of file >Index: src/org/eclipse/equinox/event/mapper/UserAdminEventAdapter.java >=================================================================== >RCS file: src/org/eclipse/equinox/event/mapper/UserAdminEventAdapter.java >diff -N src/org/eclipse/equinox/event/mapper/UserAdminEventAdapter.java >--- src/org/eclipse/equinox/event/mapper/UserAdminEventAdapter.java 24 Oct 2007 16:47:31 -0000 1.2 >+++ /dev/null 1 Jan 1970 00:00:00 -0000 >@@ -1,79 +0,0 @@ >-/******************************************************************************* >- * Copyright (c) 2005, 2007 IBM Corporation. >- * All rights reserved. This program and the accompanying materials >- * are made available under the terms of the Eclipse Public License v1.0 >- * which accompanies this distribution, and is available at >- * http://www.eclipse.org/legal/epl-v10.html >- * >- * Contributors: >- * IBM Corporation - initial API and implementation >- *******************************************************************************/ >- >-package org.eclipse.equinox.event.mapper; >- >-import java.util.Hashtable; >-import org.osgi.framework.ServiceReference; >-import org.osgi.service.event.Event; >-import org.osgi.service.event.EventAdmin; >-import org.osgi.service.useradmin.Role; >-import org.osgi.service.useradmin.UserAdminEvent; >- >-/** >- * @version $Revision: 1.2 $ >- */ >-public class UserAdminEventAdapter extends EventAdapter { >- // constants for Event topic substring >- public static final String TOPIC = "org/osgi/service/useradmin/UserAdminEvent"; >- public static final String ROLE_CREATED = "ROLE_CREATED"; >- public static final String ROLE_CHANGED = "ROLE_CHANGED"; >- public static final String ROLE_REMOVED = "ROLE_REMOVED"; >- // constants for Event properties >- public static final String ROLE = "role"; >- public static final String ROLE_NAME = "role.name"; >- public static final String ROLE_TYPE = "role.type"; >- private UserAdminEvent event; >- >- public UserAdminEventAdapter(UserAdminEvent event, EventAdmin eventAdmin) { >- super(eventAdmin); >- this.event = event; >- } >- >- /** >- * @see org.eclipse.equinox.event.mapper.EventAdapter#convert() >- */ >- public Event convert() { >- String typename = null; >- switch (event.getType()) { >- case UserAdminEvent.ROLE_CREATED : >- typename = ROLE_CREATED; >- break; >- case UserAdminEvent.ROLE_CHANGED : >- typename = ROLE_CHANGED; >- break; >- case UserAdminEvent.ROLE_REMOVED : >- typename = ROLE_REMOVED; >- break; >- default : >- return null; >- } >- String topic = TOPIC + Constants.TOPIC_SEPARATOR + typename; >- Hashtable properties = new Hashtable(); >- ServiceReference ref = event.getServiceReference(); >- if (ref == null) { >- throw new RuntimeException("UserAdminEvent's getServiceReference() returns null."); >- } >- putServiceReferenceProperties(properties, ref); >- Role role = event.getRole(); >- if (role == null) { >- throw new RuntimeException("UserAdminEvent's getRole() returns null."); >- } >- if (role != null) { >- properties.put(ROLE, role); >- properties.put(ROLE_NAME, role.getName()); >- properties.put(ROLE_TYPE, new Integer(role.getType())); >- } >- properties.put(Constants.EVENT, event); >- Event converted = new Event(topic, properties); >- return converted; >- } >-} >\ No newline at end of file >Index: src/org/eclipse/equinox/event/mapper/EventRedeliverer.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.equinox.event/src/org/eclipse/equinox/event/mapper/EventRedeliverer.java,v >retrieving revision 1.1 >diff -u -r1.1 EventRedeliverer.java >--- src/org/eclipse/equinox/event/mapper/EventRedeliverer.java 26 Jul 2006 18:04:12 -0000 1.1 >+++ src/org/eclipse/equinox/event/mapper/EventRedeliverer.java 9 Nov 2007 21:49:36 -0000 >@@ -1,5 +1,5 @@ > /******************************************************************************* >- * Copyright (c) 2005 IBM Corporation. >+ * Copyright (c) 2005, 2007 IBM Corporation. > * All rights reserved. This program and the accompanying materials > * are made available under the terms of the Eclipse Public License v1.0 > * which accompanies this distribution, and is available at >@@ -11,81 +11,32 @@ > > package org.eclipse.equinox.event.mapper; > >-import java.util.Dictionary; >-import java.util.Hashtable; > import org.osgi.framework.*; >-import org.osgi.service.cm.ConfigurationEvent; >-import org.osgi.service.cm.ConfigurationListener; > import org.osgi.service.event.EventAdmin; >-import org.osgi.service.log.LogEntry; >-import org.osgi.service.log.LogListener; >-import org.osgi.service.log.LogReaderService; >-import org.osgi.service.upnp.UPnPDevice; >-import org.osgi.service.upnp.UPnPEventListener; >-import org.osgi.service.upnp.UPnPService; >-import org.osgi.service.useradmin.UserAdminEvent; >-import org.osgi.service.useradmin.UserAdminListener; >-import org.osgi.service.wireadmin.WireAdminEvent; >-import org.osgi.service.wireadmin.WireAdminListener; >-import org.osgi.service.wireadmin.WireConstants; > import org.osgi.util.tracker.ServiceTracker; > > /** > * Main class for redeliver special events like FrameworkEvents via EventAdmin. > * >- * > * @version $Revision: 1.1 $ > */ >-public class EventRedeliverer implements FrameworkListener, BundleListener, >- ServiceListener, LogListener, LogReaderServiceListener, >- ConfigurationListener, WireAdminListener, UPnPEventListener, >- UserAdminListener { >- private ServiceTracker eventAdminTracker; >- private LogReaderServiceTracker logTracker; >- private LogReaderService reader; >- private final static boolean DEBUG = false; >- private BundleContext bc; >- private ServiceRegistration configurationListenerReg; >- private ServiceRegistration wireAdminListenerReg; >- private ServiceRegistration upnpEventListenerReg; >- private ServiceRegistration userAdminListenerReg; >+public class EventRedeliverer implements FrameworkListener, BundleListener, ServiceListener { >+ private ServiceTracker eventAdminTracker; >+ private final static boolean DEBUG = false; >+ private BundleContext bc; > > public EventRedeliverer(BundleContext bc) { > this.bc = bc; > } > > public void close() { >- if (logTracker != null) { >- logTracker.close(); >- logTracker = null; >- } > if (eventAdminTracker != null) { > eventAdminTracker.close(); > eventAdminTracker = null; > } >- if (reader != null) { >- reader.removeLogListener(this); >- } >- reader = null; > bc.removeFrameworkListener(this); > bc.removeBundleListener(this); > bc.removeServiceListener(this); >- if (configurationListenerReg != null) { >- configurationListenerReg.unregister(); >- configurationListenerReg = null; >- } >- if (wireAdminListenerReg != null) { >- wireAdminListenerReg.unregister(); >- wireAdminListenerReg = null; >- } >- if (upnpEventListenerReg != null) { >- upnpEventListenerReg.unregister(); >- upnpEventListenerReg = null; >- } >- if (userAdminListenerReg != null) { >- userAdminListenerReg.unregister(); >- userAdminListenerReg = null; >- } > } > > /** >@@ -94,54 +45,13 @@ > */ > public void open() { > // open ServiceTracker for EventAdmin >- eventAdminTracker = new ServiceTracker(bc, EventAdmin.class.getName(), >- null); >+ eventAdminTracker = new ServiceTracker(bc, EventAdmin.class.getName(), null); > eventAdminTracker.open(); >- // open ServiceTracker for LogReaderService >- logTracker = new LogReaderServiceTracker(bc, this); >- logTracker.open(); >+ > // add legacy event listener for framework level event > bc.addFrameworkListener(this); > bc.addBundleListener(this); > bc.addServiceListener(this); >- // register configurationListener >- configurationListenerReg = bc.registerService( >- ConfigurationListener.class.getName(), this, null); >- // register WireAdminListener >- Hashtable ht = new Hashtable(); >- // create an event mask to receive all the types of WireAdminEvent >- Integer mask = new Integer(WireAdminEvent.WIRE_CONNECTED >- | WireAdminEvent.WIRE_CREATED | WireAdminEvent.WIRE_DELETED >- | WireAdminEvent.WIRE_DISCONNECTED | WireAdminEvent.WIRE_TRACE >- | WireAdminEvent.WIRE_UPDATED >- | WireAdminEvent.CONSUMER_EXCEPTION >- | WireAdminEvent.PRODUCER_EXCEPTION); >- ht.put(WireConstants.WIREADMIN_EVENTS, mask); >- wireAdminListenerReg = bc.registerService(WireAdminListener.class >- .getName(), this, ht); >- // register UPnPEventListener >- // create a Filter object to receive all the UPnP events >- Hashtable ht2 = new Hashtable(); >- Filter filter = null; >- try { >- filter = bc.createFilter("(|(|(" + UPnPDevice.TYPE + "=*)(" >- + UPnPDevice.ID + "=*))(|(" + UPnPService.TYPE + "=*)(" >- + UPnPService.ID + "=*)))"); >- } >- catch (InvalidSyntaxException e) { >- System.out >- .println("Exception thrown while trying to create Filter. " >- + e); >- e.printStackTrace(System.out); >- } >- if (filter != null) { >- ht2.put(UPnPEventListener.UPNP_FILTER, filter); >- upnpEventListenerReg = bc.registerService(UPnPEventListener.class >- .getName(), this, ht2); >- } >- // register usrAdminListener >- userAdminListenerReg = bc.registerService(UserAdminListener.class >- .getName(), this, null); > } > > private EventAdmin getEventAdmin() { >@@ -158,16 +68,14 @@ > EventAdmin eventAdmin = getEventAdmin(); > if (eventAdmin != null) { > (new FrameworkEventAdapter(event, eventAdmin)).redeliver(); >- } >- else { >+ } else { > printNoEventAdminError(); > } > } > > private void printNoEventAdminError() { > if (DEBUG) { >- System.out.println(this.getClass().getName() >- + ": Cannot find the EventAdmin."); >+ System.out.println(this.getClass().getName() + ": Cannot find the EventAdmin."); //$NON-NLS-1$ > } > } > >@@ -179,8 +87,7 @@ > EventAdmin eventAdmin = getEventAdmin(); > if (eventAdmin != null) { > (new BundleEventAdapter(event, eventAdmin)).redeliver(); >- } >- else { >+ } else { > printNoEventAdminError(); > } > } >@@ -193,115 +100,9 @@ > EventAdmin eventAdmin = getEventAdmin(); > if (eventAdmin != null) { > (new ServiceEventAdapter(event, eventAdmin)).redeliver(); >- } >- else { >- printNoEventAdminError(); >- } >- } >- >- /** >- * @param entry >- * @see org.osgi.service.log.LogListener#logged(org.osgi.service.log.LogEntry) >- */ >- public void logged(LogEntry entry) { >- EventAdmin eventAdmin = getEventAdmin(); >- if (eventAdmin != null) { >- (new LogEntryAdapter(entry, eventAdmin)).redeliver(); >- } >- else { >+ } else { > printNoEventAdminError(); > } > } > >- /** >- * @param reference >- * @param service >- * @see org.eclipse.equinox.event.mapper.LogReaderServiceListener#logReaderServiceAdding(org.osgi.framework.ServiceReference, >- * org.osgi.service.log.LogReaderService) >- */ >- public void logReaderServiceAdding(ServiceReference reference, >- LogReaderService service) { >- if (reader != null) { >- return; >- } >- reader = service; >- reader.addLogListener(this); >- } >- >- /** >- * @param reference >- * @param service >- * @see org.eclipse.equinox.event.mapper.LogReaderServiceListener#logReaderServiceRemoved(org.osgi.framework.ServiceReference, >- * org.osgi.service.log.LogReaderService) >- */ >- public void logReaderServiceRemoved(ServiceReference reference, >- LogReaderService service) { >- if ((reader != null) && reader.equals(service)) { >- reader.removeLogListener(this); >- reader = null; >- } >- // ungetService() will be called after returning to >- // LogReaderServiceTracker's removedService() method. >- } >- >- /** >- * @param event >- * @see org.osgi.service.cm.ConfigurationListener#configurationEvent(org.osgi.service.cm.ConfigurationEvent) >- */ >- public void configurationEvent(ConfigurationEvent event) { >- EventAdmin eventAdmin = getEventAdmin(); >- if (eventAdmin != null) { >- (new ConfigurationEventAdapter(event, eventAdmin)).redeliver(); >- } >- else { >- printNoEventAdminError(); >- } >- } >- >- /** >- * @param event >- * @see org.osgi.service.wireadmin.WireAdminListener#wireAdminEvent(org.osgi.service.wireadmin.WireAdminEvent) >- */ >- public void wireAdminEvent(WireAdminEvent event) { >- EventAdmin eventAdmin = getEventAdmin(); >- if (eventAdmin != null) { >- (new WireAdminEventAdapter(event, eventAdmin)).redeliver(); >- } >- else { >- printNoEventAdminError(); >- } >- } >- >- /** >- * @param deviceId >- * @param serviceId >- * @param events >- * @see org.osgi.service.upnp.UPnPEventListener#notifyUPnPEvent(java.lang.String, >- * java.lang.String, java.util.Dictionary) >- */ >- public void notifyUPnPEvent(String deviceId, String serviceId, >- Dictionary events) { >- EventAdmin eventAdmin = getEventAdmin(); >- if (eventAdmin != null) { >- (new UPnPEventAdapter(deviceId, serviceId, events, eventAdmin)) >- .redeliver(); >- } >- else { >- printNoEventAdminError(); >- } >- } >- >- /** >- * @param event >- * @see org.osgi.service.useradmin.UserAdminListener#roleChanged(org.osgi.service.useradmin.UserAdminEvent) >- */ >- public void roleChanged(UserAdminEvent event) { >- EventAdmin eventAdmin = getEventAdmin(); >- if (eventAdmin != null) { >- (new UserAdminEventAdapter(event, eventAdmin)).redeliver(); >- } >- else { >- printNoEventAdminError(); >- } >- } > } >\ No newline at end of file >Index: src/org/eclipse/equinox/event/mapper/UPnPEventAdapter.java >=================================================================== >RCS file: src/org/eclipse/equinox/event/mapper/UPnPEventAdapter.java >diff -N src/org/eclipse/equinox/event/mapper/UPnPEventAdapter.java >--- src/org/eclipse/equinox/event/mapper/UPnPEventAdapter.java 24 Oct 2007 16:47:31 -0000 1.2 >+++ /dev/null 1 Jan 1970 00:00:00 -0000 >@@ -1,57 +0,0 @@ >-/******************************************************************************* >- * Copyright (c) 2005, 2007 IBM Corporation. >- * All rights reserved. This program and the accompanying materials >- * are made available under the terms of the Eclipse Public License v1.0 >- * which accompanies this distribution, and is available at >- * http://www.eclipse.org/legal/epl-v10.html >- * >- * Contributors: >- * IBM Corporation - initial API and implementation >- *******************************************************************************/ >- >-package org.eclipse.equinox.event.mapper; >- >-import java.util.Dictionary; >-import java.util.Hashtable; >-import org.osgi.service.event.Event; >-import org.osgi.service.event.EventAdmin; >- >-/** >- * @version $Revision: 1.2 $ >- */ >-public class UPnPEventAdapter extends EventAdapter { >- // constants for Event topic substring >- public static final String TOPIC = "org/osgi/service/upnp/UPnPEvent"; >- // constants for Event properties >- public static final String UPNP_DEVICEID = "upnp.deviceId"; >- public static final String UPNP_SERVICEID = "upnp.serviceId"; >- public static final String UPNP_EVENTS = "upnp.events"; >- private String deviceId; >- private String serviceId; >- private Dictionary events; >- >- public UPnPEventAdapter(String deviceId, String serviceId, Dictionary events, EventAdmin eventAdmin) { >- super(eventAdmin); >- this.deviceId = deviceId; >- this.serviceId = serviceId; >- this.events = events; >- } >- >- /** >- * @see org.eclipse.equinox.event.mapper.EventAdapter#convert() >- */ >- public Event convert() { >- Hashtable properties = new Hashtable(); >- if (deviceId != null) { >- properties.put(UPNP_DEVICEID, deviceId); >- } >- if (serviceId != null) { >- properties.put(UPNP_SERVICEID, serviceId); >- } >- if (events != null) { >- properties.put(UPNP_EVENTS, events); >- } >- Event converted = new Event(TOPIC, properties); >- return converted; >- } >-} >\ No newline at end of file >Index: src/org/eclipse/equinox/event/mapper/ConfigurationEventAdapter.java >=================================================================== >RCS file: src/org/eclipse/equinox/event/mapper/ConfigurationEventAdapter.java >diff -N src/org/eclipse/equinox/event/mapper/ConfigurationEventAdapter.java >--- src/org/eclipse/equinox/event/mapper/ConfigurationEventAdapter.java 24 Oct 2007 16:47:31 -0000 1.2 >+++ /dev/null 1 Jan 1970 00:00:00 -0000 >@@ -1,68 +0,0 @@ >-/******************************************************************************* >- * Copyright (c) 2005, 2007 IBM Corporation. >- * All rights reserved. This program and the accompanying materials >- * are made available under the terms of the Eclipse Public License v1.0 >- * which accompanies this distribution, and is available at >- * http://www.eclipse.org/legal/epl-v10.html >- * >- * Contributors: >- * IBM Corporation - initial API and implementation >- *******************************************************************************/ >-package org.eclipse.equinox.event.mapper; >- >-import java.util.Hashtable; >-import org.osgi.framework.ServiceReference; >-import org.osgi.service.cm.ConfigurationEvent; >-import org.osgi.service.event.Event; >-import org.osgi.service.event.EventAdmin; >- >-/** >- * @version $Revision: 1.2 $ >- */ >-public class ConfigurationEventAdapter extends EventAdapter { >- // constants for Event topic substring >- public static final String HEADER = "org/osgi/service/cm/ConfigurationEvent"; >- public static final String CM_UPDATED = "CM_UPDATED"; >- public static final String CM_DELETED = "CM_DELETED"; >- // constants for Event properties >- public static final String CM_FACTORY_PID = "cm.factoryPid"; >- public static final String CM_PID = "cm.pid"; >- private ConfigurationEvent event; >- >- public ConfigurationEventAdapter(ConfigurationEvent event, EventAdmin eventAdmin) { >- super(eventAdmin); >- this.event = event; >- } >- >- /** >- * @see org.eclipse.equinox.event.mapper.EventAdapter#convert() >- */ >- public Event convert() { >- String typename = null; >- switch (event.getType()) { >- case ConfigurationEvent.CM_UPDATED : >- typename = CM_UPDATED; >- break; >- case ConfigurationEvent.CM_DELETED : >- typename = CM_DELETED; >- break; >- default : >- return null; >- } >- String topic = HEADER + Constants.TOPIC_SEPARATOR + typename; >- Hashtable properties = new Hashtable(); >- ServiceReference ref = event.getReference(); >- if (ref == null) { >- throw new RuntimeException("ServiceEvent.getServiceReference() is null"); >- } >- properties.put(CM_PID, event.getPid()); >- if (event.getFactoryPid() != null) { >- properties.put(CM_FACTORY_PID, event.getFactoryPid()); >- } >- putServiceReferenceProperties(properties, ref); >- // assert objectClass includes >- // "org.osgi.service.cm.ConfigurationAdmin" >- Event converted = new Event(topic, properties); >- return converted; >- } >-} >\ No newline at end of file >Index: src/org/eclipse/equinox/event/mapper/LogEntryAdapter.java >=================================================================== >RCS file: src/org/eclipse/equinox/event/mapper/LogEntryAdapter.java >diff -N src/org/eclipse/equinox/event/mapper/LogEntryAdapter.java >--- src/org/eclipse/equinox/event/mapper/LogEntryAdapter.java 24 Oct 2007 16:47:31 -0000 1.2 >+++ /dev/null 1 Jan 1970 00:00:00 -0000 >@@ -1,78 +0,0 @@ >-/******************************************************************************* >- * Copyright (c) 2005, 2007 IBM Corporation. >- * All rights reserved. This program and the accompanying materials >- * are made available under the terms of the Eclipse Public License v1.0 >- * which accompanies this distribution, and is available at >- * http://www.eclipse.org/legal/epl-v10.html >- * >- * Contributors: >- * IBM Corporation - initial API and implementation >- *******************************************************************************/ >- >-package org.eclipse.equinox.event.mapper; >- >-import java.util.Hashtable; >-import org.osgi.framework.Bundle; >-import org.osgi.framework.ServiceReference; >-import org.osgi.service.event.Event; >-import org.osgi.service.event.EventAdmin; >-import org.osgi.service.log.LogEntry; >-import org.osgi.service.log.LogService; >- >-/** >- * @version $Revision: 1.2 $ >- */ >-public class LogEntryAdapter extends EventAdapter { >- // constants for Event topic substring >- public static final String TOPIC = "org/osgi/service/log/LogEntry"; >- // constants for Event properties >- public static final String TIMESTAMP = "timestamp"; >- public static final String MESSAGE = "message"; >- public static final String LOG_LEVEL = "log.level"; >- public static final String LOG_ENTRY = "log.entry"; >- private LogEntry entry; >- >- public LogEntryAdapter(LogEntry entry, EventAdmin eventAdmin) { >- super(eventAdmin); >- this.entry = entry; >- } >- >- /** >- * @see org.eclipse.equinox.event.mapper.EventAdapter#convert() >- */ >- public Event convert() { >- String topic = TOPIC; >- int level = entry.getLevel(); >- switch (level) { >- case LogService.LOG_ERROR : >- case LogService.LOG_WARNING : >- case LogService.LOG_INFO : >- case LogService.LOG_DEBUG : >- break; >- default : >- // other log levels are represented by their decimal value >- topic += Constants.TOPIC_SEPARATOR + level; >- } >- Hashtable properties = new Hashtable(); >- Bundle bundle = entry.getBundle(); >- if (bundle == null) { >- throw new RuntimeException("LogEntry.getBundle() returns null"); >- } >- putBundleProperties(properties, bundle); >- Throwable t = entry.getException(); >- if (t != null) { >- putExceptionProperties(properties, t); >- } >- ServiceReference ref = entry.getServiceReference(); >- if (ref != null) { >- putServiceReferenceProperties(properties, ref); >- } >- properties.put(LOG_ENTRY, entry); >- properties.put(LOG_LEVEL, new Integer(entry.getLevel())); >- if (entry.getMessage() != null) >- properties.put(MESSAGE, entry.getMessage()); >- properties.put(TIMESTAMP, new Long(entry.getTime())); >- Event converted = new Event(topic, properties); >- return converted; >- } >-} >\ No newline at end of file >Index: src/org/eclipse/equinox/event/mapper/BundleEventAdapter.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.equinox.event/src/org/eclipse/equinox/event/mapper/BundleEventAdapter.java,v >retrieving revision 1.2 >diff -u -r1.2 BundleEventAdapter.java >--- src/org/eclipse/equinox/event/mapper/BundleEventAdapter.java 24 Oct 2007 16:47:31 -0000 1.2 >+++ src/org/eclipse/equinox/event/mapper/BundleEventAdapter.java 9 Nov 2007 21:49:36 -0000 >@@ -21,14 +21,14 @@ > */ > public class BundleEventAdapter extends EventAdapter { > // constants for Event topic substring >- public static final String HEADER = "org/osgi/framework/BundleEvent"; >- public static final String INSTALLED = "INSTALLED"; >- public static final String STOPPED = "STOPPED"; >- public static final String STARTED = "STARTED"; >- public static final String UPDATED = "UPDATED"; >- public static final String UNINSTALLED = "UNINSTALLED"; >- public static final String RESOLVED = "RESOLVED"; >- public static final String UNRESOLVED = "UNRESOLVED"; >+ public static final String HEADER = "org/osgi/framework/BundleEvent"; //$NON-NLS-1$ >+ public static final String INSTALLED = "INSTALLED"; //$NON-NLS-1$ >+ public static final String STOPPED = "STOPPED"; //$NON-NLS-1$ >+ public static final String STARTED = "STARTED"; //$NON-NLS-1$ >+ public static final String UPDATED = "UPDATED"; //$NON-NLS-1$ >+ public static final String UNINSTALLED = "UNINSTALLED"; //$NON-NLS-1$ >+ public static final String RESOLVED = "RESOLVED"; //$NON-NLS-1$ >+ public static final String UNRESOLVED = "UNRESOLVED"; //$NON-NLS-1$ > private BundleEvent event; > > public BundleEventAdapter(BundleEvent event, EventAdmin eventAdmin) { >@@ -66,16 +66,15 @@ > break; > default : > // unknown events must be send as their decimal value >- typename = "" + event.getType(); >+ typename = Integer.toString(event.getType()); > } > String topic = HEADER + Constants.TOPIC_SEPARATOR + typename; > Hashtable properties = new Hashtable(); > Bundle bundle = event.getBundle(); > if (bundle == null) { >- throw new RuntimeException("BundleEvent.getBundle() returns null"); >- } else { >- putBundleProperties(properties, bundle); >+ throw new RuntimeException("BundleEvent.getBundle() returns null"); //$NON-NLS-1$ > } >+ putBundleProperties(properties, bundle); > properties.put(Constants.EVENT, event); > Event converted = new Event(topic, properties); > return converted; >Index: META-INF/MANIFEST.MF >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.equinox.event/META-INF/MANIFEST.MF,v >retrieving revision 1.6 >diff -u -r1.6 MANIFEST.MF >--- META-INF/MANIFEST.MF 13 Jul 2007 14:41:19 -0000 1.6 >+++ META-INF/MANIFEST.MF 9 Nov 2007 21:49:36 -0000 >@@ -1,18 +1,14 @@ > Bundle-ManifestVersion: 2 > Bundle-Name: %bundleName >-Bundle-Version: 1.0.200.qualifier >+Bundle-Version: 1.1.0.qualifier > Bundle-SymbolicName: org.eclipse.equinox.event > Bundle-Activator: org.eclipse.equinox.event.Activator > Bundle-Copyright: %bundleCopyright > Import-Package: org.eclipse.osgi.framework.eventmgr;version="1.1.0", > org.eclipse.osgi.util, > org.osgi.framework, >- org.osgi.service.cm, > org.osgi.service.event, > org.osgi.service.log, >- org.osgi.service.upnp, >- org.osgi.service.useradmin, >- org.osgi.service.wireadmin, > org.osgi.util.tracker > Export-Package: org.eclipse.equinox.event; x-internal:=true, > org.eclipse.equinox.event.mapper; x-internal:=true
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 202278
:
82511
|
82578
|
82702