public interface  org.apache.dubbo.registry.client.ServiceDiscovery extends java.lang.Object implements org.apache.dubbo.common.lang.Prioritized
{
public abstract void initialize(org.apache.dubbo.common.URL) throws java.lang.Exception;
public abstract void destroy() throws java.lang.Exception;
public abstract void register(org.apache.dubbo.registry.client.ServiceInstance) throws java.lang.RuntimeException;
public abstract void update(org.apache.dubbo.registry.client.ServiceInstance) throws java.lang.RuntimeException;
public abstract void unregister(org.apache.dubbo.registry.client.ServiceInstance) throws java.lang.RuntimeException;
public int getDefaultPageSize()
{
org.apache.dubbo.registry.client.ServiceDiscovery v;
v := @this: org.apache.dubbo.registry.client.ServiceDiscovery;
return 100;
}
public abstract java.util.Set getServices();
public java.util.List getInstances(java.lang.String) throws java.lang.NullPointerException
{
java.util.List v, v, v;
org.apache.dubbo.common.utils.Page v;
int v, v, v;
org.apache.dubbo.registry.client.ServiceDiscovery v;
java.lang.String v;
java.util.LinkedList v;
boolean v;
v := @this: org.apache.dubbo.registry.client.ServiceDiscovery;
v := @parameter: java.lang.String;
v = new java.util.LinkedList;
specialinvoke v.<java.util.LinkedList: void <init>()>();
v = 0;
v = interfaceinvoke v.<org.apache.dubbo.registry.client.ServiceDiscovery: int getDefaultPageSize()>();
v = interfaceinvoke v.<org.apache.dubbo.registry.client.ServiceDiscovery: org.apache.dubbo.common.utils.Page getInstances(java.lang.String,int,int)>(v, 0, v);
v = interfaceinvoke v.<org.apache.dubbo.common.utils.Page: java.util.List getData()>();
interfaceinvoke v.<java.util.List: boolean addAll(java.util.Collection)>(v);
label:
v = interfaceinvoke v.<org.apache.dubbo.common.utils.Page: boolean hasNext()>();
if v == 0 goto label;
v = interfaceinvoke v.<org.apache.dubbo.common.utils.Page: int getDataSize()>();
v = v + v;
v = interfaceinvoke v.<org.apache.dubbo.registry.client.ServiceDiscovery: org.apache.dubbo.common.utils.Page getInstances(java.lang.String,int,int)>(v, v, v);
v = interfaceinvoke v.<org.apache.dubbo.common.utils.Page: java.util.List getData()>();
interfaceinvoke v.<java.util.List: boolean addAll(java.util.Collection)>(v);
goto label;
label:
v = staticinvoke <java.util.Collections: java.util.List unmodifiableList(java.util.List)>(v);
return v;
}
public org.apache.dubbo.common.utils.Page getInstances(java.lang.String, int, int) throws java.lang.NullPointerException, java.lang.IllegalArgumentException
{
org.apache.dubbo.common.utils.Page v;
int v, v;
org.apache.dubbo.registry.client.ServiceDiscovery v;
java.lang.String v;
v := @this: org.apache.dubbo.registry.client.ServiceDiscovery;
v := @parameter: java.lang.String;
v := @parameter: int;
v := @parameter: int;
v = interfaceinvoke v.<org.apache.dubbo.registry.client.ServiceDiscovery: org.apache.dubbo.common.utils.Page getInstances(java.lang.String,int,int,boolean)>(v, v, v, 0);
return v;
}
public org.apache.dubbo.common.utils.Page getInstances(java.lang.String, int, int, boolean) throws java.lang.NullPointerException, java.lang.IllegalArgumentException, java.lang.UnsupportedOperationException
{
java.lang.UnsupportedOperationException v;
int v, v;
org.apache.dubbo.registry.client.ServiceDiscovery v;
java.lang.String v;
boolean v;
v := @this: org.apache.dubbo.registry.client.ServiceDiscovery;
v := @parameter: java.lang.String;
v := @parameter: int;
v := @parameter: int;
v := @parameter: boolean;
v = new java.lang.UnsupportedOperationException;
specialinvoke v.<java.lang.UnsupportedOperationException: void <init>(java.lang.String)>("Current implementation does not support pagination query method.");
throw v;
}
public java.util.Map getInstances(java.lang.Iterable, int, int) throws java.lang.NullPointerException, java.lang.IllegalArgumentException
{
java.util.Iterator v;
java.lang.Iterable v;
java.util.LinkedHashMap v;
org.apache.dubbo.common.utils.Page v;
java.util.Map v;
int v, v;
org.apache.dubbo.registry.client.ServiceDiscovery v;
java.lang.Object v;
boolean v;
v := @this: org.apache.dubbo.registry.client.ServiceDiscovery;
v := @parameter: java.lang.Iterable;
v := @parameter: int;
v := @parameter: int;
v = new java.util.LinkedHashMap;
specialinvoke v.<java.util.LinkedHashMap: void <init>()>();
v = interfaceinvoke v.<java.lang.Iterable: 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 = interfaceinvoke v.<org.apache.dubbo.registry.client.ServiceDiscovery: org.apache.dubbo.common.utils.Page getInstances(java.lang.String,int,int)>(v, v, v);
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
v = staticinvoke <java.util.Collections: java.util.Map unmodifiableMap(java.util.Map)>(v);
return v;
}
public void addServiceInstancesChangedListener(org.apache.dubbo.registry.client.event.listener.ServiceInstancesChangedListener) throws java.lang.NullPointerException, java.lang.IllegalArgumentException
{
org.apache.dubbo.registry.client.ServiceDiscovery v;
org.apache.dubbo.registry.client.event.listener.ServiceInstancesChangedListener v;
v := @this: org.apache.dubbo.registry.client.ServiceDiscovery;
v := @parameter: org.apache.dubbo.registry.client.event.listener.ServiceInstancesChangedListener;
return;
}
public void removeServiceInstancesChangedListener(org.apache.dubbo.registry.client.event.listener.ServiceInstancesChangedListener) throws java.lang.IllegalArgumentException
{
org.apache.dubbo.registry.client.ServiceDiscovery v;
org.apache.dubbo.registry.client.event.listener.ServiceInstancesChangedListener v;
v := @this: org.apache.dubbo.registry.client.ServiceDiscovery;
v := @parameter: org.apache.dubbo.registry.client.event.listener.ServiceInstancesChangedListener;
return;
}
public void dispatchServiceInstancesChangedEvent(java.lang.String)
{
org.apache.dubbo.registry.client.ServiceDiscovery v;
java.util.List v;
java.lang.String v;
v := @this: org.apache.dubbo.registry.client.ServiceDiscovery;
v := @parameter: java.lang.String;
v = interfaceinvoke v.<org.apache.dubbo.registry.client.ServiceDiscovery: java.util.List getInstances(java.lang.String)>(v);
interfaceinvoke v.<org.apache.dubbo.registry.client.ServiceDiscovery: void dispatchServiceInstancesChangedEvent(java.lang.String,java.util.List)>(v, v);
return;
}
public transient void dispatchServiceInstancesChangedEvent(java.lang.String, java.lang.String[])
{
java.util.function.Predicate v;
java.lang.String[] v;
java.util.function.Consumer v;
java.util.List v;
java.util.stream.Stream v, v;
org.apache.dubbo.registry.client.ServiceDiscovery v;
java.lang.String v;
v := @this: org.apache.dubbo.registry.client.ServiceDiscovery;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String[];
v = interfaceinvoke v.<org.apache.dubbo.registry.client.ServiceDiscovery: java.util.List getInstances(java.lang.String)>(v);
interfaceinvoke v.<org.apache.dubbo.registry.client.ServiceDiscovery: void dispatchServiceInstancesChangedEvent(java.lang.String,java.util.List)>(v, v);
if v == null goto label;
v = staticinvoke <java.util.stream.Stream: java.util.stream.Stream of(java.lang.Object[])>(v);
v = staticinvoke <org.apache.dubbo.registry.client.ServiceDiscovery$isNotEmpty__476: java.util.function.Predicate bootstrap$()>();
v = interfaceinvoke v.<java.util.stream.Stream: java.util.stream.Stream filter(java.util.function.Predicate)>(v);
v = staticinvoke <org.apache.dubbo.registry.client.ServiceDiscovery$dispatchServiceInstancesChangedEvent__477: java.util.function.Consumer bootstrap$(org.apache.dubbo.registry.client.ServiceDiscovery)>(v);
interfaceinvoke v.<java.util.stream.Stream: void forEach(java.util.function.Consumer)>(v);
label:
return;
}
public void dispatchServiceInstancesChangedEvent(java.lang.String, java.util.List)
{
java.util.List v;
org.apache.dubbo.registry.client.ServiceDiscovery v;
java.lang.String v;
org.apache.dubbo.registry.client.event.ServiceInstancesChangedEvent v;
v := @this: org.apache.dubbo.registry.client.ServiceDiscovery;
v := @parameter: java.lang.String;
v := @parameter: java.util.List;
v = new org.apache.dubbo.registry.client.event.ServiceInstancesChangedEvent;
specialinvoke v.<org.apache.dubbo.registry.client.event.ServiceInstancesChangedEvent: void <init>(java.lang.String,java.util.List)>(v, v);
interfaceinvoke v.<org.apache.dubbo.registry.client.ServiceDiscovery: void dispatchServiceInstancesChangedEvent(org.apache.dubbo.registry.client.event.ServiceInstancesChangedEvent)>(v);
return;
}
public void dispatchServiceInstancesChangedEvent(org.apache.dubbo.registry.client.event.ServiceInstancesChangedEvent)
{
org.apache.dubbo.registry.client.ServiceDiscovery v;
org.apache.dubbo.registry.client.event.ServiceInstancesChangedEvent v;
org.apache.dubbo.event.EventDispatcher v;
v := @this: org.apache.dubbo.registry.client.ServiceDiscovery;
v := @parameter: org.apache.dubbo.registry.client.event.ServiceInstancesChangedEvent;
v = staticinvoke <org.apache.dubbo.event.EventDispatcher: org.apache.dubbo.event.EventDispatcher getDefaultExtension()>();
interfaceinvoke v.<org.apache.dubbo.event.EventDispatcher: void dispatch(org.apache.dubbo.event.Event)>(v);
return;
}
public org.apache.dubbo.common.URL getUrl()
{
org.apache.dubbo.registry.client.ServiceDiscovery v;
v := @this: org.apache.dubbo.registry.client.ServiceDiscovery;
return null;
}
public abstract org.apache.dubbo.registry.client.ServiceInstance getLocalInstance();
public abstract java.lang.String toString();
}