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/06/22 19:51:06 UTC
svn commit: r1604622 - in /logging/log4j/log4j2/trunk/log4j-core: ./
src/main/java/org/apache/logging/log4j/core/appender/db/
src/main/java/org/apache/logging/log4j/core/config/plugins/processor/
Author: mattsicker
Date: Sun Jun 22 17:51:06 2014
New Revision: 1604622
URL: http://svn.apache.org/r1604622
Log:
Updata javadoc link.
Added:
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/ShadedResourceTransformer.java
Modified:
logging/log4j/log4j2/trunk/log4j-core/pom.xml
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/db/AbstractDatabaseAppender.java
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/PluginCache.java
Modified: logging/log4j/log4j2/trunk/log4j-core/pom.xml
URL: http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/log4j-core/pom.xml?rev=1604622&r1=1604621&r2=1604622&view=diff
==============================================================================
--- logging/log4j/log4j2/trunk/log4j-core/pom.xml (original)
+++ logging/log4j/log4j2/trunk/log4j-core/pom.xml Sun Jun 22 17:51:06 2014
@@ -213,6 +213,12 @@
<artifactId>commons-codec</artifactId>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-shade-plugin</artifactId>
+ <version>2.3</version>
+ <type>jar</type>
+ </dependency>
</dependencies>
<build>
<plugins>
Modified: logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/db/AbstractDatabaseAppender.java
URL: http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/db/AbstractDatabaseAppender.java?rev=1604622&r1=1604621&r2=1604622&view=diff
==============================================================================
--- logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/db/AbstractDatabaseAppender.java (original)
+++ logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/db/AbstractDatabaseAppender.java Sun Jun 22 17:51:06 2014
@@ -31,7 +31,7 @@ import org.apache.logging.log4j.core.app
* An abstract Appender for writing events to a database of some type, be it relational or NoSQL. All database appenders
* should inherit from this base appender. Three implementations are currently provided:
* {@link org.apache.logging.log4j.core.appender.db.jdbc JDBC}, {@link org.apache.logging.log4j.core.appender.db.jpa
- * JPA}, and {@link org.apache.logging.log4j.core.appender.db.nosql NoSQL}.
+ * JPA}, and {@link org.apache.logging.log4j.nosql.appender NoSQL}.
*
* @param <T> Specifies which type of {@link AbstractDatabaseManager} this Appender requires.
*/
Modified: logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/PluginCache.java
URL: http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/PluginCache.java?rev=1604622&r1=1604621&r2=1604622&view=diff
==============================================================================
--- logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/PluginCache.java (original)
+++ logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/PluginCache.java Sun Jun 22 17:51:06 2014
@@ -22,6 +22,7 @@ import java.io.BufferedOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
+import java.io.InputStream;
import java.io.OutputStream;
import java.net.URL;
import java.util.Enumeration;
@@ -29,6 +30,7 @@ import java.util.Map;
import java.util.concurrent.ConcurrentMap;
import org.apache.logging.log4j.core.config.plugins.util.PluginRegistry;
+import org.apache.logging.log4j.core.util.Closer;
/**
*
@@ -84,27 +86,32 @@ public class PluginCache {
pluginCategories.clear();
while (resources.hasMoreElements()) {
final URL url = resources.nextElement();
- final DataInputStream in = new DataInputStream(new BufferedInputStream(url.openStream()));
- try {
- final int count = in.readInt();
- for (int i = 0; i < count; i++) {
- final String category = in.readUTF();
- final ConcurrentMap<String, PluginEntry> m = pluginCategories.getCategory(category);
- final int entries = in.readInt();
- for (int j = 0; j < entries; j++) {
- final PluginEntry entry = new PluginEntry();
- entry.setKey(in.readUTF());
- entry.setClassName(in.readUTF());
- entry.setName(in.readUTF());
- entry.setPrintable(in.readBoolean());
- entry.setDefer(in.readBoolean());
- entry.setCategory(category);
- m.putIfAbsent(entry.getKey(), entry);
- }
+ loadCacheFile(url.openStream());
+ }
+ }
+
+ public void loadCacheFile(final InputStream is) throws IOException {
+ final DataInputStream in = new DataInputStream(new BufferedInputStream(is));
+ try {
+ final int count = in.readInt();
+ for (int i = 0; i < count; i++) {
+ final String category = in.readUTF();
+ final ConcurrentMap<String, PluginEntry> m = pluginCategories.getCategory(category);
+ final int entries = in.readInt();
+ for (int j = 0; j < entries; j++) {
+ final PluginEntry entry = new PluginEntry();
+ entry.setKey(in.readUTF());
+ entry.setClassName(in.readUTF());
+ entry.setName(in.readUTF());
+ entry.setPrintable(in.readBoolean());
+ entry.setDefer(in.readBoolean());
+ entry.setCategory(category);
+ m.putIfAbsent(entry.getKey(), entry);
}
- } finally {
- in.close();
}
+ } finally {
+ Closer.closeSilent(in);
+ Closer.closeSilent(is);
}
}
Added: logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/ShadedResourceTransformer.java
URL: http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/ShadedResourceTransformer.java?rev=1604622&view=auto
==============================================================================
--- logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/ShadedResourceTransformer.java (added)
+++ logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/ShadedResourceTransformer.java Sun Jun 22 17:51:06 2014
@@ -0,0 +1,54 @@
+/*
+ * 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.
+ */
+
+package org.apache.logging.log4j.core.config.plugins.processor;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.List;
+import java.util.jar.JarOutputStream;
+import org.apache.maven.plugins.shade.relocation.Relocator;
+import org.apache.maven.plugins.shade.resource.ResourceTransformer;
+
+/**
+ */
+public final class ShadedResourceTransformer implements ResourceTransformer {
+
+ private final PluginCache pluginCache = new PluginCache();
+
+ @Override
+ public boolean canTransformResource(final String resource) {
+ return resource.startsWith(PluginProcessor.PLUGIN_CACHE_FILE);
+ }
+
+ @Override
+ public void processResource(final String resource, final InputStream in, final List<Relocator> list) throws IOException {
+ assert PluginProcessor.PLUGIN_CACHE_FILE.equals(resource);
+ pluginCache.loadCacheFile(in);
+ }
+
+ @Override
+ public boolean hasTransformedResource() {
+ return 0 < pluginCache.size();
+ }
+
+ @Override
+ public void modifyOutputStream(final JarOutputStream stream) throws IOException {
+ pluginCache.writeCache(stream);
+ }
+
+}
Fwd: svn commit: r1604622 - in /logging/log4j/log4j2/trunk/log4j-core:
./ src/main/java/org/apache/logging/log4j/core/appender/db/ src/main/java/org/apache/logging/log4j/core/config/plugins/processor/
Posted by Matt Sicker <bo...@gmail.com>.
Mistaken files added. Reverting.
---------- Forwarded message ----------
From: <ma...@apache.org>
Date: 22 June 2014 12:51
Subject: svn commit: r1604622 - in /logging/log4j/log4j2/trunk/log4j-core:
./ src/main/java/org/apache/logging/log4j/core/appender/db/
src/main/java/org/apache/logging/log4j/core/config/plugins/processor/
To: commits@logging.apache.org
Author: mattsicker
Date: Sun Jun 22 17:51:06 2014
New Revision: 1604622
URL: http://svn.apache.org/r1604622
Log:
Updata javadoc link.
Added:
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/ShadedResourceTransformer.java
Modified:
logging/log4j/log4j2/trunk/log4j-core/pom.xml
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/db/AbstractDatabaseAppender.java
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/PluginCache.java
Modified: logging/log4j/log4j2/trunk/log4j-core/pom.xml
URL:
http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/log4j-core/pom.xml?rev=1604622&r1=1604621&r2=1604622&view=diff
==============================================================================
--- logging/log4j/log4j2/trunk/log4j-core/pom.xml (original)
+++ logging/log4j/log4j2/trunk/log4j-core/pom.xml Sun Jun 22 17:51:06 2014
@@ -213,6 +213,12 @@
<artifactId>commons-codec</artifactId>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-shade-plugin</artifactId>
+ <version>2.3</version>
+ <type>jar</type>
+ </dependency>
</dependencies>
<build>
<plugins>
Modified:
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/db/AbstractDatabaseAppender.java
URL:
http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/db/AbstractDatabaseAppender.java?rev=1604622&r1=1604621&r2=1604622&view=diff
==============================================================================
---
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/db/AbstractDatabaseAppender.java
(original)
+++
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/db/AbstractDatabaseAppender.java
Sun Jun 22 17:51:06 2014
@@ -31,7 +31,7 @@ import org.apache.logging.log4j.core.app
* An abstract Appender for writing events to a database of some type, be
it relational or NoSQL. All database appenders
* should inherit from this base appender. Three implementations are
currently provided:
* {@link org.apache.logging.log4j.core.appender.db.jdbc JDBC}, {@link
org.apache.logging.log4j.core.appender.db.jpa
- * JPA}, and {@link org.apache.logging.log4j.core.appender.db.nosql NoSQL}.
+ * JPA}, and {@link org.apache.logging.log4j.nosql.appender NoSQL}.
*
* @param <T> Specifies which type of {@link AbstractDatabaseManager} this
Appender requires.
*/
Modified:
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/PluginCache.java
URL:
http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/PluginCache.java?rev=1604622&r1=1604621&r2=1604622&view=diff
==============================================================================
---
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/PluginCache.java
(original)
+++
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/PluginCache.java
Sun Jun 22 17:51:06 2014
@@ -22,6 +22,7 @@ import java.io.BufferedOutputStream;
import java.io.DataInputStream;
import java.io.DataOutputStream;
import java.io.IOException;
+import java.io.InputStream;
import java.io.OutputStream;
import java.net.URL;
import java.util.Enumeration;
@@ -29,6 +30,7 @@ import java.util.Map;
import java.util.concurrent.ConcurrentMap;
import org.apache.logging.log4j.core.config.plugins.util.PluginRegistry;
+import org.apache.logging.log4j.core.util.Closer;
/**
*
@@ -84,27 +86,32 @@ public class PluginCache {
pluginCategories.clear();
while (resources.hasMoreElements()) {
final URL url = resources.nextElement();
- final DataInputStream in = new DataInputStream(new
BufferedInputStream(url.openStream()));
- try {
- final int count = in.readInt();
- for (int i = 0; i < count; i++) {
- final String category = in.readUTF();
- final ConcurrentMap<String, PluginEntry> m =
pluginCategories.getCategory(category);
- final int entries = in.readInt();
- for (int j = 0; j < entries; j++) {
- final PluginEntry entry = new PluginEntry();
- entry.setKey(in.readUTF());
- entry.setClassName(in.readUTF());
- entry.setName(in.readUTF());
- entry.setPrintable(in.readBoolean());
- entry.setDefer(in.readBoolean());
- entry.setCategory(category);
- m.putIfAbsent(entry.getKey(), entry);
- }
+ loadCacheFile(url.openStream());
+ }
+ }
+
+ public void loadCacheFile(final InputStream is) throws IOException {
+ final DataInputStream in = new DataInputStream(new
BufferedInputStream(is));
+ try {
+ final int count = in.readInt();
+ for (int i = 0; i < count; i++) {
+ final String category = in.readUTF();
+ final ConcurrentMap<String, PluginEntry> m =
pluginCategories.getCategory(category);
+ final int entries = in.readInt();
+ for (int j = 0; j < entries; j++) {
+ final PluginEntry entry = new PluginEntry();
+ entry.setKey(in.readUTF());
+ entry.setClassName(in.readUTF());
+ entry.setName(in.readUTF());
+ entry.setPrintable(in.readBoolean());
+ entry.setDefer(in.readBoolean());
+ entry.setCategory(category);
+ m.putIfAbsent(entry.getKey(), entry);
}
- } finally {
- in.close();
}
+ } finally {
+ Closer.closeSilent(in);
+ Closer.closeSilent(is);
}
}
Added:
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/ShadedResourceTransformer.java
URL:
http://svn.apache.org/viewvc/logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/ShadedResourceTransformer.java?rev=1604622&view=auto
==============================================================================
---
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/ShadedResourceTransformer.java
(added)
+++
logging/log4j/log4j2/trunk/log4j-core/src/main/java/org/apache/logging/log4j/core/config/plugins/processor/ShadedResourceTransformer.java
Sun Jun 22 17:51:06 2014
@@ -0,0 +1,54 @@
+/*
+ * 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.
+ */
+
+package org.apache.logging.log4j.core.config.plugins.processor;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.util.List;
+import java.util.jar.JarOutputStream;
+import org.apache.maven.plugins.shade.relocation.Relocator;
+import org.apache.maven.plugins.shade.resource.ResourceTransformer;
+
+/**
+ */
+public final class ShadedResourceTransformer implements
ResourceTransformer {
+
+ private final PluginCache pluginCache = new PluginCache();
+
+ @Override
+ public boolean canTransformResource(final String resource) {
+ return resource.startsWith(PluginProcessor.PLUGIN_CACHE_FILE);
+ }
+
+ @Override
+ public void processResource(final String resource, final InputStream
in, final List<Relocator> list) throws IOException {
+ assert PluginProcessor.PLUGIN_CACHE_FILE.equals(resource);
+ pluginCache.loadCacheFile(in);
+ }
+
+ @Override
+ public boolean hasTransformedResource() {
+ return 0 < pluginCache.size();
+ }
+
+ @Override
+ public void modifyOutputStream(final JarOutputStream stream) throws
IOException {
+ pluginCache.writeCache(stream);
+ }
+
+}
--
Matt Sicker <bo...@gmail.com>