Repository: logging-log4j2 Updated Branches: refs/heads/master 4c8a94a43 -> d51da0f65
[LOG4J2-1759]: Add TypeConverter for UUID Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/d51da0f6 Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/d51da0f6 Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/d51da0f6 Branch: refs/heads/master Commit: d51da0f654bff818619c2321a3862f0115619279 Parents: 4c8a94a Author: Matt Sicker <[email protected]> Authored: Sat Dec 31 13:58:28 2016 -0600 Committer: Matt Sicker <[email protected]> Committed: Sat Dec 31 13:58:28 2016 -0600 ---------------------------------------------------------------------- .../core/config/plugins/convert/TypeConverters.java | 13 +++++++++++++ .../config/plugins/convert/TypeConvertersTest.java | 3 +++ src/changes/changes.xml | 3 +++ 3 files changed, 19 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/d51da0f6/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/convert/TypeConverters.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/convert/TypeConverters.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/convert/TypeConverters.java index 3d94f40..03ec2ca 100644 --- a/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/convert/TypeConverters.java +++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/convert/TypeConverters.java @@ -30,6 +30,7 @@ import java.nio.file.Path; import java.nio.file.Paths; import java.security.Provider; import java.security.Security; +import java.util.UUID; import java.util.regex.Pattern; import javax.xml.bind.DatatypeConverter; @@ -357,6 +358,18 @@ public final class TypeConverters { } /** + * Converts a {@link String} into a {@link UUID}. + * @since 2.8 + */ + @Plugin(name = "UUID", category = CATEGORY) + public static class UuidConverter implements TypeConverter<UUID> { + @Override + public UUID convert(final String s) throws Exception { + return UUID.fromString(s); + } + } + + /** * Converts a String to a given class if a TypeConverter is available for that class. Falls back to the provided * default value if the conversion is unsuccessful. However, if the default value is <em>also</em> invalid, then * {@code null} is returned (along with a nasty status log message). http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/d51da0f6/log4j-core/src/test/java/org/apache/logging/log4j/core/config/plugins/convert/TypeConvertersTest.java ---------------------------------------------------------------------- diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/plugins/convert/TypeConvertersTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/plugins/convert/TypeConvertersTest.java index da426a9..0c54345 100644 --- a/log4j-core/src/test/java/org/apache/logging/log4j/core/config/plugins/convert/TypeConvertersTest.java +++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/config/plugins/convert/TypeConvertersTest.java @@ -31,6 +31,7 @@ import java.security.Provider; import java.security.Security; import java.util.Arrays; import java.util.Collection; +import java.util.UUID; import org.apache.logging.log4j.Level; import org.apache.logging.log4j.core.Filter; @@ -184,6 +185,8 @@ public class TypeConvertersTest { { "127.0.0.1", InetAddress.getByName("127.0.0.1"), null, InetAddress.class }, // JRE Path { "/path/to/file", Paths.get("/path", "to", "file"), null, Path.class }, + // JRE UUID + { "8fd389fb-9154-4096-b52e-435bde4a1835", UUID.fromString("8fd389fb-9154-4096-b52e-435bde4a1835"), null, UUID.class }, } ); } http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/d51da0f6/src/changes/changes.xml ---------------------------------------------------------------------- diff --git a/src/changes/changes.xml b/src/changes/changes.xml index 367b2ab..02337a6 100644 --- a/src/changes/changes.xml +++ b/src/changes/changes.xml @@ -216,6 +216,9 @@ <action issue="LOG4J2-1302" dev="rpopma" type="update"> The log4j-slf4j-impl module now declares a runtime dependency on log4j-core. While not technically required, this makes the log4j-slf4j-impl module behave similarly to slf4j-log4j12, and facilitates migration to Log4j 2. </action> + <action issue="LOG4J2-1759" dev="mattsicker" type="add"> + Add TypeConverter for java.util.UUID. + </action> <action issue="LOG4J2-1758" dev="mattsicker" type="add"> Add TypeConverter for java.nio.file.Path. </action>
