Update to latest 1.3 code
This commit is contained in:
parent
53f67a448f
commit
5468949a55
|
|
@ -373,7 +373,7 @@ public class CrshAutoConfigurationTests {
|
|||
|
||||
@Bean
|
||||
public AccessDecisionManager shellAccessDecisionManager() {
|
||||
List<AccessDecisionVoter<? extends Object>> voters = new ArrayList<AccessDecisionVoter<? extends Object>>();
|
||||
List<AccessDecisionVoter> voters = new ArrayList<AccessDecisionVoter>();
|
||||
RoleVoter voter = new RoleVoter();
|
||||
voter.setRolePrefix("");
|
||||
voters.add(voter);
|
||||
|
|
|
|||
|
|
@ -18,12 +18,16 @@ package org.springframework.boot.autoconfigure.condition;
|
|||
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.context.annotation.Condition;
|
||||
import org.springframework.context.annotation.ConditionContext;
|
||||
import org.springframework.context.annotation.Conditional;
|
||||
import org.springframework.core.annotation.AnnotationUtils;
|
||||
import org.springframework.core.type.AnnotatedTypeMetadata;
|
||||
import org.springframework.core.type.AnnotationMetadata;
|
||||
import org.springframework.core.type.ClassMetadata;
|
||||
import org.springframework.core.type.MethodMetadata;
|
||||
import org.springframework.core.type.StandardAnnotationMetadata;
|
||||
import org.springframework.util.ClassUtils;
|
||||
import org.springframework.util.StringUtils;
|
||||
|
||||
|
|
@ -37,6 +41,18 @@ import org.springframework.util.StringUtils;
|
|||
public abstract class SpringBootCondition implements Condition {
|
||||
|
||||
private final Log logger = LogFactory.getLog(getClass());
|
||||
|
||||
public static boolean evaluateForClass(Class<?> annotated, ConditionContext context) {
|
||||
Conditional conditional = AnnotationUtils.findAnnotation(annotated, Conditional.class);
|
||||
StandardAnnotationMetadata metadata = new StandardAnnotationMetadata(annotated);
|
||||
for (Class<? extends Condition> type : conditional.value()) {
|
||||
Condition condition = BeanUtils.instantiateClass(type);
|
||||
if (condition.matches(context, metadata)) {
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
@Override
|
||||
public final boolean matches(ConditionContext context, AnnotatedTypeMetadata metadata) {
|
||||
|
|
|
|||
|
|
@ -22,7 +22,6 @@ import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
|
|||
import org.springframework.boot.autoconfigure.condition.ConditionalOnClass;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnWebApplication;
|
||||
import org.springframework.boot.autoconfigure.condition.OnBeanCondition;
|
||||
import org.springframework.boot.autoconfigure.condition.SpringBootCondition;
|
||||
import org.springframework.boot.autoconfigure.security.SecurityProperties;
|
||||
import org.springframework.boot.autoconfigure.security.oauth2.ClientCredentialsProperties;
|
||||
|
|
@ -36,7 +35,6 @@ import org.springframework.context.annotation.ConfigurationCondition;
|
|||
import org.springframework.context.annotation.Import;
|
||||
import org.springframework.core.env.Environment;
|
||||
import org.springframework.core.type.AnnotatedTypeMetadata;
|
||||
import org.springframework.core.type.StandardAnnotationMetadata;
|
||||
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
|
||||
import org.springframework.security.oauth2.config.annotation.web.configuration.AuthorizationServerEndpointsConfiguration;
|
||||
import org.springframework.security.oauth2.config.annotation.web.configuration.EnableResourceServer;
|
||||
|
|
@ -111,11 +109,6 @@ public class SpringSecurityOAuth2ResourceServerConfiguration {
|
|||
protected static class ResourceServerCondition extends SpringBootCondition implements
|
||||
ConfigurationCondition {
|
||||
|
||||
private OnBeanCondition condition = new OnBeanCondition();
|
||||
|
||||
private StandardAnnotationMetadata beanMetaData = new StandardAnnotationMetadata(
|
||||
ResourceServerCondition.class);
|
||||
|
||||
@Override
|
||||
public ConfigurationPhase getConfigurationPhase() {
|
||||
return ConfigurationPhase.REGISTER_BEAN;
|
||||
|
|
@ -143,9 +136,9 @@ public class SpringSecurityOAuth2ResourceServerConfiguration {
|
|||
.isPresent(
|
||||
"org.springframework.security.oauth2.config.annotation.web.configuration.AuthorizationServerEndpointsConfiguration",
|
||||
null)) {
|
||||
if (this.condition.matches(context, this.beanMetaData)) {
|
||||
if (SpringBootCondition.evaluateForClass(ResourceServerCondition.class, context)) {
|
||||
return ConditionOutcome
|
||||
.match("found authorization server configuration");
|
||||
.match("found authorization server endpoints configuration");
|
||||
}
|
||||
}
|
||||
return ConditionOutcome
|
||||
|
|
|
|||
Loading…
Reference in New Issue