You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2014/03/25 23:58:39 UTC
svn commit: r1581579 - in /tomcat/trunk/java/org/apache/catalina/realm:
DataSourceRealm.java JDBCRealm.java
Author: markt
Date: Tue Mar 25 22:58:38 2014
New Revision: 1581579
URL: http://svn.apache.org/r1581579
Log:
try with resources
Modified:
tomcat/trunk/java/org/apache/catalina/realm/DataSourceRealm.java
tomcat/trunk/java/org/apache/catalina/realm/JDBCRealm.java
Modified: tomcat/trunk/java/org/apache/catalina/realm/DataSourceRealm.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/realm/DataSourceRealm.java?rev=1581579&r1=1581578&r2=1581579&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/realm/DataSourceRealm.java (original)
+++ tomcat/trunk/java/org/apache/catalina/realm/DataSourceRealm.java Tue Mar 25 22:58:38 2014
@@ -408,37 +408,20 @@ public class DataSourceRealm extends Rea
protected String getPassword(Connection dbConnection,
String username) {
- ResultSet rs = null;
- PreparedStatement stmt = null;
String dbCredentials = null;
- try {
- stmt = credentials(dbConnection, username);
- rs = stmt.executeQuery();
+ try (PreparedStatement stmt = credentials(dbConnection, username);
+ ResultSet rs = stmt.executeQuery()) {
if (rs.next()) {
dbCredentials = rs.getString(1);
}
return (dbCredentials != null) ? dbCredentials.trim() : null;
- } catch(SQLException e) {
+ } catch (SQLException e) {
containerLog.error(
sm.getString("dataSourceRealm.getPassword.exception",
username), e);
- } finally {
- try {
- if (rs != null) {
- rs.close();
- }
- if (stmt != null) {
- stmt.close();
- }
- } catch (SQLException e) {
- containerLog.error(
- sm.getString("dataSourceRealm.getPassword.exception",
- username), e);
-
- }
}
return null;
@@ -499,13 +482,10 @@ public class DataSourceRealm extends Rea
return null;
}
- ResultSet rs = null;
- PreparedStatement stmt = null;
ArrayList<String> list = null;
- try {
- stmt = roles(dbConnection, username);
- rs = stmt.executeQuery();
+ try (PreparedStatement stmt = roles(dbConnection, username);
+ ResultSet rs = stmt.executeQuery()) {
list = new ArrayList<>();
while (rs.next()) {
@@ -519,20 +499,6 @@ public class DataSourceRealm extends Rea
containerLog.error(
sm.getString("dataSourceRealm.getRoles.exception", username), e);
}
- finally {
- try {
- if (rs != null) {
- rs.close();
- }
- if (stmt != null) {
- stmt.close();
- }
- } catch (SQLException e) {
- containerLog.error(
- sm.getString("dataSourceRealm.getRoles.exception",
- username), e);
- }
- }
return null;
}
Modified: tomcat/trunk/java/org/apache/catalina/realm/JDBCRealm.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/realm/JDBCRealm.java?rev=1581579&r1=1581578&r2=1581579&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/catalina/realm/JDBCRealm.java (original)
+++ tomcat/trunk/java/org/apache/catalina/realm/JDBCRealm.java Tue Mar 25 22:58:38 2014
@@ -507,8 +507,6 @@ public class JDBCRealm
// Look up the user's credentials
String dbCredentials = null;
- PreparedStatement stmt = null;
- ResultSet rs = null;
// Number of tries is the number of attempts to connect to the database
// during this login attempt (if we need to open the database)
@@ -524,32 +522,23 @@ public class JDBCRealm
// Ensure that we have an open database connection
open();
- stmt = credentials(dbConnection, username);
- rs = stmt.executeQuery();
- if (rs.next()) {
- dbCredentials = rs.getString(1);
- }
-
- dbConnection.commit();
+ try (PreparedStatement stmt = credentials(dbConnection, username);
+ ResultSet rs = stmt.executeQuery()) {
+ if (rs.next()) {
+ dbCredentials = rs.getString(1);
+ }
- if (dbCredentials != null) {
- dbCredentials = dbCredentials.trim();
- }
+ dbConnection.commit();
- return dbCredentials;
+ if (dbCredentials != null) {
+ dbCredentials = dbCredentials.trim();
+ }
+ return dbCredentials;
+ }
} catch (SQLException e) {
// Log the problem for posterity
containerLog.error(sm.getString("jdbcRealm.exception"), e);
- } finally {
- if (rs != null) {
- try {
- rs.close();
- } catch(SQLException e) {
- containerLog.warn(sm.getString(
- "jdbcRealm.abnormalCloseResultSet"));
- }
- }
}
// Close the connection so that it gets reopened next time
@@ -560,7 +549,7 @@ public class JDBCRealm
numberOfTries--;
}
- return (null);
+ return null;
}
@@ -588,9 +577,6 @@ public class JDBCRealm
return null;
}
- PreparedStatement stmt = null;
- ResultSet rs = null;
-
// Number of tries is the number of attempts to connect to the database
// during this login attempt (if we need to open the database)
// This needs rewritten wuth better pooling support, the existing code
@@ -602,46 +588,32 @@ public class JDBCRealm
int numberOfTries = 2;
while (numberOfTries>0) {
try {
-
// Ensure that we have an open database connection
open();
- try {
+ try (PreparedStatement stmt = roles(dbConnection, username);
+ ResultSet rs = stmt.executeQuery()) {
// Accumulate the user's roles
ArrayList<String> roleList = new ArrayList<>();
- stmt = roles(dbConnection, username);
- rs = stmt.executeQuery();
+
while (rs.next()) {
String role = rs.getString(1);
if (null!=role) {
roleList.add(role.trim());
}
}
- rs.close();
- rs = null;
-
- return (roleList);
+ return roleList;
} finally {
- if (rs!=null) {
- try {
- rs.close();
- } catch(SQLException e) {
- containerLog.warn(sm.getString("jdbcRealm.abnormalCloseResultSet"));
- }
- }
dbConnection.commit();
}
-
} catch (SQLException e) {
-
// Log the problem for posterity
containerLog.error(sm.getString("jdbcRealm.exception"), e);
// Close the connection so that it gets reopened next time
if (dbConnection != null)
close(dbConnection);
-
}
numberOfTries--;
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org