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/30 07:15:44 UTC
git commit: Fix unchecked warnings.
Repository: logging-log4j2
Updated Branches:
refs/heads/master 7655a60c1 -> 9a6183550
Fix unchecked warnings.
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/9a618355
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/9a618355
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/9a618355
Branch: refs/heads/master
Commit: 9a6183550713fa12c3a38035be5e7999f1b1f2de
Parents: 7655a60
Author: Matt Sicker <ma...@apache.org>
Authored: Tue Sep 30 00:14:43 2014 -0500
Committer: Matt Sicker <ma...@apache.org>
Committed: Tue Sep 30 00:14:43 2014 -0500
----------------------------------------------------------------------
.../java/org/apache/logging/log4j/spi/Provider.java | 3 +--
.../log4j/core/config/ConfigurationFactory.java | 13 ++++++-------
.../config/plugins/convert/TypeConverterRegistry.java | 5 ++---
.../apache/logging/log4j/core/lookup/Interpolator.java | 3 +--
4 files changed, 10 insertions(+), 14 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/9a618355/log4j-api/src/main/java/org/apache/logging/log4j/spi/Provider.java
----------------------------------------------------------------------
diff --git a/log4j-api/src/main/java/org/apache/logging/log4j/spi/Provider.java b/log4j-api/src/main/java/org/apache/logging/log4j/spi/Provider.java
index 571d544..69c2a78 100644
--- a/log4j-api/src/main/java/org/apache/logging/log4j/spi/Provider.java
+++ b/log4j-api/src/main/java/org/apache/logging/log4j/spi/Provider.java
@@ -83,7 +83,6 @@ public class Provider {
*
* @return the LoggerContextFactory implementation class or {@code null} if there was an error loading it
*/
- @SuppressWarnings("unchecked")
public Class<? extends LoggerContextFactory> loadLoggerContextFactory() {
if (className == null) {
return null;
@@ -91,7 +90,7 @@ public class Provider {
try {
final Class<?> clazz = classLoader.loadClass(className);
if (LoggerContextFactory.class.isAssignableFrom(clazz)) {
- return (Class<? extends LoggerContextFactory>) clazz;
+ return clazz.asSubclass(LoggerContextFactory.class);
}
} catch (final Exception e) {
LOGGER.error("Unable to create class {} specified in {}", className, url.toString(), e);
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/9a618355/log4j-core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationFactory.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationFactory.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationFactory.java
index 8c7e176..028bf43 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationFactory.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/ConfigurationFactory.java
@@ -143,8 +143,8 @@ public abstract class ConfigurationFactory {
final Collection<WeightedFactory> ordered = new TreeSet<WeightedFactory>();
for (final PluginType<?> type : plugins.values()) {
try {
- @SuppressWarnings("unchecked")
- final Class<ConfigurationFactory> clazz = (Class<ConfigurationFactory>)type.getPluginClass();
+ final Class<? extends ConfigurationFactory> clazz = type.getPluginClass().asSubclass(
+ ConfigurationFactory.class);
final Order order = clazz.getAnnotation(Order.class);
if (order != null) {
final int weight = order.value();
@@ -170,17 +170,16 @@ public abstract class ConfigurationFactory {
return configFactory;
}
- @SuppressWarnings("unchecked")
private static void addFactory(final Collection<ConfigurationFactory> list, final String factoryClass) {
try {
- addFactory(list, (Class<ConfigurationFactory>) LoaderUtil.loadClass(factoryClass));
+ addFactory(list, LoaderUtil.loadClass(factoryClass).asSubclass(ConfigurationFactory.class));
} catch (final Exception ex) {
LOGGER.error("Unable to load class {}", factoryClass, ex);
}
}
private static void addFactory(final Collection<ConfigurationFactory> list,
- final Class<ConfigurationFactory> factoryClass) {
+ final Class<? extends ConfigurationFactory> factoryClass) {
try {
list.add(ReflectionUtil.instantiate(factoryClass));
} catch (final Exception ex) {
@@ -348,14 +347,14 @@ public abstract class ConfigurationFactory {
*/
private static class WeightedFactory implements Comparable<WeightedFactory> {
private final int weight;
- private final Class<ConfigurationFactory> factoryClass;
+ private final Class<? extends ConfigurationFactory> factoryClass;
/**
* Constructor.
* @param weight The weight.
* @param clazz The class.
*/
- public WeightedFactory(final int weight, final Class<ConfigurationFactory> clazz) {
+ public WeightedFactory(final int weight, final Class<? extends ConfigurationFactory> clazz) {
this.weight = weight;
this.factoryClass = clazz;
}
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/9a618355/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 c8171f3..f19276f 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
@@ -109,8 +109,7 @@ public class TypeConverterRegistry {
for (final PluginType<?> knownType : knownTypes) {
final Class<?> clazz = knownType.getPluginClass();
if (TypeConverter.class.isAssignableFrom(clazz)) {
- @SuppressWarnings("unchecked") // but we just DID check it!
- final Class<? extends TypeConverter<?>> pluginClass = (Class<? extends TypeConverter<?>>) clazz;
+ final Class<? extends TypeConverter> pluginClass = clazz.asSubclass(TypeConverter.class);
final Type conversionType = getTypeConverterSupportedType(pluginClass);
final TypeConverter<?> converter = ReflectionUtil.instantiate(pluginClass);
if (registry.putIfAbsent(conversionType, converter) != null) {
@@ -121,7 +120,7 @@ public class TypeConverterRegistry {
}
}
- private static Type getTypeConverterSupportedType(final Class<? extends TypeConverter<?>> typeConverterClass) {
+ private static Type getTypeConverterSupportedType(final Class<? extends TypeConverter> typeConverterClass) {
for (final Type type : typeConverterClass.getGenericInterfaces()) {
if (type instanceof ParameterizedType) {
final ParameterizedType pType = (ParameterizedType) type;
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/9a618355/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/Interpolator.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/Interpolator.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/Interpolator.java
index 865fcf9..0cd9242 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/Interpolator.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/lookup/Interpolator.java
@@ -60,8 +60,7 @@ public class Interpolator extends AbstractLookup {
for (final Map.Entry<String, PluginType<?>> entry : plugins.entrySet()) {
try {
- @SuppressWarnings("unchecked")
- final Class<? extends StrLookup> clazz = (Class<? extends StrLookup>) entry.getValue().getPluginClass();
+ final Class<? extends StrLookup> clazz = entry.getValue().getPluginClass().asSubclass(StrLookup.class);
lookups.put(entry.getKey(), clazz.getConstructor().newInstance());
} catch (final Exception ex) {
LOGGER.error("Unable to create Lookup for {}", entry.getKey(), ex);