From 32699286999ee7c35bfe6f1768cce2732ceab337 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Herv=C3=A9=20Boutemy?= Date: Wed, 19 Dec 2012 00:09:04 +0100 Subject: [PATCH] added log4j2 configuration support --- .../cli/logging/impl/Log4j2Configuration.java | 60 +++++++++++++++++++ .../maven/slf4j-configuration.properties | 1 + 2 files changed, 61 insertions(+) create mode 100644 maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/Log4j2Configuration.java diff --git a/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/Log4j2Configuration.java b/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/Log4j2Configuration.java new file mode 100644 index 0000000000..c1d1275139 --- /dev/null +++ b/maven-embedder/src/main/java/org/apache/maven/cli/logging/impl/Log4j2Configuration.java @@ -0,0 +1,60 @@ +package org.apache.maven.cli.logging.impl; + +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +import java.io.File; + +import org.apache.maven.cli.logging.BaseSlf4jConfiguration; + +/** + * Configuration for slf4j-log4j2. + * + * @author Hervé Boutemy + */ +public class Log4j2Configuration + extends BaseSlf4jConfiguration +{ + @Override + public void setRootLoggerLevel( Level level ) + { + String value = "info"; + switch ( level ) + { + case DEBUG: + value = "debug"; + break; + + case INFO: + value = "info"; + break; + + case ERROR: + value = "error"; + break; + } + System.setProperty( "maven.logging.root.level", value ); + } + + @Override + public void setLoggerFile( File output ) + { + // no op + } +} diff --git a/maven-embedder/src/main/resources/META-INF/maven/slf4j-configuration.properties b/maven-embedder/src/main/resources/META-INF/maven/slf4j-configuration.properties index 07d06e8aaa..150c15b7d4 100644 --- a/maven-embedder/src/main/resources/META-INF/maven/slf4j-configuration.properties +++ b/maven-embedder/src/main/resources/META-INF/maven/slf4j-configuration.properties @@ -1,3 +1,4 @@ # key = Slf4j effective logger factory implementation # value = corresponding o.a.m.cli.logging.Slf4jConfiguration class org.slf4j.impl.SimpleLoggerFactory org.apache.maven.cli.logging.impl.Slf4jSimpleConfiguration +org.slf4j.helpers.Log4JLoggerFactory org.apache.maven.cli.logging.impl.Log4j2Configuration \ No newline at end of file