You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by ma...@apache.org on 2015/01/23 20:00:16 UTC
[06/10] incubator-nifi git commit: NIFI-300,
NIFI-298: Fixed bugs causing failures when sending to non-https
addresses and sending as flowfile
NIFI-300, NIFI-298: Fixed bugs causing failures when sending to non-https addresses and sending as flowfile
Project: http://git-wip-us.apache.org/repos/asf/incubator-nifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-nifi/commit/c8ecdd9d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-nifi/tree/c8ecdd9d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-nifi/diff/c8ecdd9d
Branch: refs/heads/develop
Commit: c8ecdd9ddfe847477cd916eb995ae9266919f8c6
Parents: 8b3f3c7
Author: Mark Payne <ma...@hotmail.com>
Authored: Fri Jan 23 12:00:21 2015 -0500
Committer: Mark Payne <ma...@hotmail.com>
Committed: Fri Jan 23 12:00:21 2015 -0500
----------------------------------------------------------------------
.../nifi/processors/standard/PostHTTP.java | 34 +++++++++++++-------
1 file changed, 22 insertions(+), 12 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-nifi/blob/c8ecdd9d/nifi/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PostHTTP.java
----------------------------------------------------------------------
diff --git a/nifi/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PostHTTP.java b/nifi/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PostHTTP.java
index ee16610..7fce2b0 100644
--- a/nifi/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PostHTTP.java
+++ b/nifi/nifi-nar-bundles/nifi-standard-bundle/nifi-standard-processors/src/main/java/org/apache/nifi/processors/standard/PostHTTP.java
@@ -319,21 +319,27 @@ public class PostHTTP extends AbstractProcessor {
return config;
}
+ final PoolingHttpClientConnectionManager conMan;
final SSLContextService sslContextService = context.getProperty(SSL_CONTEXT_SERVICE).asControllerService(SSLContextService.class);
- final SSLContext sslContext;
- try {
- sslContext = createSSLContext(sslContextService);
- } catch (final Exception e) {
- throw new ProcessException(e);
+ if ( sslContextService == null ) {
+ conMan = new PoolingHttpClientConnectionManager();
+ } else {
+ final SSLContext sslContext;
+ try {
+ sslContext = createSSLContext(sslContextService);
+ } catch (final Exception e) {
+ throw new ProcessException(e);
+ }
+
+ final SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(sslContext, new String[] { "TLSv1" }, null,
+ SSLConnectionSocketFactory.BROWSER_COMPATIBLE_HOSTNAME_VERIFIER);
+
+ final Registry<ConnectionSocketFactory> socketFactoryRegistry = RegistryBuilder.<ConnectionSocketFactory>create()
+ .register("https", sslsf).build();
+
+ conMan = new PoolingHttpClientConnectionManager(socketFactoryRegistry);
}
- final SSLConnectionSocketFactory sslsf = new SSLConnectionSocketFactory(sslContext, new String[] { "TLSv1" }, null,
- SSLConnectionSocketFactory.BROWSER_COMPATIBLE_HOSTNAME_VERIFIER);
-
- final Registry<ConnectionSocketFactory> socketFactoryRegistry = RegistryBuilder.<ConnectionSocketFactory>create()
- .register("https", sslsf).build();
-
- final PoolingHttpClientConnectionManager conMan = new PoolingHttpClientConnectionManager(socketFactoryRegistry);
conMan.setDefaultMaxPerRoute(context.getMaxConcurrentTasks());
conMan.setMaxTotal(context.getMaxConcurrentTasks());
config = new Config(conMan);
@@ -428,6 +434,10 @@ public class PostHTTP extends AbstractProcessor {
public void process(final HttpResponse response, final HttpContext httpContext) throws HttpException, IOException {
HttpCoreContext coreContext = HttpCoreContext.adapt(httpContext);
ManagedHttpClientConnection conn = coreContext.getConnection(ManagedHttpClientConnection.class);
+ if ( !conn.isOpen() ) {
+ return;
+ }
+
SSLSession sslSession = conn.getSSLSession();
if ( sslSession != null ) {