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 43175 Details for
Bug 144783
Filter specified in ServiceTracker's constructor
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]
Patch of ServiceTracker of listener filter modification
ServiceTrackerFilter_060531_patch.txt (text/plain), 2.30 KB, created by
Ikuo Yamasaki
on 2006-05-31 17:24:10 EDT
(
hide
)
Description:
Patch of ServiceTracker of listener filter modification
Filename:
MIME Type:
Creator:
Ikuo Yamasaki
Created:
2006-05-31 17:24:10 EDT
Size:
2.30 KB
patch
obsolete
>### Eclipse Workspace Patch 1.0 >#P org.eclipse.osgi >Index: osgi/src/org/osgi/util/tracker/ServiceTracker.java >=================================================================== >RCS file: /cvsroot/eclipse/org.eclipse.osgi/osgi/src/org/osgi/util/tracker/ServiceTracker.java,v >retrieving revision 1.15 >diff -u -r1.15 ServiceTracker.java >--- osgi/src/org/osgi/util/tracker/ServiceTracker.java 15 Nov 2005 22:06:40 -0000 1.15 >+++ osgi/src/org/osgi/util/tracker/ServiceTracker.java 31 May 2006 21:22:25 -0000 >@@ -194,7 +194,7 @@ > this.context = context; > this.trackReference = null; > this.trackClass = null; >- this.listenerFilter = null; >+ this.listenerFilter = filter.toString(); > this.filter = filter; > this.customizer = (customizer == null) ? this : customizer; > if ((context == null) || (filter == null)) { // we throw a NPE here >@@ -255,11 +255,11 @@ > try { > context.addServiceListener(tracked, listenerFilter); > ServiceReference[] references; >- if (listenerFilter == null) { // user supplied filter >+ if (trackClass == null && trackReference == null) { // user supplied filter > references = getInitialReferences(trackAllServices, null, >- filter.toString()); >+ listenerFilter); > } >- else { // constructor supplied filter >+ else { // user supplied no filter > if (trackClass == null) { > references = new ServiceReference[] {trackReference}; > } >@@ -912,31 +912,12 @@ > switch (event.getType()) { > case ServiceEvent.REGISTERED : > case ServiceEvent.MODIFIED : >- if (listenerFilter != null) { // constructor supplied >- // filter > track(reference); > /* > * If the customizer throws an unchecked exception, it > * is safe to let it propagate > */ >- } >- else { // user supplied filter >- if (filter.match(reference)) { >- track(reference); >- /* >- * If the customizer throws an unchecked exception, >- * it is safe to let it propagate >- */ >- } >- else { >- untrack(reference); >- /* >- * If the customizer throws an unchecked exception, >- * it is safe to let it propagate >- */ >- } >- } >- break; >+ break; > case ServiceEvent.UNREGISTERING : > untrack(reference); > /*
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 144783
: 43175