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

commit b0d29ce76ae36792880c708b31fda12b97e080f5
Author: Gary Gregory <garydgreg...@gmail.com>
AuthorDate: Sat Nov 23 08:50:09 2024 -0500

    Internal refactoring
---
 .../datasources/InstanceKeyDataSourceFactory.java  | 30 +++++++++++++++-------
 1 file changed, 21 insertions(+), 9 deletions(-)

diff --git 
a/src/main/java/org/apache/commons/dbcp2/datasources/InstanceKeyDataSourceFactory.java
 
b/src/main/java/org/apache/commons/dbcp2/datasources/InstanceKeyDataSourceFactory.java
index ae8e6efb..a9f8c280 100644
--- 
a/src/main/java/org/apache/commons/dbcp2/datasources/InstanceKeyDataSourceFactory.java
+++ 
b/src/main/java/org/apache/commons/dbcp2/datasources/InstanceKeyDataSourceFactory.java
@@ -118,6 +118,10 @@ abstract class InstanceKeyDataSourceFactory implements 
ObjectFactory {
         }
     }
 
+    private Boolean booleanValueOf(RefAddr refAddr) {
+        return Boolean.valueOf(toString(refAddr));
+    }
+
     /**
      * Creates an instance of the subclass and sets any properties contained 
in the Reference.
      *
@@ -219,7 +223,7 @@ abstract class InstanceKeyDataSourceFactory implements 
ObjectFactory {
 
         refAddr = ref.get("loginTimeout");
         if (hasContent(refAddr)) {
-            ikds.setLoginTimeout(Duration.ofSeconds(parseInt(refAddr)));
+            ikds.setLoginTimeout(toDurationFromSeconds(refAddr));
         }
 
         // Pool properties
@@ -251,12 +255,12 @@ abstract class InstanceKeyDataSourceFactory implements 
ObjectFactory {
 
         refAddr = ref.get("maxWaitMillis");
         if (hasContent(refAddr)) {
-            ikds.setDefaultMaxWait(Duration.ofMillis(parseLong(refAddr)));
+            ikds.setDefaultMaxWait(toDurationFromMillis(refAddr));
         }
 
         refAddr = ref.get("minEvictableIdleTimeMillis");
         if (hasContent(refAddr)) {
-            
ikds.setDefaultMinEvictableIdle(Duration.ofMillis(parseLong(refAddr)));
+            ikds.setDefaultMinEvictableIdle(toDurationFromMillis(refAddr));
         }
 
         refAddr = ref.get("minIdlePerKey");
@@ -271,7 +275,7 @@ abstract class InstanceKeyDataSourceFactory implements 
ObjectFactory {
 
         refAddr = ref.get("softMinEvictableIdleTimeMillis");
         if (hasContent(refAddr)) {
-            
ikds.setDefaultSoftMinEvictableIdle(Duration.ofMillis(parseLong(refAddr)));
+            ikds.setDefaultSoftMinEvictableIdle(toDurationFromMillis(refAddr));
         }
 
         refAddr = ref.get("testOnCreate");
@@ -296,7 +300,7 @@ abstract class InstanceKeyDataSourceFactory implements 
ObjectFactory {
 
         refAddr = ref.get("timeBetweenEvictionRunsMillis");
         if (hasContent(refAddr)) {
-            
ikds.setDefaultDurationBetweenEvictionRuns(Duration.ofMillis(parseLong(refAddr)));
+            
ikds.setDefaultDurationBetweenEvictionRuns(toDurationFromMillis(refAddr));
         }
 
         // Connection factory properties
@@ -308,7 +312,7 @@ abstract class InstanceKeyDataSourceFactory implements 
ObjectFactory {
 
         refAddr = ref.get("validationQueryTimeout");
         if (hasContent(refAddr)) {
-            
ikds.setValidationQueryTimeout(Duration.ofSeconds(parseInt(refAddr)));
+            ikds.setValidationQueryTimeout(toDurationFromSeconds(refAddr));
         }
 
         refAddr = ref.get("rollbackAfterValidation");
@@ -318,14 +322,14 @@ abstract class InstanceKeyDataSourceFactory implements 
ObjectFactory {
 
         refAddr = ref.get("maxConnLifetimeMillis");
         if (hasContent(refAddr)) {
-            ikds.setMaxConnLifetime(Duration.ofMillis(parseLong(refAddr)));
+            ikds.setMaxConnLifetime(toDurationFromMillis(refAddr));
         }
 
         // Connection properties
 
         refAddr = ref.get("defaultAutoCommit");
         if (hasContent(refAddr)) {
-            ikds.setDefaultAutoCommit(Boolean.valueOf(toString(refAddr)));
+            ikds.setDefaultAutoCommit(booleanValueOf(refAddr));
         }
 
         refAddr = ref.get("defaultTransactionIsolation");
@@ -335,10 +339,18 @@ abstract class InstanceKeyDataSourceFactory implements 
ObjectFactory {
 
         refAddr = ref.get("defaultReadOnly");
         if (hasContent(refAddr)) {
-            ikds.setDefaultReadOnly(Boolean.valueOf(toString(refAddr)));
+            ikds.setDefaultReadOnly(booleanValueOf(refAddr));
         }
     }
 
+    private Duration toDurationFromMillis(RefAddr refAddr) {
+        return Duration.ofMillis(parseLong(refAddr));
+    }
+
+    private Duration toDurationFromSeconds(RefAddr refAddr) {
+        return Duration.ofSeconds(parseInt(refAddr));
+    }
+
     String toString(final RefAddr refAddr) {
         return refAddr.getContent().toString();
     }

Reply via email to