Anonymous type can be replaced with lambda
This commit is contained in:
committed by
Josh Cummings
parent
05f42a4995
commit
fb39d9c255
@@ -178,19 +178,9 @@ public class AnnotationParameterNameDiscoverer implements ParameterNameDiscovere
|
||||
return null;
|
||||
}
|
||||
|
||||
private static final ParameterNameFactory<Constructor<?>> CONSTRUCTOR_METHODPARAM_FACTORY = new ParameterNameFactory<Constructor<?>>() {
|
||||
private static final ParameterNameFactory<Constructor<?>> CONSTRUCTOR_METHODPARAM_FACTORY = constructor -> constructor.getParameterAnnotations();
|
||||
|
||||
public Annotation[][] findParameterAnnotations(Constructor<?> constructor) {
|
||||
return constructor.getParameterAnnotations();
|
||||
}
|
||||
};
|
||||
|
||||
private static final ParameterNameFactory<Method> METHOD_METHODPARAM_FACTORY = new ParameterNameFactory<Method>() {
|
||||
|
||||
public Annotation[][] findParameterAnnotations(Method method) {
|
||||
return method.getParameterAnnotations();
|
||||
}
|
||||
};
|
||||
private static final ParameterNameFactory<Method> METHOD_METHODPARAM_FACTORY = method -> method.getParameterAnnotations();
|
||||
|
||||
/**
|
||||
* Strategy interface for looking up the parameter names.
|
||||
|
||||
@@ -16,8 +16,6 @@
|
||||
|
||||
package org.springframework.security.core.userdetails.jdbc;
|
||||
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
@@ -27,7 +25,6 @@ import org.springframework.context.ApplicationContextException;
|
||||
import org.springframework.context.MessageSource;
|
||||
import org.springframework.context.MessageSourceAware;
|
||||
import org.springframework.context.support.MessageSourceAccessor;
|
||||
import org.springframework.jdbc.core.RowMapper;
|
||||
import org.springframework.jdbc.core.support.JdbcDaoSupport;
|
||||
import org.springframework.security.core.GrantedAuthority;
|
||||
import org.springframework.security.core.SpringSecurityMessageSource;
|
||||
@@ -225,17 +222,12 @@ public class JdbcDaoImpl extends JdbcDaoSupport
|
||||
*/
|
||||
protected List<UserDetails> loadUsersByUsername(String username) {
|
||||
return getJdbcTemplate().query(this.usersByUsernameQuery,
|
||||
new String[] { username }, new RowMapper<UserDetails>() {
|
||||
@Override
|
||||
public UserDetails mapRow(ResultSet rs, int rowNum)
|
||||
throws SQLException {
|
||||
String username = rs.getString(1);
|
||||
String password = rs.getString(2);
|
||||
boolean enabled = rs.getBoolean(3);
|
||||
return new User(username, password, enabled, true, true, true,
|
||||
AuthorityUtils.NO_AUTHORITIES);
|
||||
}
|
||||
|
||||
new String[] { username }, (rs, rowNum) -> {
|
||||
String username1 = rs.getString(1);
|
||||
String password = rs.getString(2);
|
||||
boolean enabled = rs.getBoolean(3);
|
||||
return new User(username1, password, enabled, true, true, true,
|
||||
AuthorityUtils.NO_AUTHORITIES);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -246,14 +238,10 @@ public class JdbcDaoImpl extends JdbcDaoSupport
|
||||
*/
|
||||
protected List<GrantedAuthority> loadUserAuthorities(String username) {
|
||||
return getJdbcTemplate().query(this.authoritiesByUsernameQuery,
|
||||
new String[] { username }, new RowMapper<GrantedAuthority>() {
|
||||
@Override
|
||||
public GrantedAuthority mapRow(ResultSet rs, int rowNum)
|
||||
throws SQLException {
|
||||
String roleName = JdbcDaoImpl.this.rolePrefix + rs.getString(2);
|
||||
new String[] { username }, (rs, rowNum) -> {
|
||||
String roleName = JdbcDaoImpl.this.rolePrefix + rs.getString(2);
|
||||
|
||||
return new SimpleGrantedAuthority(roleName);
|
||||
}
|
||||
return new SimpleGrantedAuthority(roleName);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -265,14 +253,10 @@ public class JdbcDaoImpl extends JdbcDaoSupport
|
||||
*/
|
||||
protected List<GrantedAuthority> loadGroupAuthorities(String username) {
|
||||
return getJdbcTemplate().query(this.groupAuthoritiesByUsernameQuery,
|
||||
new String[] { username }, new RowMapper<GrantedAuthority>() {
|
||||
@Override
|
||||
public GrantedAuthority mapRow(ResultSet rs, int rowNum)
|
||||
throws SQLException {
|
||||
String roleName = getRolePrefix() + rs.getString(3);
|
||||
new String[] { username }, (rs, rowNum) -> {
|
||||
String roleName = getRolePrefix() + rs.getString(3);
|
||||
|
||||
return new SimpleGrantedAuthority(roleName);
|
||||
}
|
||||
return new SimpleGrantedAuthority(roleName);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
@@ -32,16 +32,12 @@ import org.springframework.security.core.userdetails.jdbc.JdbcDaoImpl;
|
||||
import org.springframework.context.ApplicationContextException;
|
||||
import org.springframework.dao.IncorrectResultSizeDataAccessException;
|
||||
import org.springframework.jdbc.core.PreparedStatementSetter;
|
||||
import org.springframework.jdbc.core.RowMapper;
|
||||
import org.springframework.util.Assert;
|
||||
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
|
||||
import javax.sql.DataSource;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.util.Collection;
|
||||
import java.util.List;
|
||||
|
||||
@@ -176,20 +172,17 @@ public class JdbcUserDetailsManager extends JdbcDaoImpl implements UserDetailsMa
|
||||
public void createUser(final UserDetails user) {
|
||||
validateUserDetails(user);
|
||||
|
||||
getJdbcTemplate().update(createUserSql, new PreparedStatementSetter() {
|
||||
@Override
|
||||
public void setValues(PreparedStatement ps) throws SQLException {
|
||||
ps.setString(1, user.getUsername());
|
||||
ps.setString(2, user.getPassword());
|
||||
ps.setBoolean(3, user.isEnabled());
|
||||
getJdbcTemplate().update(createUserSql, ps -> {
|
||||
ps.setString(1, user.getUsername());
|
||||
ps.setString(2, user.getPassword());
|
||||
ps.setBoolean(3, user.isEnabled());
|
||||
|
||||
int paramCount = ps.getParameterMetaData().getParameterCount();
|
||||
if (paramCount > 3) {
|
||||
//NOTE: acc_locked, acc_expired and creds_expired are also to be inserted
|
||||
ps.setBoolean(4, !user.isAccountNonLocked());
|
||||
ps.setBoolean(5, !user.isAccountNonExpired());
|
||||
ps.setBoolean(6, !user.isCredentialsNonExpired());
|
||||
}
|
||||
int paramCount = ps.getParameterMetaData().getParameterCount();
|
||||
if (paramCount > 3) {
|
||||
//NOTE: acc_locked, acc_expired and creds_expired are also to be inserted
|
||||
ps.setBoolean(4, !user.isAccountNonLocked());
|
||||
ps.setBoolean(5, !user.isAccountNonExpired());
|
||||
ps.setBoolean(6, !user.isCredentialsNonExpired());
|
||||
}
|
||||
});
|
||||
|
||||
@@ -201,25 +194,22 @@ public class JdbcUserDetailsManager extends JdbcDaoImpl implements UserDetailsMa
|
||||
public void updateUser(final UserDetails user) {
|
||||
validateUserDetails(user);
|
||||
|
||||
getJdbcTemplate().update(updateUserSql, new PreparedStatementSetter() {
|
||||
@Override
|
||||
public void setValues(PreparedStatement ps) throws SQLException {
|
||||
ps.setString(1, user.getPassword());
|
||||
ps.setBoolean(2, user.isEnabled());
|
||||
getJdbcTemplate().update(updateUserSql, ps -> {
|
||||
ps.setString(1, user.getPassword());
|
||||
ps.setBoolean(2, user.isEnabled());
|
||||
|
||||
int paramCount = ps.getParameterMetaData().getParameterCount();
|
||||
if (paramCount == 3) {
|
||||
ps.setString(3, user.getUsername());
|
||||
} else {
|
||||
//NOTE: acc_locked, acc_expired and creds_expired are also updated
|
||||
ps.setBoolean(3, !user.isAccountNonLocked());
|
||||
ps.setBoolean(4, !user.isAccountNonExpired());
|
||||
ps.setBoolean(5, !user.isCredentialsNonExpired());
|
||||
|
||||
ps.setString(6, user.getUsername());
|
||||
}
|
||||
int paramCount = ps.getParameterMetaData().getParameterCount();
|
||||
if (paramCount == 3) {
|
||||
ps.setString(3, user.getUsername());
|
||||
} else {
|
||||
//NOTE: acc_locked, acc_expired and creds_expired are also updated
|
||||
ps.setBoolean(3, !user.isAccountNonLocked());
|
||||
ps.setBoolean(4, !user.isAccountNonExpired());
|
||||
ps.setBoolean(5, !user.isCredentialsNonExpired());
|
||||
|
||||
ps.setString(6, user.getUsername());
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
if (getEnableAuthorities()) {
|
||||
@@ -337,11 +327,9 @@ public class JdbcUserDetailsManager extends JdbcDaoImpl implements UserDetailsMa
|
||||
for (GrantedAuthority a : authorities) {
|
||||
final String authority = a.getAuthority();
|
||||
getJdbcTemplate().update(insertGroupAuthoritySql,
|
||||
new PreparedStatementSetter() {
|
||||
public void setValues(PreparedStatement ps) throws SQLException {
|
||||
ps.setInt(1, groupId);
|
||||
ps.setString(2, authority);
|
||||
}
|
||||
ps -> {
|
||||
ps.setInt(1, groupId);
|
||||
ps.setString(2, authority);
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -351,11 +339,7 @@ public class JdbcUserDetailsManager extends JdbcDaoImpl implements UserDetailsMa
|
||||
Assert.hasText(groupName, "groupName should have text");
|
||||
|
||||
final int id = findGroupId(groupName);
|
||||
PreparedStatementSetter groupIdPSS = new PreparedStatementSetter() {
|
||||
public void setValues(PreparedStatement ps) throws SQLException {
|
||||
ps.setInt(1, id);
|
||||
}
|
||||
};
|
||||
PreparedStatementSetter groupIdPSS = ps -> ps.setInt(1, id);
|
||||
getJdbcTemplate().update(deleteGroupMembersSql, groupIdPSS);
|
||||
getJdbcTemplate().update(deleteGroupAuthoritiesSql, groupIdPSS);
|
||||
getJdbcTemplate().update(deleteGroupSql, groupIdPSS);
|
||||
@@ -375,11 +359,9 @@ public class JdbcUserDetailsManager extends JdbcDaoImpl implements UserDetailsMa
|
||||
Assert.hasText(groupName, "groupName should have text");
|
||||
|
||||
final int id = findGroupId(groupName);
|
||||
getJdbcTemplate().update(insertGroupMemberSql, new PreparedStatementSetter() {
|
||||
public void setValues(PreparedStatement ps) throws SQLException {
|
||||
ps.setInt(1, id);
|
||||
ps.setString(2, username);
|
||||
}
|
||||
getJdbcTemplate().update(insertGroupMemberSql, ps -> {
|
||||
ps.setInt(1, id);
|
||||
ps.setString(2, username);
|
||||
});
|
||||
|
||||
userCache.removeUserFromCache(username);
|
||||
@@ -392,11 +374,9 @@ public class JdbcUserDetailsManager extends JdbcDaoImpl implements UserDetailsMa
|
||||
|
||||
final int id = findGroupId(groupName);
|
||||
|
||||
getJdbcTemplate().update(deleteGroupMemberSql, new PreparedStatementSetter() {
|
||||
public void setValues(PreparedStatement ps) throws SQLException {
|
||||
ps.setInt(1, id);
|
||||
ps.setString(2, username);
|
||||
}
|
||||
getJdbcTemplate().update(deleteGroupMemberSql, ps -> {
|
||||
ps.setInt(1, id);
|
||||
ps.setString(2, username);
|
||||
});
|
||||
|
||||
userCache.removeUserFromCache(username);
|
||||
@@ -407,13 +387,10 @@ public class JdbcUserDetailsManager extends JdbcDaoImpl implements UserDetailsMa
|
||||
Assert.hasText(groupName, "groupName should have text");
|
||||
|
||||
return getJdbcTemplate().query(groupAuthoritiesSql, new String[] { groupName },
|
||||
new RowMapper<GrantedAuthority>() {
|
||||
public GrantedAuthority mapRow(ResultSet rs, int rowNum)
|
||||
throws SQLException {
|
||||
String roleName = getRolePrefix() + rs.getString(3);
|
||||
(rs, rowNum) -> {
|
||||
String roleName = getRolePrefix() + rs.getString(3);
|
||||
|
||||
return new SimpleGrantedAuthority(roleName);
|
||||
}
|
||||
return new SimpleGrantedAuthority(roleName);
|
||||
});
|
||||
}
|
||||
|
||||
@@ -425,12 +402,9 @@ public class JdbcUserDetailsManager extends JdbcDaoImpl implements UserDetailsMa
|
||||
|
||||
final int id = findGroupId(groupName);
|
||||
|
||||
getJdbcTemplate().update(deleteGroupAuthoritySql, new PreparedStatementSetter() {
|
||||
|
||||
public void setValues(PreparedStatement ps) throws SQLException {
|
||||
ps.setInt(1, id);
|
||||
ps.setString(2, authority.getAuthority());
|
||||
}
|
||||
getJdbcTemplate().update(deleteGroupAuthoritySql, ps -> {
|
||||
ps.setInt(1, id);
|
||||
ps.setString(2, authority.getAuthority());
|
||||
});
|
||||
}
|
||||
|
||||
@@ -440,11 +414,9 @@ public class JdbcUserDetailsManager extends JdbcDaoImpl implements UserDetailsMa
|
||||
Assert.notNull(authority, "authority cannot be null");
|
||||
|
||||
final int id = findGroupId(groupName);
|
||||
getJdbcTemplate().update(insertGroupAuthoritySql, new PreparedStatementSetter() {
|
||||
public void setValues(PreparedStatement ps) throws SQLException {
|
||||
ps.setInt(1, id);
|
||||
ps.setString(2, authority.getAuthority());
|
||||
}
|
||||
getJdbcTemplate().update(insertGroupAuthoritySql, ps -> {
|
||||
ps.setInt(1, id);
|
||||
ps.setString(2, authority.getAuthority());
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user