Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEike Stepper2017-12-28 05:58:35 +0000
committerEike Stepper2017-12-28 05:58:35 +0000
commitccf2d493ec17c106306579cdf5161f95615315b6 (patch)
tree14b3f8610569d882923f80e9a84bc0517399b011 /plugins/org.eclipse.net4j.util
parent6f57f7a1fcf0f12fa640d4f6bccf07fa716e4d72 (diff)
downloadcdo-ccf2d493ec17c106306579cdf5161f95615315b6.tar.gz
cdo-ccf2d493ec17c106306579cdf5161f95615315b6.tar.xz
cdo-ccf2d493ec17c106306579cdf5161f95615315b6.zip
[529259] Fix deprecation warning in OSGiLoggingBridge
https://bugs.eclipse.org/bugs/show_bug.cgi?id=529259
Diffstat (limited to 'plugins/org.eclipse.net4j.util')
-rw-r--r--plugins/org.eclipse.net4j.util/META-INF/MANIFEST.MF62
-rw-r--r--plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/om/log/OSGiLogHandler.java110
-rw-r--r--plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/om/log/OSGiLoggingBridge.java2
3 files changed, 143 insertions, 31 deletions
diff --git a/plugins/org.eclipse.net4j.util/META-INF/MANIFEST.MF b/plugins/org.eclipse.net4j.util/META-INF/MANIFEST.MF
index b702aaf30f..94d4b2ff08 100644
--- a/plugins/org.eclipse.net4j.util/META-INF/MANIFEST.MF
+++ b/plugins/org.eclipse.net4j.util/META-INF/MANIFEST.MF
@@ -1,7 +1,7 @@
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-SymbolicName: org.eclipse.net4j.util;singleton:=true
-Bundle-Version: 3.7.100.qualifier
+Bundle-Version: 3.8.0.qualifier
Bundle-Name: %pluginName
Bundle-Vendor: %providerName
Bundle-Localization: plugin
@@ -15,35 +15,35 @@ Import-Package: org.eclipse.osgi.service.debug;version="[1.0.0,2.0.0)";resolutio
org.osgi.framework;version="[1.3.0,2.0.0)";resolution:=optional,
org.osgi.service.log;version="[1.3.0,2.0.0)";resolution:=optional,
org.osgi.util.tracker;version="[1.3.0,2.0.0)";resolution:=optional
-Export-Package: org.eclipse.net4j.internal.util.bundle;version="3.7.100";x-friends:="org.eclipse.net4j.util.ui,org.eclipse.net4j.tests",
- org.eclipse.net4j.internal.util.container;version="3.7.100";x-internal:=true,
- org.eclipse.net4j.internal.util.factory;version="3.7.100";x-internal:=true,
- org.eclipse.net4j.internal.util.om;version="3.7.100";x-internal:=true,
- org.eclipse.net4j.internal.util.om.pref;version="3.7.100";x-internal:=true,
- org.eclipse.net4j.internal.util.table;version="3.7.100";x-internal:=true,
- org.eclipse.net4j.internal.util.test;version="3.7.100";x-friends:="org.eclipse.net4j.tests",
- org.eclipse.net4j.util;version="3.7.100",
- org.eclipse.net4j.util.cache;version="3.7.100",
- org.eclipse.net4j.util.collection;version="3.7.100",
- org.eclipse.net4j.util.concurrent;version="3.7.100",
- org.eclipse.net4j.util.confirmation;version="3.7.100",
- org.eclipse.net4j.util.container;version="3.7.100",
- org.eclipse.net4j.util.container.delegate;version="3.7.100",
- org.eclipse.net4j.util.event;version="3.7.100",
- org.eclipse.net4j.util.factory;version="3.7.100",
- org.eclipse.net4j.util.fsm;version="3.7.100",
- org.eclipse.net4j.util.io;version="3.7.100",
- org.eclipse.net4j.util.lifecycle;version="3.7.100",
- org.eclipse.net4j.util.om;version="3.7.100",
- org.eclipse.net4j.util.om.log;version="3.7.100",
- org.eclipse.net4j.util.om.monitor;version="3.7.100",
- org.eclipse.net4j.util.om.pref;version="3.7.100",
- org.eclipse.net4j.util.om.trace;version="3.7.100",
- org.eclipse.net4j.util.options;version="3.7.100",
- org.eclipse.net4j.util.properties;version="3.7.100",
- org.eclipse.net4j.util.ref;version="3.7.100",
- org.eclipse.net4j.util.registry;version="3.7.100",
- org.eclipse.net4j.util.security;version="3.7.100",
- org.eclipse.net4j.util.transaction;version="3.7.100"
+Export-Package: org.eclipse.net4j.internal.util.bundle;version="3.8.0";x-friends:="org.eclipse.net4j.util.ui,org.eclipse.net4j.tests",
+ org.eclipse.net4j.internal.util.container;version="3.8.0";x-internal:=true,
+ org.eclipse.net4j.internal.util.factory;version="3.8.0";x-internal:=true,
+ org.eclipse.net4j.internal.util.om;version="3.8.0";x-internal:=true,
+ org.eclipse.net4j.internal.util.om.pref;version="3.8.0";x-internal:=true,
+ org.eclipse.net4j.internal.util.table;version="3.8.0";x-internal:=true,
+ org.eclipse.net4j.internal.util.test;version="3.8.0";x-friends:="org.eclipse.net4j.tests",
+ org.eclipse.net4j.util;version="3.8.0",
+ org.eclipse.net4j.util.cache;version="3.8.0",
+ org.eclipse.net4j.util.collection;version="3.8.0",
+ org.eclipse.net4j.util.concurrent;version="3.8.0",
+ org.eclipse.net4j.util.confirmation;version="3.8.0",
+ org.eclipse.net4j.util.container;version="3.8.0",
+ org.eclipse.net4j.util.container.delegate;version="3.8.0",
+ org.eclipse.net4j.util.event;version="3.8.0",
+ org.eclipse.net4j.util.factory;version="3.8.0",
+ org.eclipse.net4j.util.fsm;version="3.8.0",
+ org.eclipse.net4j.util.io;version="3.8.0",
+ org.eclipse.net4j.util.lifecycle;version="3.8.0",
+ org.eclipse.net4j.util.om;version="3.8.0",
+ org.eclipse.net4j.util.om.log;version="3.8.0",
+ org.eclipse.net4j.util.om.monitor;version="3.8.0",
+ org.eclipse.net4j.util.om.pref;version="3.8.0",
+ org.eclipse.net4j.util.om.trace;version="3.8.0",
+ org.eclipse.net4j.util.options;version="3.8.0",
+ org.eclipse.net4j.util.properties;version="3.8.0",
+ org.eclipse.net4j.util.ref;version="3.8.0",
+ org.eclipse.net4j.util.registry;version="3.8.0",
+ org.eclipse.net4j.util.security;version="3.8.0",
+ org.eclipse.net4j.util.transaction;version="3.8.0"
Eclipse-BuddyPolicy: registered
Automatic-Module-Name: org.eclipse.net4j.util
diff --git a/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/om/log/OSGiLogHandler.java b/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/om/log/OSGiLogHandler.java
new file mode 100644
index 0000000000..63d931f51d
--- /dev/null
+++ b/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/om/log/OSGiLogHandler.java
@@ -0,0 +1,110 @@
+/*
+ * Copyright (c) 2007, 2008, 2010-2012 Eike Stepper (Berlin, Germany) and others.
+ * 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:
+ * Eike Stepper - initial API and implementation
+ */
+package org.eclipse.net4j.util.om.log;
+
+import org.eclipse.net4j.internal.util.om.OSGiBundle;
+import org.eclipse.net4j.util.om.log.OMLogger.Level;
+
+import org.osgi.framework.Bundle;
+import org.osgi.framework.BundleContext;
+import org.osgi.framework.ServiceReference;
+import org.osgi.service.log.LogLevel;
+import org.osgi.service.log.Logger;
+import org.osgi.service.log.LoggerFactory;
+
+/**
+ * A {@link OMLogHandler log handler} that appends log events to the OSGi {@link Logger log service}.
+ *
+ * @author Eike Stepper
+ * @since 3.8
+ */
+public class OSGiLogHandler implements OMLogHandler
+{
+ // @Singleton
+ public static final OSGiLogHandler INSTANCE = new OSGiLogHandler();
+
+ protected OSGiLogHandler()
+ {
+ }
+
+ public void logged(OMLogger logger, Level level, String msg, Throwable t)
+ {
+ try
+ {
+ BundleContext bundleContext = ((OSGiBundle)logger.getBundle()).getBundleContext();
+ logged(bundleContext, level, msg, t);
+ }
+ catch (RuntimeException ignore)
+ {
+ }
+ }
+
+ public void logged(BundleContext bundleContext, Level level, String msg, Throwable t)
+ {
+ Logger logger = getLogger(bundleContext);
+
+ switch (level)
+ {
+ case ERROR:
+ logger.error(msg, t);
+ break;
+
+ case WARN:
+ logger.warn(msg, t);
+ break;
+
+ case INFO:
+ logger.info(msg, t);
+ break;
+
+ case DEBUG:
+ logger.debug(msg, t);
+ break;
+
+ default:
+ throw new IllegalArgumentException("Illegal log level: " + level); //$NON-NLS-1$
+ }
+ }
+
+ @SuppressWarnings({ "rawtypes", "unchecked" })
+ protected Logger getLogger(BundleContext bundleContext)
+ {
+ try
+ {
+ ServiceReference ref = bundleContext.getServiceReference(LoggerFactory.class.getName());
+ LoggerFactory loggerFactory = (LoggerFactory)bundleContext.getService(ref);
+
+ Bundle bundle = bundleContext.getBundle();
+ return loggerFactory.getLogger(bundle, bundle.getSymbolicName(), Logger.class);
+ }
+ catch (RuntimeException ex)
+ {
+ throw new IllegalStateException("Logger service not found", ex); //$NON-NLS-1$
+ }
+ }
+
+ public static LogLevel toOSGi(Level level)
+ {
+ switch (level)
+ {
+ case ERROR:
+ return LogLevel.ERROR;
+ case WARN:
+ return LogLevel.WARN;
+ case INFO:
+ return LogLevel.INFO;
+ case DEBUG:
+ return LogLevel.DEBUG;
+ default:
+ throw new IllegalArgumentException("Illegal log level: " + level); //$NON-NLS-1$
+ }
+ }
+}
diff --git a/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/om/log/OSGiLoggingBridge.java b/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/om/log/OSGiLoggingBridge.java
index 6ff5cc8f8a..e6010d90b8 100644
--- a/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/om/log/OSGiLoggingBridge.java
+++ b/plugins/org.eclipse.net4j.util/src/org/eclipse/net4j/util/om/log/OSGiLoggingBridge.java
@@ -20,8 +20,10 @@ import org.osgi.service.log.LogService;
/**
* A {@link OMLogHandler log handler} that appends log events to the OSGi {@link LogService log service}.
*
+ * @deprecated As of 4.7 use {@link OSGiLogHandler}.
* @author Eike Stepper
*/
+@Deprecated
public class OSGiLoggingBridge implements OMLogHandler
{
// @Singleton

Back to the top