You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by gg...@apache.org on 2019/03/13 16:34:48 UTC
[commons-dbcp] branch master updated: Javadoc.
This is an automated email from the ASF dual-hosted git repository.
ggregory pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/commons-dbcp.git
The following commit(s) were added to refs/heads/master by this push:
new a43ae95 Javadoc.
a43ae95 is described below
commit a43ae9596574fc686113f10db3c620e2430e76ec
Author: Gary Gregory <ga...@gmail.com>
AuthorDate: Wed Mar 13 12:34:44 2019 -0400
Javadoc.
---
.../commons/dbcp2/managed/ManagedDataSource.java | 182 +++++++++++----------
1 file changed, 93 insertions(+), 89 deletions(-)
diff --git a/src/main/java/org/apache/commons/dbcp2/managed/ManagedDataSource.java b/src/main/java/org/apache/commons/dbcp2/managed/ManagedDataSource.java
index e19464d..0220e52 100644
--- a/src/main/java/org/apache/commons/dbcp2/managed/ManagedDataSource.java
+++ b/src/main/java/org/apache/commons/dbcp2/managed/ManagedDataSource.java
@@ -1,89 +1,93 @@
-/**
- *
- * 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.commons.dbcp2.managed;
-
-import org.apache.commons.pool2.ObjectPool;
-import org.apache.commons.dbcp2.PoolingDataSource;
-
-import java.sql.Connection;
-import java.sql.SQLException;
-import java.util.Objects;
-
-/**
- * The ManagedDataSource is a PoolingDataSource that creates ManagedConnections.
- *
- * @param <C>
- * The kind of {@link Connection} to manage.
- * @since 2.0
- */
-public class ManagedDataSource<C extends Connection> extends PoolingDataSource<C> {
- private TransactionRegistry transactionRegistry;
-
- /**
- * Creates a ManagedDataSource which obtains connections from the specified pool and manages them using the
- * specified transaction registry. The TransactionRegistry must be the transaction registry obtained from the
- * XAConnectionFactory used to create the connection pool. If not, an error will occur when attempting to use the
- * connection in a global transaction because the XAResource object associated with the connection will be
- * unavailable.
- *
- * @param pool
- * the connection pool
- * @param transactionRegistry
- * the transaction registry obtained from the XAConnectionFactory used to create the connection pool
- * object factory
- */
- public ManagedDataSource(final ObjectPool<C> pool, final TransactionRegistry transactionRegistry) {
- super(pool);
- this.transactionRegistry = transactionRegistry;
- }
-
- @Override
- public Connection getConnection() throws SQLException {
- if (getPool() == null) {
- throw new IllegalStateException("Pool has not been set");
- }
- if (transactionRegistry == null) {
- throw new IllegalStateException("TransactionRegistry has not been set");
- }
-
- return new ManagedConnection<>(getPool(), transactionRegistry, isAccessToUnderlyingConnectionAllowed());
- }
-
- /**
- * @since 2.6.0
- */
- public TransactionRegistry getTransactionRegistry() {
- return transactionRegistry;
- }
-
- /**
- * Sets the transaction registry from the XAConnectionFactory used to create the pool. The transaction registry can
- * only be set once using either a connector or this setter method.
- *
- * @param transactionRegistry
- * the transaction registry acquired from the XAConnectionFactory used to create the pool
- */
- public void setTransactionRegistry(final TransactionRegistry transactionRegistry) {
- if (this.transactionRegistry != null) {
- throw new IllegalStateException("TransactionRegistry already set");
- }
- Objects.requireNonNull(transactionRegistry, "transactionRegistry is null");
-
- this.transactionRegistry = transactionRegistry;
- }
-}
+/**
+ *
+ * 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.commons.dbcp2.managed;
+
+import org.apache.commons.pool2.ObjectPool;
+import org.apache.commons.dbcp2.PoolingDataSource;
+
+import java.sql.Connection;
+import java.sql.SQLException;
+import java.util.Objects;
+
+/**
+ * The ManagedDataSource is a PoolingDataSource that creates ManagedConnections.
+ *
+ * @param <C>
+ * The kind of {@link Connection} to manage.
+ * @since 2.0
+ */
+public class ManagedDataSource<C extends Connection> extends PoolingDataSource<C> {
+ private TransactionRegistry transactionRegistry;
+
+ /**
+ * Creates a ManagedDataSource which obtains connections from the specified pool and manages them using the
+ * specified transaction registry. The TransactionRegistry must be the transaction registry obtained from the
+ * XAConnectionFactory used to create the connection pool. If not, an error will occur when attempting to use the
+ * connection in a global transaction because the XAResource object associated with the connection will be
+ * unavailable.
+ *
+ * @param pool
+ * the connection pool
+ * @param transactionRegistry
+ * the transaction registry obtained from the XAConnectionFactory used to create the connection pool
+ * object factory
+ */
+ public ManagedDataSource(final ObjectPool<C> pool, final TransactionRegistry transactionRegistry) {
+ super(pool);
+ this.transactionRegistry = transactionRegistry;
+ }
+
+ @Override
+ public Connection getConnection() throws SQLException {
+ if (getPool() == null) {
+ throw new IllegalStateException("Pool has not been set");
+ }
+ if (transactionRegistry == null) {
+ throw new IllegalStateException("TransactionRegistry has not been set");
+ }
+
+ return new ManagedConnection<>(getPool(), transactionRegistry, isAccessToUnderlyingConnectionAllowed());
+ }
+
+ /**
+ * Gets the transaction registry.
+ *
+ * @return The transaction registry.
+ * @see #setTransactionRegistry(TransactionRegistry)
+ * @since 2.6.0
+ */
+ public TransactionRegistry getTransactionRegistry() {
+ return transactionRegistry;
+ }
+
+ /**
+ * Sets the transaction registry from the XAConnectionFactory used to create the pool. The transaction registry can
+ * only be set once using either a connector or this setter method.
+ *
+ * @param transactionRegistry
+ * the transaction registry acquired from the XAConnectionFactory used to create the pool
+ */
+ public void setTransactionRegistry(final TransactionRegistry transactionRegistry) {
+ if (this.transactionRegistry != null) {
+ throw new IllegalStateException("TransactionRegistry already set");
+ }
+ Objects.requireNonNull(transactionRegistry, "transactionRegistry is null");
+
+ this.transactionRegistry = transactionRegistry;
+ }
+}