+ public void start(BundleContext bundleContext) {
+ // preferences
+// SystemRootPreferences systemRootPreferences = ThinPreferencesFactory.getInstance().getSystemRootPreferences();
+// bundleContext.registerService(AbstractPreferences.class, systemRootPreferences, new Hashtable<>());
+
+ // Make sure LoggerFinder has been searched for, since it is lazily loaded
+ LoggerFinder.getLoggerFinder();
+
+ // logging
+ bundleContext.registerService(Consumer.class, ThinLoggerFinder.getConfigurationConsumer(),
+ new Hashtable<>(Collections.singletonMap(Constants.SERVICE_PID, "argeo.logging.configuration")));
+ bundleContext.registerService(Flow.Publisher.class, ThinLoggerFinder.getLogEntryPublisher(),
+ new Hashtable<>(Collections.singletonMap(Constants.SERVICE_PID, "argeo.logging.publisher")));
+
+ osgiBoot = new OsgiBoot(bundleContext);
+ osgiBoot.bootstrap(config);
+
+ }
+
+ public void update() {
+ Objects.requireNonNull(osgiBoot);
+ osgiBoot.update();
+ }
+
+ public void stop(BundleContext bundleContext) {
+// if (loggingConfigurationSr != null)
+// try {
+// loggingConfigurationSr.unregister();
+// } catch (Exception e) {
+// // silent
+// }
+// if (logEntryPublisherSr != null)
+// try {
+// logEntryPublisherSr.unregister();
+// } catch (Exception e) {
+// // silent
+// }
+ }
+