Skip to content

Commit

Permalink
Close all trackers and clear the map on PlexusFramework close
Browse files Browse the repository at this point in the history
(cherry picked from commit c95adfa)
  • Loading branch information
laeubi authored and eclipse-tycho-bot committed Apr 27, 2024
1 parent d675e8d commit 007d0fc
Showing 1 changed file with 6 additions and 4 deletions.
Expand Up @@ -62,7 +62,7 @@ class PlexusConnectFramework //
private final ClassRealm realm;
final PlexusFrameworkConnectServiceFactory factory;
final boolean foreign;
private ServiceTracker<LogReaderService, LogReaderService> serviceTracker;
private ServiceTracker<LogReaderService, LogReaderService> logReaderServiceTracker;
private String storagePath;

PlexusConnectFramework(Framework framework, Logger logger, PlexusFrameworkConnectServiceFactory factory,
Expand Down Expand Up @@ -336,7 +336,7 @@ private static boolean isOnlyDebug(LogEntry entry) {
@Override
public void start(BundleContext context) {
context.addFrameworkListener(this);
serviceTracker = new ServiceTracker<>(context, LogReaderService.class, new ServiceTrackerCustomizer<>() {
logReaderServiceTracker = new ServiceTracker<>(context, LogReaderService.class, new ServiceTrackerCustomizer<>() {

@Override
public LogReaderService addingService(ServiceReference<LogReaderService> reference) {
Expand All @@ -357,12 +357,14 @@ public void removedService(ServiceReference<LogReaderService> reference, LogRead
context.ungetService(reference);
}
});
serviceTracker.open();
logReaderServiceTracker.open();
}

@Override
public void stop(BundleContext context) {
context.removeFrameworkListener(this);
serviceTracker.close();
logReaderServiceTracker.close();
trackerMap.values().forEach(ServiceTracker::close);
trackerMap.clear();
}
}

0 comments on commit 007d0fc

Please sign in to comment.