You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@logging.apache.org by mi...@apache.org on 2017/05/23 15:22:58 UTC
[2/2] logging-log4j2 git commit: LOG4J2-1442 Use java.net.URL
LOG4J2-1442 Use java.net.URL
Project: http://git-wip-us.apache.org/repos/asf/logging-log4j2/repo
Commit: http://git-wip-us.apache.org/repos/asf/logging-log4j2/commit/ea804f95
Tree: http://git-wip-us.apache.org/repos/asf/logging-log4j2/tree/ea804f95
Diff: http://git-wip-us.apache.org/repos/asf/logging-log4j2/diff/ea804f95
Branch: refs/heads/master
Commit: ea804f9593059f202d90ae139a37e47a7ff1298e
Parents: 8a115ca
Author: Mikael Ståldal <mi...@magine.com>
Authored: Tue May 23 17:22:49 2017 +0200
Committer: Mikael Ståldal <mi...@magine.com>
Committed: Tue May 23 17:22:49 2017 +0200
----------------------------------------------------------------------
.../logging/log4j/core/appender/HttpAppender.java | 7 ++++---
.../core/appender/HttpURLConnectionManager.java | 12 +++++-------
.../log4j/core/appender/HttpAppenderTest.java | 15 ++++++++-------
3 files changed, 17 insertions(+), 17 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/ea804f95/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/HttpAppender.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/HttpAppender.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/HttpAppender.java
index 40c387f..5d2ff87 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/HttpAppender.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/HttpAppender.java
@@ -18,6 +18,7 @@
package org.apache.logging.log4j.core.appender;
import java.io.Serializable;
+import java.net.URL;
import java.util.Objects;
import java.util.concurrent.TimeUnit;
@@ -49,7 +50,7 @@ public final class HttpAppender extends AbstractAppender {
@PluginBuilderAttribute
@Required(message = "No URL provided for HttpAppender")
- private String url;
+ private URL url;
@PluginBuilderAttribute
private String method = "POST";
@@ -76,7 +77,7 @@ public final class HttpAppender extends AbstractAppender {
return new HttpAppender(getName(), getLayout(), getFilter(), isIgnoreExceptions(), httpManager);
}
- public String getUrl() {
+ public URL getUrl() {
return url;
}
@@ -104,7 +105,7 @@ public final class HttpAppender extends AbstractAppender {
return verifyHostname;
}
- public B setUrl(final String url) {
+ public B setUrl(final URL url) {
this.url = url;
return asBuilder();
}
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/ea804f95/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/HttpURLConnectionManager.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/HttpURLConnectionManager.java b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/HttpURLConnectionManager.java
index 923b15f..ab6a584 100644
--- a/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/HttpURLConnectionManager.java
+++ b/log4j-core/src/main/java/org/apache/logging/log4j/core/appender/HttpURLConnectionManager.java
@@ -21,7 +21,6 @@ import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.HttpURLConnection;
-import java.net.MalformedURLException;
import java.net.URL;
import java.nio.charset.Charset;
import java.util.Objects;
@@ -52,17 +51,15 @@ public class HttpURLConnectionManager extends HttpManager {
private final boolean verifyHostname;
public HttpURLConnectionManager(final Configuration configuration, LoggerContext loggerContext, final String name,
- final String url, final String method, final int connectTimeoutMillis,
+ final URL url, final String method, final int connectTimeoutMillis,
final int readTimeoutMillis,
final Property[] headers,
SslConfiguration sslConfiguration,
boolean verifyHostname) {
super(configuration, loggerContext, name);
- this.verifyHostname = verifyHostname;
- try {
- this.url = new URL(url);
- } catch (MalformedURLException e) {
- throw new ConfigurationException(e);
+ this.url = url;
+ if (!(url.getProtocol().equalsIgnoreCase("http") || url.getProtocol().equalsIgnoreCase("https"))) {
+ throw new ConfigurationException("URL must have scheme http or https");
}
this.isHttps = this.url.getProtocol().equalsIgnoreCase("https");
this.method = Objects.requireNonNull(method, "method");
@@ -73,6 +70,7 @@ public class HttpURLConnectionManager extends HttpManager {
if (this.sslConfiguration != null && !isHttps) {
throw new ConfigurationException("SSL configuration can only be specified with URL scheme https");
}
+ this.verifyHostname = verifyHostname;
}
@Override
http://git-wip-us.apache.org/repos/asf/logging-log4j2/blob/ea804f95/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/HttpAppenderTest.java
----------------------------------------------------------------------
diff --git a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/HttpAppenderTest.java b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/HttpAppenderTest.java
index 419d340..915c823 100644
--- a/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/HttpAppenderTest.java
+++ b/log4j-core/src/test/java/org/apache/logging/log4j/core/appender/HttpAppenderTest.java
@@ -1,6 +1,7 @@
package org.apache.logging.log4j.core.appender;
import java.io.IOException;
+import java.net.URL;
import com.github.tomakehurst.wiremock.client.ResponseDefinitionBuilder;
import com.github.tomakehurst.wiremock.junit.WireMockRule;
@@ -67,7 +68,7 @@ public class HttpAppenderTest {
.withName("Http")
.withLayout(JsonLayout.createDefaultLayout())
.setConfiguration(ctx.getConfiguration())
- .setUrl("http://localhost:" + wireMockRule.port() + "/test/log4j/")
+ .setUrl(new URL("http://localhost:" + wireMockRule.port() + "/test/log4j/"))
.build();
appender.append(createLogEvent());
@@ -86,7 +87,7 @@ public class HttpAppenderTest {
.withName("Http")
.withLayout(JsonLayout.createDefaultLayout())
.setConfiguration(ctx.getConfiguration())
- .setUrl("https://localhost:" + wireMockRule.httpsPort() + "/test/log4j/")
+ .setUrl(new URL("https://localhost:" + wireMockRule.httpsPort() + "/test/log4j/"))
.setSslConfiguration(SslConfiguration.createSSLConfiguration(null,
KeyStoreConfiguration.createKeyStoreConfiguration(TestConstants.KEYSTORE_FILE, TestConstants.KEYSTORE_PWD, TestConstants.KEYSTORE_TYPE, null),
TrustStoreConfiguration.createKeyStoreConfiguration(TestConstants.TRUSTSTORE_FILE, TestConstants.TRUSTSTORE_PWD, TestConstants.TRUSTSTORE_TYPE, null)))
@@ -110,7 +111,7 @@ public class HttpAppenderTest {
.withLayout(JsonLayout.createDefaultLayout())
.setConfiguration(ctx.getConfiguration())
.setMethod("PUT")
- .setUrl("http://localhost:" + wireMockRule.port() + "/test/log4j/1234")
+ .setUrl(new URL("http://localhost:" + wireMockRule.port() + "/test/log4j/1234"))
.build();
appender.append(createLogEvent());
@@ -129,7 +130,7 @@ public class HttpAppenderTest {
.withName("Http")
.withLayout(JsonLayout.createDefaultLayout())
.setConfiguration(ctx.getConfiguration())
- .setUrl("http://localhost:" + wireMockRule.port() + "/test/log4j/")
+ .setUrl(new URL("http://localhost:" + wireMockRule.port() + "/test/log4j/"))
.setHeaders(new Property[] {
Property.createProperty("X-Test", "header value"),
Property.createProperty("X-Runtime", "${java:runtime}")
@@ -173,7 +174,7 @@ public class HttpAppenderTest {
.withName("Http")
.withLayout(JsonLayout.createDefaultLayout())
.setConfiguration(ctx.getConfiguration())
- .setUrl("http://localhost:" + wireMockRule.port() + "/test/log4j/")
+ .setUrl(new URL("http://localhost:" + wireMockRule.port() + "/test/log4j/"))
.build();
appender.append(createLogEvent());
@@ -197,7 +198,7 @@ public class HttpAppenderTest {
.withLayout(JsonLayout.createDefaultLayout())
.setConfiguration(ctx.getConfiguration())
.withIgnoreExceptions(false)
- .setUrl("http://localhost:" + wireMockRule.port() + "/test/log4j/")
+ .setUrl(new URL("http://localhost:" + wireMockRule.port() + "/test/log4j/"))
.build();
appender.append(createLogEvent());
}
@@ -209,7 +210,7 @@ public class HttpAppenderTest {
.withLayout(JsonLayout.createDefaultLayout())
.setConfiguration(ctx.getConfiguration())
.withIgnoreExceptions(false)
- .setUrl("http://localhost:"+(wireMockRule.port()+1)+"/test/log4j/")
+ .setUrl(new URL("http://localhost:"+(wireMockRule.port()+1)+"/test/log4j/"))
.build();
appender.append(createLogEvent());
}