Replace Streams with Loops
First version of replacing streams fix wwwAuthenticate and codestyle fix errors in implementation to pass tests Fix review notes Remove uneccessary final to align with cb Short circuit way to authorize Simplify error message, make code readably Return error while duplicate key found Delete check for duplicate, checkstyle issues Return duplicate error Fixes gh-7154
This commit is contained in:
committed by
Josh Cummings
parent
d6d0d89ff8
commit
f6c650db47
@@ -43,12 +43,11 @@ import org.springframework.security.crypto.factory.PasswordEncoderFactories;
|
||||
import org.springframework.security.crypto.password.PasswordEncoder;
|
||||
import org.springframework.util.Assert;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.ArrayList;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* Exports the authentication {@link Configuration}
|
||||
@@ -153,10 +152,7 @@ public class AuthenticationConfiguration {
|
||||
}
|
||||
String beanName;
|
||||
if (beanNamesForType.length > 1) {
|
||||
List<String> primaryBeanNames = Arrays.stream(beanNamesForType)
|
||||
.filter(i -> applicationContext instanceof ConfigurableApplicationContext)
|
||||
.filter(n -> ((ConfigurableApplicationContext) applicationContext).getBeanFactory().getBeanDefinition(n).isPrimary())
|
||||
.collect(Collectors.toList());
|
||||
List<String> primaryBeanNames = getPrimaryBeanNames(beanNamesForType);
|
||||
|
||||
Assert.isTrue(primaryBeanNames.size() != 0, () -> "Found " + beanNamesForType.length
|
||||
+ " beans for type " + interfaceName + ", but none marked as primary");
|
||||
@@ -175,6 +171,20 @@ public class AuthenticationConfiguration {
|
||||
return (T) proxyFactory.getObject();
|
||||
}
|
||||
|
||||
private List<String> getPrimaryBeanNames(String[] beanNamesForType) {
|
||||
List<String> list = new ArrayList<>();
|
||||
if (!(applicationContext instanceof ConfigurableApplicationContext)) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
for (String beanName : beanNamesForType) {
|
||||
if (((ConfigurableApplicationContext) applicationContext).getBeanFactory()
|
||||
.getBeanDefinition(beanName).isPrimary()) {
|
||||
list.add(beanName);
|
||||
}
|
||||
}
|
||||
return list;
|
||||
}
|
||||
|
||||
private AuthenticationManager getAuthenticationManagerBean() {
|
||||
return lazyBean(AuthenticationManager.class);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user