public class org.springframework.context.'annotation'.AutoProxyRegistrar extends java.lang.Object implements org.springframework.context.'annotation'.ImportBeanDefinitionRegistrar
{
private final org.apache.commons.logging.Log logger;
public void <init>()
{
org.springframework.context.'annotation'.AutoProxyRegistrar v;
java.lang.Class v;
org.apache.commons.logging.Log v;
v := @this: org.springframework.context.'annotation'.AutoProxyRegistrar;
specialinvoke v.<java.lang.Object: void <init>()>();
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = staticinvoke <org.apache.commons.logging.LogFactory: org.apache.commons.logging.Log getLog(java.lang.Class)>(v);
v.<org.springframework.context.'annotation'.AutoProxyRegistrar: org.apache.commons.logging.Log logger> = v;
return;
}
public void registerBeanDefinitions(org.springframework.core.type.AnnotationMetadata, org.springframework.beans.factory.support.BeanDefinitionRegistry)
{
java.lang.Object[] v;
org.springframework.context.'annotation'.AutoProxyRegistrar v;
org.springframework.beans.factory.support.BeanDefinitionRegistry v;
java.lang.String v, v;
boolean v, v, v, v;
java.util.Iterator v;
org.springframework.context.'annotation'.AdviceMode v;
org.springframework.core.type.AnnotationMetadata v;
java.util.Set v;
java.lang.Class v, v, v;
java.lang.Object v, v, v;
org.apache.commons.logging.Log v, v;
org.springframework.core.'annotation'.AnnotationAttributes v;
v := @this: org.springframework.context.'annotation'.AutoProxyRegistrar;
v := @parameter: org.springframework.core.type.AnnotationMetadata;
v := @parameter: org.springframework.beans.factory.support.BeanDefinitionRegistry;
v = 0;
v = interfaceinvoke v.<org.springframework.core.type.AnnotationMetadata: java.util.Set getAnnotationTypes()>();
v = interfaceinvoke v.<java.util.Set: java.util.Iterator iterator()>();
label:
v = interfaceinvoke v.<java.util.Iterator: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<java.util.Iterator: java.lang.Object next()>();
v = staticinvoke <org.springframework.context.'annotation'.AnnotationConfigUtils: org.springframework.core.'annotation'.AnnotationAttributes attributesFor(org.springframework.core.type.AnnotatedTypeMetadata,java.lang.String)>(v, v);
if v == null goto label;
v = virtualinvoke v.<org.springframework.core.'annotation'.AnnotationAttributes: java.lang.Object get(java.lang.Object)>("mode");
v = virtualinvoke v.<org.springframework.core.'annotation'.AnnotationAttributes: java.lang.Object get(java.lang.Object)>("proxyTargetClass");
if v == null goto label;
if v == null goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
if class "Lorg/springframework/context/annotation/AdviceMode;" != v goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
if class "Ljava/lang/Boolean;" != v goto label;
v = 1;
v = <org.springframework.context.'annotation'.AdviceMode: org.springframework.context.'annotation'.AdviceMode PROXY>;
if v != v goto label;
staticinvoke <org.springframework.aop.config.AopConfigUtils: org.springframework.beans.factory.config.BeanDefinition registerAutoProxyCreatorIfNecessary(org.springframework.beans.factory.support.BeanDefinitionRegistry)>(v);
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
if v == 0 goto label;
staticinvoke <org.springframework.aop.config.AopConfigUtils: void forceAutoProxyCreatorToUseClassProxying(org.springframework.beans.factory.support.BeanDefinitionRegistry)>(v);
return;
label:
if v != 0 goto label;
v = v.<org.springframework.context.'annotation'.AutoProxyRegistrar: org.apache.commons.logging.Log logger>;
v = interfaceinvoke v.<org.apache.commons.logging.Log: boolean isWarnEnabled()>();
if v == 0 goto label;
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
v = v.<org.springframework.context.'annotation'.AutoProxyRegistrar: org.apache.commons.logging.Log logger>;
v = newarray (java.lang.Object)[3];
v[0] = v;
v[1] = v;
v[2] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("%s was imported but no annotations were found having both \'mode\' and \'proxyTargetClass\' attributes of type AdviceMode and boolean respectively. This means that auto proxy creator registration and configuration may not have occurred as intended, and components may not be proxied as expected. Check to ensure that %s has been @Import\'ed on the same class where these annotations are declared; otherwise remove the import of %s altogether.", v);
interfaceinvoke v.<org.apache.commons.logging.Log: void warn(java.lang.Object)>(v);
label:
return;
}
}