public abstract class org.apache.dubbo.config.ReferenceConfigBase extends org.apache.dubbo.config.AbstractReferenceConfig
{
private static final long serialVersionUID;
protected java.lang.Class interfaceClass;
protected java.lang.String client;
protected java.lang.String url;
protected org.apache.dubbo.config.ConsumerConfig consumer;
protected java.lang.String protocol;
public void <init>()
{
org.apache.dubbo.config.ReferenceConfigBase v;
org.apache.dubbo.rpc.model.ServiceMetadata v, v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
specialinvoke v.<org.apache.dubbo.config.AbstractReferenceConfig: void <init>()>();
v = new org.apache.dubbo.rpc.model.ServiceMetadata;
specialinvoke v.<org.apache.dubbo.rpc.model.ServiceMetadata: void <init>()>();
v.<org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.rpc.model.ServiceMetadata serviceMetadata> = v;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.rpc.model.ServiceMetadata serviceMetadata>;
virtualinvoke v.<org.apache.dubbo.rpc.model.ServiceMetadata: void addAttribute(java.lang.String,java.lang.Object)>("ORIGIN_CONFIG", v);
return;
}
public void <init>(org.apache.dubbo.config.'annotation'.Reference)
{
java.util.List v;
org.apache.dubbo.config.'annotation'.Method[] v;
org.apache.dubbo.config.'annotation'.Reference v;
org.apache.dubbo.config.ReferenceConfigBase v;
org.apache.dubbo.rpc.model.ServiceMetadata v, v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v := @parameter: org.apache.dubbo.config.'annotation'.Reference;
specialinvoke v.<org.apache.dubbo.config.AbstractReferenceConfig: void <init>()>();
v = new org.apache.dubbo.rpc.model.ServiceMetadata;
specialinvoke v.<org.apache.dubbo.rpc.model.ServiceMetadata: void <init>()>();
v.<org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.rpc.model.ServiceMetadata serviceMetadata> = v;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.rpc.model.ServiceMetadata serviceMetadata>;
virtualinvoke v.<org.apache.dubbo.rpc.model.ServiceMetadata: void addAttribute(java.lang.String,java.lang.Object)>("ORIGIN_CONFIG", v);
virtualinvoke v.<org.apache.dubbo.config.ReferenceConfigBase: void appendAnnotation(java.lang.Class,java.lang.Object)>(class "Lorg/apache/dubbo/config/annotation/Reference;", v);
v = interfaceinvoke v.<org.apache.dubbo.config.'annotation'.Reference: org.apache.dubbo.config.'annotation'.Method[] methods()>();
v = staticinvoke <org.apache.dubbo.config.MethodConfig: java.util.List constructMethodConfig(org.apache.dubbo.config.'annotation'.Method[])>(v);
virtualinvoke v.<org.apache.dubbo.config.ReferenceConfigBase: void setMethods(java.util.List)>(v);
return;
}
public boolean shouldCheck()
{
java.lang.Boolean v;
org.apache.dubbo.config.ReferenceConfigBase v;
org.apache.dubbo.config.ConsumerConfig v, v;
boolean v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v = virtualinvoke v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.Boolean isCheck()>();
if v != null goto label;
v = virtualinvoke v.<org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.config.ConsumerConfig getConsumer()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.config.ConsumerConfig getConsumer()>();
v = virtualinvoke v.<org.apache.dubbo.config.ConsumerConfig: java.lang.Boolean isCheck()>();
label:
if v != null goto label;
v = staticinvoke <java.lang.Boolean: java.lang.Boolean valueOf(boolean)>(1);
label:
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
return v;
}
public boolean shouldInit()
{
java.lang.Boolean v;
org.apache.dubbo.config.ReferenceConfigBase v;
org.apache.dubbo.config.ConsumerConfig v, v;
boolean v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v = virtualinvoke v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.Boolean isInit()>();
if v != null goto label;
v = virtualinvoke v.<org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.config.ConsumerConfig getConsumer()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.config.ConsumerConfig getConsumer()>();
v = virtualinvoke v.<org.apache.dubbo.config.ConsumerConfig: java.lang.Boolean isInit()>();
label:
if v != null goto label;
return 1;
label:
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
return v;
}
public void checkDefault() throws java.lang.IllegalStateException
{
java.util.Optional v;
java.lang.Object v;
org.apache.dubbo.config.ReferenceConfigBase v;
org.apache.dubbo.config.ConsumerConfig v, v;
org.apache.dubbo.config.context.ConfigManager v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.config.ConsumerConfig consumer>;
if v != null goto label;
v = staticinvoke <org.apache.dubbo.rpc.model.ApplicationModel: org.apache.dubbo.config.context.ConfigManager getConfigManager()>();
v = virtualinvoke v.<org.apache.dubbo.config.context.ConfigManager: java.util.Optional getDefaultConsumer()>();
v = new org.apache.dubbo.config.ConsumerConfig;
specialinvoke v.<org.apache.dubbo.config.ConsumerConfig: void <init>()>();
v = virtualinvoke v.<java.util.Optional: java.lang.Object orElse(java.lang.Object)>(v);
v.<org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.config.ConsumerConfig consumer> = v;
label:
return;
}
public java.lang.Class getActualInterface()
{
java.lang.Class v, v;
java.lang.ClassNotFoundException v;
org.apache.dubbo.config.ReferenceConfigBase v;
java.lang.String v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.Class interfaceClass>;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.Class interfaceClass>;
if v != class "Lorg/apache/dubbo/rpc/service/GenericService;" goto label;
label:
v = v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String interfaceName>;
v = staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
label:
return v;
catch java.lang.ClassNotFoundException from label to label with label;
}
public java.lang.Class getInterfaceClass()
{
java.lang.IllegalStateException v;
org.apache.dubbo.config.ReferenceConfigBase v;
org.apache.dubbo.config.ConsumerConfig v, v;
int v;
java.lang.String v, v, v, v, v, v;
boolean v, v;
java.lang.Class v, v, v, v;
java.lang.ClassNotFoundException v;
java.lang.ClassLoader v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.Class interfaceClass>;
if v == null goto label;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.Class interfaceClass>;
return v;
label:
v = virtualinvoke v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String getGeneric()>();
v = staticinvoke <org.apache.dubbo.rpc.support.ProtocolUtils: boolean isGeneric(java.lang.String)>(v);
if v != 0 goto label;
v = virtualinvoke v.<org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.config.ConsumerConfig getConsumer()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.config.ConsumerConfig getConsumer()>();
v = virtualinvoke v.<org.apache.dubbo.config.ConsumerConfig: java.lang.String getGeneric()>();
v = staticinvoke <org.apache.dubbo.rpc.support.ProtocolUtils: boolean isGeneric(java.lang.String)>(v);
if v == 0 goto label;
label:
return class "Lorg/apache/dubbo/rpc/service/GenericService;";
label:
v = v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String interfaceName>;
if v == null goto label;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String interfaceName>;
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String interfaceName>;
v = staticinvoke <org.apache.dubbo.common.utils.ClassUtils: java.lang.ClassLoader getClassLoader()>();
v = staticinvoke <java.lang.Class: java.lang.Class forName(java.lang.String,boolean,java.lang.ClassLoader)>(v, 1, v);
v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.Class interfaceClass> = v;
label:
goto label;
label:
v := @caughtexception;
v = new java.lang.IllegalStateException;
v = virtualinvoke v.<java.lang.ClassNotFoundException: java.lang.String getMessage()>();
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
label:
v = v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.Class interfaceClass>;
return v;
catch java.lang.ClassNotFoundException from label to label with label;
}
public void setInterfaceClass(java.lang.Class)
{
java.lang.Class v;
org.apache.dubbo.config.ReferenceConfigBase v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v := @parameter: java.lang.Class;
virtualinvoke v.<org.apache.dubbo.config.ReferenceConfigBase: void setInterface(java.lang.Class)>(v);
return;
}
public void setInterface(java.lang.Class)
{
java.lang.IllegalStateException v;
java.lang.Class v;
org.apache.dubbo.config.ReferenceConfigBase v;
java.lang.String v, v;
boolean v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v := @parameter: java.lang.Class;
if v == null goto label;
v = virtualinvoke v.<java.lang.Class: boolean isInterface()>();
if v != 0 goto label;
v = new java.lang.IllegalStateException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.Class)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("The interface class \u is not a interface!");
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
throw v;
label:
v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.Class interfaceClass> = v;
if v != null goto label;
v = null;
goto label;
label:
v = virtualinvoke v.<java.lang.Class: java.lang.String getName()>();
label:
virtualinvoke v.<org.apache.dubbo.config.ReferenceConfigBase: void setInterface(java.lang.String)>(v);
return;
}
public java.lang.String getClient()
{
org.apache.dubbo.config.ReferenceConfigBase v;
java.lang.String v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String client>;
return v;
}
public void setClient(java.lang.String)
{
org.apache.dubbo.config.ReferenceConfigBase v;
java.lang.String v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v := @parameter: java.lang.String;
v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String client> = v;
return;
}
public java.lang.String getUrl()
{
org.apache.dubbo.config.ReferenceConfigBase v;
java.lang.String v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String url>;
return v;
}
public void setUrl(java.lang.String)
{
org.apache.dubbo.config.ReferenceConfigBase v;
java.lang.String v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v := @parameter: java.lang.String;
v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String url> = v;
return;
}
public org.apache.dubbo.config.ConsumerConfig getConsumer()
{
org.apache.dubbo.config.ReferenceConfigBase v;
org.apache.dubbo.config.ConsumerConfig v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.config.ConsumerConfig consumer>;
return v;
}
public void setConsumer(org.apache.dubbo.config.ConsumerConfig)
{
org.apache.dubbo.config.ReferenceConfigBase v;
org.apache.dubbo.config.ConsumerConfig v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v := @parameter: org.apache.dubbo.config.ConsumerConfig;
v.<org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.config.ConsumerConfig consumer> = v;
return;
}
public java.lang.String getProtocol()
{
org.apache.dubbo.config.ReferenceConfigBase v;
java.lang.String v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String protocol>;
return v;
}
public void setProtocol(java.lang.String)
{
org.apache.dubbo.config.ReferenceConfigBase v;
java.lang.String v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v := @parameter: java.lang.String;
v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String protocol> = v;
return;
}
public org.apache.dubbo.rpc.model.ServiceMetadata getServiceMetadata()
{
org.apache.dubbo.config.ReferenceConfigBase v;
org.apache.dubbo.rpc.model.ServiceMetadata v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.rpc.model.ServiceMetadata serviceMetadata>;
return v;
}
public java.lang.String getPrefix()
{
org.apache.dubbo.config.ReferenceConfigBase v;
java.lang.String v, v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String interfaceName>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String)>(v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("dubbo.reference.\u0001");
return v;
}
public void resolveFile()
{
java.lang.Throwable v;
java.lang.IllegalStateException v;
org.apache.dubbo.config.ReferenceConfigBase v;
int v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v;
boolean v, v, v, v;
java.util.Properties v;
org.apache.dubbo.common.logger.Logger v, v, v;
java.io.IOException v;
java.io.FileInputStream v;
java.io.File v, v, v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String interfaceName>;
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String)>(v);
v = null;
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: boolean isEmpty(java.lang.String)>(v);
if v == 0 goto label;
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String)>("dubbo.resolve.file");
v = staticinvoke <org.apache.dubbo.common.utils.StringUtils: boolean isEmpty(java.lang.String)>(v);
if v == 0 goto label;
v = new java.io.File;
v = new java.io.File;
v = staticinvoke <java.lang.System: java.lang.String getProperty(java.lang.String)>("user.home");
specialinvoke v.<java.io.File: void <init>(java.lang.String)>(v);
specialinvoke v.<java.io.File: void <init>(java.io.File,java.lang.String)>(v, "dubbo-resolve.properties");
v = virtualinvoke v.<java.io.File: boolean exists()>();
if v == 0 goto label;
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
label:
if v == null goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = new java.util.Properties;
specialinvoke v.<java.util.Properties: void <init>()>();
label:
v = new java.io.FileInputStream;
v = new java.io.File;
specialinvoke v.<java.io.File: void <init>(java.lang.String)>(v);
specialinvoke v.<java.io.FileInputStream: void <init>(java.io.File)>(v);
label:
virtualinvoke v.<java.util.Properties: void load(java.io.InputStream)>(v);
label:
virtualinvoke v.<java.io.FileInputStream: void close()>();
goto label;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = new java.lang.IllegalStateException;
v = virtualinvoke v.<java.io.IOException: java.lang.String getMessage()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Failed to load \u, cause: \u0001");
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String,java.lang.Throwable)>(v, v);
throw v;
label:
v = v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String interfaceName>;
v = virtualinvoke v.<java.util.Properties: java.lang.String getProperty(java.lang.String)>(v);
label:
if v == null goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String url> = v;
v = <org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.common.logger.Logger logger>;
v = interfaceinvoke v.<org.apache.dubbo.common.logger.Logger: boolean isWarnEnabled()>();
if v == 0 goto label;
if v == null goto label;
v = <org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.common.logger.Logger logger>;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String interfaceName>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,java.lang.String)>(v, v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Using default dubbo resolve file \u replace \u0001\u to p2p invoke remote service.");
interfaceinvoke v.<org.apache.dubbo.common.logger.Logger: void warn(java.lang.String)>(v);
goto label;
label:
v = <org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.common.logger.Logger logger>;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String interfaceName>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String)>(v, v) <java.lang.invoke.StringConcatFactory: java.lang.invoke.CallSite makeConcatWithConstants(java.lang.invoke.MethodHandles$Lookup,java.lang.String,java.lang.invoke.MethodType,java.lang.String,java.lang.Object[])>("Using -D\u0001=\u to p2p invoke remote service.");
interfaceinvoke v.<org.apache.dubbo.common.logger.Logger: void warn(java.lang.String)>(v);
label:
return;
catch java.lang.Throwable from label to label with label;
catch java.io.IOException from label to label with label;
}
protected void computeValidRegistryIds()
{
java.util.List v;
org.apache.dubbo.config.ReferenceConfigBase v;
java.lang.String v;
org.apache.dubbo.config.ConsumerConfig v, v, v;
boolean v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.config.ConsumerConfig consumer>;
if v == null goto label;
v = virtualinvoke v.<org.apache.dubbo.config.ReferenceConfigBase: boolean notHasSelfRegistryProperty()>();
if v == 0 goto label;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.config.ConsumerConfig consumer>;
v = virtualinvoke v.<org.apache.dubbo.config.ConsumerConfig: java.util.List getRegistries()>();
virtualinvoke v.<org.apache.dubbo.config.ReferenceConfigBase: void setRegistries(java.util.List)>(v);
v = v.<org.apache.dubbo.config.ReferenceConfigBase: org.apache.dubbo.config.ConsumerConfig consumer>;
v = virtualinvoke v.<org.apache.dubbo.config.ConsumerConfig: java.lang.String getRegistryIds()>();
virtualinvoke v.<org.apache.dubbo.config.ReferenceConfigBase: void setRegistryIds(java.lang.String)>(v);
label:
specialinvoke v.<org.apache.dubbo.config.AbstractReferenceConfig: void computeValidRegistryIds()>();
return;
}
public java.lang.String getUniqueServiceName()
{
org.apache.dubbo.config.ReferenceConfigBase v;
java.lang.String v, v, v, v;
v := @this: org.apache.dubbo.config.ReferenceConfigBase;
v = v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String interfaceName>;
v = virtualinvoke v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String getGroup()>();
v = virtualinvoke v.<org.apache.dubbo.config.ReferenceConfigBase: java.lang.String getVersion()>();
v = staticinvoke <org.apache.dubbo.common.URL: java.lang.String buildKey(java.lang.String,java.lang.String,java.lang.String)>(v, v, v);
return v;
}
public abstract java.lang.Object get();
public abstract void destroy();
}