public abstract class org.apache.dubbo.remoting.transport.AbstractEndpoint extends org.apache.dubbo.remoting.transport.AbstractPeer implements org.apache.dubbo.common.Resetable
{
private static final org.apache.dubbo.common.logger.Logger logger;
private org.apache.dubbo.remoting.Codec codec;
private int timeout;
private int connectTimeout;
public void <init>(org.apache.dubbo.common.URL, org.apache.dubbo.remoting.ChannelHandler)
{
org.apache.dubbo.remoting.ChannelHandler v;
org.apache.dubbo.remoting.Codec v;
org.apache.dubbo.common.URL v;
int v, v;
org.apache.dubbo.remoting.transport.AbstractEndpoint v;
v := @this: org.apache.dubbo.remoting.transport.AbstractEndpoint;
v := @parameter: org.apache.dubbo.common.URL;
v := @parameter: org.apache.dubbo.remoting.ChannelHandler;
specialinvoke v.<org.apache.dubbo.remoting.transport.AbstractPeer: void <init>(org.apache.dubbo.common.URL,org.apache.dubbo.remoting.ChannelHandler)>(v, v);
v = staticinvoke <org.apache.dubbo.remoting.transport.AbstractEndpoint: org.apache.dubbo.remoting.Codec getChannelCodec(org.apache.dubbo.common.URL)>(v);
v.<org.apache.dubbo.remoting.transport.AbstractEndpoint: org.apache.dubbo.remoting.Codec codec> = v;
v = virtualinvoke v.<org.apache.dubbo.common.URL: int getPositiveParameter(java.lang.String,int)>("timeout", 1000);
v.<org.apache.dubbo.remoting.transport.AbstractEndpoint: int timeout> = v;
v = virtualinvoke v.<org.apache.dubbo.common.URL: int getPositiveParameter(java.lang.String,int)>("connect.timeout", 3000);
v.<org.apache.dubbo.remoting.transport.AbstractEndpoint: int connectTimeout> = v;
return;
}
protected static org.apache.dubbo.remoting.Codec getChannelCodec(org.apache.dubbo.common.URL)
{
org.apache.dubbo.common.extension.ExtensionLoader v, v, v;
org.apache.dubbo.common.URL v;
java.lang.Object v, v;
java.lang.String v;
org.apache.dubbo.remoting.transport.codec.CodecAdapter v;
boolean v;
v := @parameter: org.apache.dubbo.common.URL;
v = virtualinvoke v.<org.apache.dubbo.common.URL: java.lang.String getProtocol()>();
v = staticinvoke <org.apache.dubbo.common.extension.ExtensionLoader: org.apache.dubbo.common.extension.ExtensionLoader getExtensionLoader(java.lang.Class)>(class "Lorg/apache/dubbo/remoting/Codec;");
v = virtualinvoke v.<org.apache.dubbo.common.extension.ExtensionLoader: boolean hasExtension(java.lang.String)>(v);
if v == 0 goto label;
v = staticinvoke <org.apache.dubbo.common.extension.ExtensionLoader: org.apache.dubbo.common.extension.ExtensionLoader getExtensionLoader(java.lang.Class)>(class "Lorg/apache/dubbo/remoting/Codec;");
v = virtualinvoke v.<org.apache.dubbo.common.extension.ExtensionLoader: java.lang.Object getExtension(java.lang.String)>(v);
return v;
label:
v = new org.apache.dubbo.remoting.transport.codec.CodecAdapter;
v = staticinvoke <org.apache.dubbo.common.extension.ExtensionLoader: org.apache.dubbo.common.extension.ExtensionLoader getExtensionLoader(java.lang.Class)>(class "Lorg/apache/dubbo/remoting/Codec;");
v = virtualinvoke v.<org.apache.dubbo.common.extension.ExtensionLoader: java.lang.Object getExtension(java.lang.String)>(v);
specialinvoke v.<org.apache.dubbo.remoting.transport.codec.CodecAdapter: void <init>(org.apache.dubbo.remoting.Codec)>(v);
return v;
}
public void reset(org.apache.dubbo.common.URL)
{
java.lang.Throwable v, v, v;
org.apache.dubbo.remoting.Codec v;
java.lang.IllegalStateException v;
org.apache.dubbo.common.URL v;
int v, v;
org.apache.dubbo.remoting.transport.AbstractEndpoint v;
java.lang.String v, v, v, v;
boolean v, v, v, v;
org.apache.dubbo.common.logger.Logger v, v, v;
java.net.InetSocketAddress v;
v := @this: org.apache.dubbo.remoting.transport.AbstractEndpoint;
v := @parameter: org.apache.dubbo.common.URL;
v = virtualinvoke v.<org.apache.dubbo.remoting.transport.AbstractEndpoint: boolean isClosed()>();
if v == 0 goto label;
v = new java.lang.IllegalStateException;
v = virtualinvoke v.<org.apache.dubbo.remoting.transport.AbstractEndpoint: java.net.InetSocketAddress getLocalAddress()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.dubbo.common.URL,java.net.InetSocketAddress)>(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 reset parameters \u, cause: Channel closed. channel: \u0001");
specialinvoke v.<java.lang.IllegalStateException: void <init>(java.lang.String)>(v);
throw v;
label:
v = virtualinvoke v.<org.apache.dubbo.common.URL: boolean hasParameter(java.lang.String)>("timeout");
if v == 0 goto label;
v = virtualinvoke v.<org.apache.dubbo.common.URL: int getParameter(java.lang.String,int)>("timeout", 0);
if v <= 0 goto label;
v.<org.apache.dubbo.remoting.transport.AbstractEndpoint: int timeout> = v;
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.dubbo.remoting.transport.AbstractEndpoint: org.apache.dubbo.common.logger.Logger logger>;
v = virtualinvoke v.<java.lang.Throwable: java.lang.String getMessage()>();
interfaceinvoke v.<org.apache.dubbo.common.logger.Logger: void error(java.lang.String,java.lang.Throwable)>(v, v);
label:
v = virtualinvoke v.<org.apache.dubbo.common.URL: boolean hasParameter(java.lang.String)>("connect.timeout");
if v == 0 goto label;
v = virtualinvoke v.<org.apache.dubbo.common.URL: int getParameter(java.lang.String,int)>("connect.timeout", 0);
if v <= 0 goto label;
v.<org.apache.dubbo.remoting.transport.AbstractEndpoint: int connectTimeout> = v;
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.dubbo.remoting.transport.AbstractEndpoint: org.apache.dubbo.common.logger.Logger logger>;
v = virtualinvoke v.<java.lang.Throwable: java.lang.String getMessage()>();
interfaceinvoke v.<org.apache.dubbo.common.logger.Logger: void error(java.lang.String,java.lang.Throwable)>(v, v);
label:
v = virtualinvoke v.<org.apache.dubbo.common.URL: boolean hasParameter(java.lang.String)>("codec");
if v == 0 goto label;
v = staticinvoke <org.apache.dubbo.remoting.transport.AbstractEndpoint: org.apache.dubbo.remoting.Codec getChannelCodec(org.apache.dubbo.common.URL)>(v);
v.<org.apache.dubbo.remoting.transport.AbstractEndpoint: org.apache.dubbo.remoting.Codec codec> = v;
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.dubbo.remoting.transport.AbstractEndpoint: org.apache.dubbo.common.logger.Logger logger>;
v = virtualinvoke v.<java.lang.Throwable: java.lang.String getMessage()>();
interfaceinvoke v.<org.apache.dubbo.common.logger.Logger: void error(java.lang.String,java.lang.Throwable)>(v, v);
label:
return;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public void reset(org.apache.dubbo.common.Parameters)
{
org.apache.dubbo.common.URL v, v;
java.util.Map v;
org.apache.dubbo.remoting.transport.AbstractEndpoint v;
org.apache.dubbo.common.Parameters v;
v := @this: org.apache.dubbo.remoting.transport.AbstractEndpoint;
v := @parameter: org.apache.dubbo.common.Parameters;
v = virtualinvoke v.<org.apache.dubbo.remoting.transport.AbstractEndpoint: org.apache.dubbo.common.URL getUrl()>();
v = virtualinvoke v.<org.apache.dubbo.common.Parameters: java.util.Map getParameters()>();
v = virtualinvoke v.<org.apache.dubbo.common.URL: org.apache.dubbo.common.URL addParameters(java.util.Map)>(v);
virtualinvoke v.<org.apache.dubbo.remoting.transport.AbstractEndpoint: void reset(org.apache.dubbo.common.URL)>(v);
return;
}
protected org.apache.dubbo.remoting.Codec getCodec()
{
org.apache.dubbo.remoting.Codec v;
org.apache.dubbo.remoting.transport.AbstractEndpoint v;
v := @this: org.apache.dubbo.remoting.transport.AbstractEndpoint;
v = v.<org.apache.dubbo.remoting.transport.AbstractEndpoint: org.apache.dubbo.remoting.Codec codec>;
return v;
}
protected int getTimeout()
{
int v;
org.apache.dubbo.remoting.transport.AbstractEndpoint v;
v := @this: org.apache.dubbo.remoting.transport.AbstractEndpoint;
v = v.<org.apache.dubbo.remoting.transport.AbstractEndpoint: int timeout>;
return v;
}
protected int getConnectTimeout()
{
int v;
org.apache.dubbo.remoting.transport.AbstractEndpoint v;
v := @this: org.apache.dubbo.remoting.transport.AbstractEndpoint;
v = v.<org.apache.dubbo.remoting.transport.AbstractEndpoint: int connectTimeout>;
return v;
}
static void <clinit>()
{
org.apache.dubbo.common.logger.Logger v;
v = staticinvoke <org.apache.dubbo.common.logger.LoggerFactory: org.apache.dubbo.common.logger.Logger getLogger(java.lang.Class)>(class "Lorg/apache/dubbo/remoting/transport/AbstractEndpoint;");
<org.apache.dubbo.remoting.transport.AbstractEndpoint: org.apache.dubbo.common.logger.Logger logger> = v;
return;
}
}