Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 53BF3200BAD for ; Tue, 25 Oct 2016 15:19:20 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 528A5160B02; Tue, 25 Oct 2016 13:19:20 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 9877C160AE6 for ; Tue, 25 Oct 2016 15:19:19 +0200 (CEST) Received: (qmail 38024 invoked by uid 500); 25 Oct 2016 13:19:17 -0000 Mailing-List: contact commits-help@activemq.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@activemq.apache.org Delivered-To: mailing list commits@activemq.apache.org Received: (qmail 38010 invoked by uid 99); 25 Oct 2016 13:19:17 -0000 Received: from git1-us-west.apache.org (HELO git1-us-west.apache.org) (140.211.11.23) by apache.org (qpsmtpd/0.29) with ESMTP; Tue, 25 Oct 2016 13:19:17 +0000 Received: by git1-us-west.apache.org (ASF Mail Server at git1-us-west.apache.org, from userid 33) id D0805DFAAB; Tue, 25 Oct 2016 13:19:16 +0000 (UTC) Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: martyntaylor@apache.org To: commits@activemq.apache.org Date: Tue, 25 Oct 2016 13:19:22 -0000 Message-Id: <51a19581e4574709aa406f27e9e4e882@git.apache.org> In-Reply-To: <85a32b9755384bf28e1e4c1b031b17f1@git.apache.org> References: <85a32b9755384bf28e1e4c1b031b17f1@git.apache.org> X-Mailer: ASF-Git Admin Mailer Subject: [07/33] activemq-artemis git commit: ARTEMIS-756 disabling finalize check over CDI Connection Factories archived-at: Tue, 25 Oct 2016 13:19:20 -0000 ARTEMIS-756 disabling finalize check over CDI Connection Factories Project: http://git-wip-us.apache.org/repos/asf/activemq-artemis/repo Commit: http://git-wip-us.apache.org/repos/asf/activemq-artemis/commit/e71f3d8a Tree: http://git-wip-us.apache.org/repos/asf/activemq-artemis/tree/e71f3d8a Diff: http://git-wip-us.apache.org/repos/asf/activemq-artemis/diff/e71f3d8a Branch: refs/heads/ARTEMIS-780 Commit: e71f3d8a34c39f5d166e107d733b66841dba605a Parents: 2ee742b Author: Clebert Suconic Authored: Mon Oct 24 10:37:22 2016 -0400 Committer: Clebert Suconic Committed: Mon Oct 24 10:37:27 2016 -0400 ---------------------------------------------------------------------- .../activemq/artemis/jms/client/ActiveMQConnection.java | 4 +++- .../artemis/jms/client/ActiveMQConnectionFactory.java | 12 ++++++++++++ .../client/cdi/factory/ConnectionFactoryProvider.java | 3 ++- 3 files changed, 17 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/e71f3d8a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQConnection.java ---------------------------------------------------------------------- diff --git a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQConnection.java b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQConnection.java index 440b576..0c6cf9d 100644 --- a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQConnection.java +++ b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQConnection.java @@ -572,7 +572,9 @@ public class ActiveMQConnection extends ActiveMQConnectionForContextImpl impleme @Override protected final void finalize() throws Throwable { if (!closed) { - ActiveMQJMSClientLogger.LOGGER.connectionLeftOpen(creationStack); + if (this.factoryReference.isFinalizeChecks()) { + ActiveMQJMSClientLogger.LOGGER.connectionLeftOpen(creationStack); + } close(); } http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/e71f3d8a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQConnectionFactory.java ---------------------------------------------------------------------- diff --git a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQConnectionFactory.java b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQConnectionFactory.java index 4f6528b..91dee3c 100644 --- a/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQConnectionFactory.java +++ b/artemis-jms-client/src/main/java/org/apache/activemq/artemis/jms/client/ActiveMQConnectionFactory.java @@ -83,6 +83,8 @@ public class ActiveMQConnectionFactory implements ConnectionFactoryOptions, Exte private String deserializationWhiteList; + private boolean finalizeChecks; + @Override public void writeExternal(ObjectOutput out) throws IOException { URI uri = toURI(); @@ -148,6 +150,16 @@ public class ActiveMQConnectionFactory implements ConnectionFactoryOptions, Exte } } + public ActiveMQConnectionFactory disableFinalizeChecks() { + this.finalizeChecks = false; + return this; + } + + public boolean isFinalizeChecks() { + return finalizeChecks; + } + + @Override public String getDeserializationBlackList() { return deserializationBlackList; http://git-wip-us.apache.org/repos/asf/activemq-artemis/blob/e71f3d8a/integration/artemis-cdi-integration/src/main/java/org/apache/artemis/client/cdi/factory/ConnectionFactoryProvider.java ---------------------------------------------------------------------- diff --git a/integration/artemis-cdi-integration/src/main/java/org/apache/artemis/client/cdi/factory/ConnectionFactoryProvider.java b/integration/artemis-cdi-integration/src/main/java/org/apache/artemis/client/cdi/factory/ConnectionFactoryProvider.java index b57b771..b249474 100644 --- a/integration/artemis-cdi-integration/src/main/java/org/apache/artemis/client/cdi/factory/ConnectionFactoryProvider.java +++ b/integration/artemis-cdi-integration/src/main/java/org/apache/artemis/client/cdi/factory/ConnectionFactoryProvider.java @@ -97,6 +97,7 @@ public class ConnectionFactoryProvider { activeMQConnectionFactory.setUser(configuration.getUsername()); activeMQConnectionFactory.setPassword(configuration.getPassword()); } - return activeMQConnectionFactory; + // The CF will probably be GCed since it was injected, so we disable the finalize check + return activeMQConnectionFactory.disableFinalizeChecks(); } }