You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by ma...@apache.org on 2014/09/15 05:47:19 UTC

[2/2] git commit: Fix yet another generics compilation error.

Fix yet another generics compilation error.


Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/82d43d09
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/82d43d09
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/82d43d09

Branch: refs/heads/master
Commit: 82d43d09b1183caf04b726e834a7aef514b5ce0f
Parents: 9108851
Author: Matt Sicker <ma...@apache.org>
Authored: Sun Sep 14 22:47:12 2014 -0500
Committer: Matt Sicker <ma...@apache.org>
Committed: Sun Sep 14 22:47:12 2014 -0500

----------------------------------------------------------------------
 .../core/config/plugins/convert/TypeConverterRegistry.java    | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/82d43d09/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/convert/TypeConverterRegistry.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/convert/TypeConverterRegistry.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/convert/TypeConverterRegistry.java
index 47319e7..c8171f3 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/convert/TypeConverterRegistry.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/convert/TypeConverterRegistry.java
@@ -82,7 +82,7 @@ public class TypeConverterRegistry {
         }
         // dynamic enum support
         if (type instanceof Class<?> && ((Class<?>) type).isEnum()) {
-            return registerEnumType(type);
+            return registerEnumType(((Class<?>) type).asSubclass(Enum.class));
         }
         // look for compatible converters
         for (final Map.Entry<Type, TypeConverter<?>> entry : registry.entrySet()) {
@@ -149,9 +149,8 @@ public class TypeConverterRegistry {
         registry.putIfAbsent(aliasType, registry.get(knownType));
     }
 
-    private <E extends Enum<E>> TypeConverter<? extends E> registerEnumType(final Type type) {
-        @SuppressWarnings("unchecked")
-        final TypeConverter<E> converter = new EnumConverter<E>((Class<E>) type);
+    private <E extends Enum<E>> TypeConverter<? extends E> registerEnumType(final Class<E> type) {
+        final TypeConverter<E> converter = new EnumConverter<E>(type);
         registry.putIfAbsent(type, converter);
         return converter;
     }