logging-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From sde...@apache.org
Subject svn commit: r1456325 - in /logging/log4j/log4j2/trunk/core/src: main/java/org/apache/logging/log4j/core/config/ main/java/org/apache/logging/log4j/core/net/ test/java/org/apache/logging/log4j/core/config/ test/resources/
Date Thu, 14 Mar 2013 05:14:39 GMT
Author: sdeboy
Date: Thu Mar 14 05:14:38 2013
New Revision: 1456325

URL: http://svn.apache.org/r1456325
Log:
Implementing LOG4J2-155: add getFormat to Layout

Advertiser implementations are now a 'Core' type with an 'advertiser' elementType.
Updated XMLConfiguration and JSONConfiguration to resolve the 'advertiser' attribute on the
configuration element via the plugin mechanism
The test in-memory advertiser is now defined as 'memory' in the test xml config, and the multicast
DNS implementation can be defined as 'multicastdns'
Also updated the packages definition on the log4j-advertiser.xml to include the 'core' package,
as the in-memory advertiser is in the 'core' package hierarchy (depended on the fix for LOG4J2-175)

Modified:
    logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/config/DefaultAdvertiser.java
    logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/config/JSONConfiguration.java
    logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/config/XMLConfiguration.java
    logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/net/MulticastDNSAdvertiser.java
    logging/log4j/log4j2/trunk/core/src/test/java/org/apache/logging/log4j/core/config/InMemoryAdvertiser.java
    logging/log4j/log4j2/trunk/core/src/test/resources/log4j-advertiser.xml

Modified: logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/config/DefaultAdvertiser.java
URL: http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/config/DefaultAdvertiser.java?rev=1456325&r1=1456324&r2=1456325&view=diff
==============================================================================
--- logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/config/DefaultAdvertiser.java
(original)
+++ logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/config/DefaultAdvertiser.java
Thu Mar 14 05:14:38 2013
@@ -16,6 +16,7 @@
  */
 package org.apache.logging.log4j.core.config;
 
+import org.apache.logging.log4j.core.config.plugins.Plugin;
 import org.apache.logging.log4j.core.net.Advertiser;
 
 import java.util.Map;
@@ -23,6 +24,7 @@ import java.util.Map;
 /**
  * The default advertiser does not do anything.
  */
+@Plugin(name = "default", type = "Core", elementType = "advertiser", printObject = false)
 public class DefaultAdvertiser implements Advertiser {
     /**
      * Does nothing.

Modified: logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/config/JSONConfiguration.java
URL: http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/config/JSONConfiguration.java?rev=1456325&r1=1456324&r2=1456325&view=diff
==============================================================================
--- logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/config/JSONConfiguration.java
(original)
+++ logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/config/JSONConfiguration.java
Thu Mar 14 05:14:38 2013
@@ -118,8 +118,14 @@ public class JSONConfiguration extends B
                     }
                 } else if ("advertiser".equalsIgnoreCase(entry.getKey())) {
                     final String advertiserString = getSubst().replace(entry.getValue());
-                    if (advertiserString != null) {
-                        advertiser = (Advertiser) Class.forName(advertiserString).newInstance();
+                    if (advertiserString != null)
+                    {
+                        final PluginType type = getPluginManager().getPluginType(advertiserString);
+                        if (type != null)
+                        {
+                            final Class<Advertiser> clazz = type.getPluginClass();
+                            advertiser = clazz.newInstance();
+                        }
                     }
                 }
             }

Modified: logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/config/XMLConfiguration.java
URL: http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/config/XMLConfiguration.java?rev=1456325&r1=1456324&r2=1456325&view=diff
==============================================================================
--- logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/config/XMLConfiguration.java
(original)
+++ logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/config/XMLConfiguration.java
Thu Mar 14 05:14:38 2013
@@ -142,15 +142,19 @@ public class XMLConfiguration extends Ba
                     }
                 } else if ("advertiser".equalsIgnoreCase(entry.getKey())) {
                     final String advertiserString = getSubst().replace(entry.getValue());
-                    if (advertiserString != null) {
-                        try {
-                            advertiser = (Advertiser) Class.forName(advertiserString).newInstance();
-                        } catch (InstantiationException e) {
-                            System.err.println("InstantiationException attempting to instantiate
advertiser: " + advertiserString);
-                        } catch (IllegalAccessException e) {
-                            System.err.println("IllegalAccessException attempting to instantiate
advertiser: " + advertiserString);
-                        } catch (ClassNotFoundException e) {
-                            System.err.println("ClassNotFoundException attempting to instantiate
advertiser: " + advertiserString);
+                    if (advertiserString != null)
+                    {
+                        final PluginType type = getPluginManager().getPluginType(advertiserString);
+                        if (type != null)
+                        {
+                            final Class<Advertiser> clazz = type.getPluginClass();
+                            try {
+                                advertiser = clazz.newInstance();
+                            } catch (InstantiationException e) {
+                                System.err.println("InstantiationException attempting to
instantiate advertiser: " + advertiserString);
+                            } catch (IllegalAccessException e) {
+                                System.err.println("IllegalAccessException attempting to
instantiate advertiser: " + advertiserString);
+                            }
                         }
                     }
                 }

Modified: logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/net/MulticastDNSAdvertiser.java
URL: http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/net/MulticastDNSAdvertiser.java?rev=1456325&r1=1456324&r2=1456325&view=diff
==============================================================================
--- logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/net/MulticastDNSAdvertiser.java
(original)
+++ logging/log4j/log4j2/trunk/core/src/main/java/org/apache/logging/log4j/core/net/MulticastDNSAdvertiser.java
Thu Mar 14 05:14:38 2013
@@ -22,12 +22,14 @@ import java.lang.reflect.Method;
 import java.util.Hashtable;
 import java.util.Map;
 import org.apache.logging.log4j.Logger;
+import org.apache.logging.log4j.core.config.plugins.Plugin;
 import org.apache.logging.log4j.status.StatusLogger;
 
 /**
  * Advertise an entity via ZeroConf/MulticastDNS and the JmDNS library.
  *
  */
+@Plugin(name = "multicastdns", type = "Core", elementType = "advertiser", printObject = false)
 public class MulticastDNSAdvertiser implements Advertiser {
     protected static final Logger LOGGER = StatusLogger.getLogger();
     private static Object jmDNS = initializeJMDNS();

Modified: logging/log4j/log4j2/trunk/core/src/test/java/org/apache/logging/log4j/core/config/InMemoryAdvertiser.java
URL: http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/core/src/test/java/org/apache/logging/log4j/core/config/InMemoryAdvertiser.java?rev=1456325&r1=1456324&r2=1456325&view=diff
==============================================================================
--- logging/log4j/log4j2/trunk/core/src/test/java/org/apache/logging/log4j/core/config/InMemoryAdvertiser.java
(original)
+++ logging/log4j/log4j2/trunk/core/src/test/java/org/apache/logging/log4j/core/config/InMemoryAdvertiser.java
Thu Mar 14 05:14:38 2013
@@ -16,11 +16,13 @@
  */
 package org.apache.logging.log4j.core.config;
 
+import org.apache.logging.log4j.core.config.plugins.Plugin;
 import org.apache.logging.log4j.core.net.Advertiser;
 
 import java.util.HashMap;
 import java.util.Map;
 
+@Plugin(name = "memory", type = "Core", elementType = "advertiser", printObject = false)
 public class InMemoryAdvertiser implements Advertiser {
     private static Map<Object, Map<String, String>> properties = new HashMap<Object,
Map<String, String>>();
     

Modified: logging/log4j/log4j2/trunk/core/src/test/resources/log4j-advertiser.xml
URL: http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/core/src/test/resources/log4j-advertiser.xml?rev=1456325&r1=1456324&r2=1456325&view=diff
==============================================================================
--- logging/log4j/log4j2/trunk/core/src/test/resources/log4j-advertiser.xml (original)
+++ logging/log4j/log4j2/trunk/core/src/test/resources/log4j-advertiser.xml Thu Mar 14 05:14:38
2013
@@ -16,8 +16,8 @@
  limitations under the License.
 
 -->
-<configuration status="debug" dest="target/status.log" name="XMLConfigTest" packages="org.apache.logging.log4j.test"

-               advertiser="org.apache.logging.log4j.core.config.InMemoryAdvertiser">
+<configuration status="debug" dest="target/status.log" name="XMLConfigTest" packages="org.apache.logging.log4j.core,org.apache.logging.log4j.test"

+               advertiser="memory">
   <ThresholdFilter level="debug"/>
 
   <appenders>



Mime
View raw message