public class io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector extends java.lang.Object
{
private static final org.slf4j.Logger log;
private volatile java.lang.String lastSyncResourceVersion;
private final java.lang.Class apiTypeClass;
private final io.fabric.kubernetes.clnt.v.informers.impl.ListerWatcher listerWatcher;
private final io.fabric.kubernetes.clnt.v.informers.impl.cache.SyncableStore store;
private final io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector$ReflectorWatcher watcher;
private volatile boolean running;
private volatile boolean watching;
private volatile java.util.concurrent.CompletableFuture watchFuture;
private volatile java.util.concurrent.Future reconnectFuture;
public void <init>(java.lang.Class, io.fabric.kubernetes.clnt.v.informers.impl.ListerWatcher, io.fabric.kubernetes.clnt.v.informers.impl.cache.SyncableStore)
{
io.fabric.kubernetes.clnt.v.informers.impl.cache.SyncableStore v;
io.fabric.kubernetes.clnt.v.informers.impl.ListerWatcher v;
io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector v;
java.lang.Class v;
io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector$ReflectorWatcher v;
v := @this: io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector;
v := @parameter: java.lang.Class;
v := @parameter: io.fabric.kubernetes.clnt.v.informers.impl.ListerWatcher;
v := @parameter: io.fabric.kubernetes.clnt.v.informers.impl.cache.SyncableStore;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: java.lang.Class apiTypeClass> = v;
v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: io.fabric.kubernetes.clnt.v.informers.impl.ListerWatcher listerWatcher> = v;
v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: io.fabric.kubernetes.clnt.v.informers.impl.cache.SyncableStore store> = v;
v = new io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector$ReflectorWatcher;
specialinvoke v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector$ReflectorWatcher: void <init>(io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector)>(v);
v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector$ReflectorWatcher watcher> = v;
return;
}
public java.util.concurrent.CompletableFuture start()
{
io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector v;
java.util.concurrent.CompletableFuture v;
v := @this: io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector;
v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: boolean running> = 1;
v = virtualinvoke v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: java.util.concurrent.CompletableFuture listSyncAndWatch()>();
return v;
}
public void stop()
{
io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector v;
java.util.concurrent.Future v;
v := @this: io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector;
v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: boolean running> = 0;
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: java.util.concurrent.Future reconnectFuture>;
if v == null goto label;
interfaceinvoke v.<java.util.concurrent.Future: boolean cancel(boolean)>(1);
label:
specialinvoke v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: void stopWatcher()>();
return;
}
private synchronized void stopWatcher()
{
io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector v;
java.lang.Object v;
java.util.concurrent.CompletableFuture v, v, v;
java.lang.RuntimeException v;
v := @this: io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector;
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: java.util.concurrent.CompletableFuture watchFuture>;
if v == null goto label;
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: java.util.concurrent.CompletableFuture watchFuture>;
virtualinvoke v.<java.util.concurrent.CompletableFuture: boolean cancel(boolean)>(1);
label:
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: java.util.concurrent.CompletableFuture watchFuture>;
v = virtualinvoke v.<java.util.concurrent.CompletableFuture: java.lang.Object getNow(java.lang.Object)>(null);
if v == null goto label;
specialinvoke v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: void stopWatch(io.fabric.kubernetes.clnt.v.Watch)>(v);
label:
goto label;
label:
v := @caughtexception;
label:
v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: java.util.concurrent.CompletableFuture watchFuture> = null;
label:
return;
catch java.util.concurrent.CompletionException from label to label with label;
catch java.util.concurrent.CancellationException from label to label with label;
}
public java.util.concurrent.CompletableFuture listSyncAndWatch()
{
java.util.function.Consumer v;
java.util.concurrent.ConcurrentSkipListSet v;
io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector v;
java.util.concurrent.CompletableFuture v, v, v;
boolean v;
v := @this: io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector;
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: boolean running>;
if v != 0 goto label;
v = staticinvoke <java.util.concurrent.CompletableFuture: java.util.concurrent.CompletableFuture completedFuture(java.lang.Object)>(null);
return v;
label:
v = new java.util.concurrent.ConcurrentSkipListSet;
specialinvoke v.<java.util.concurrent.ConcurrentSkipListSet: void <init>()>();
v = specialinvoke v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: java.util.concurrent.CompletableFuture processList(java.util.Set,java.lang.String)>(v, null);
v = staticinvoke <io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector$lambda_listSyncAndWatch_1__226: java.util.function.Consumer bootstrap$(io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector,java.util.Set)>(v, v);
v = virtualinvoke v.<java.util.concurrent.CompletableFuture: java.util.concurrent.CompletableFuture thenAccept(java.util.function.Consumer)>(v);
return v;
}
private java.util.concurrent.CompletableFuture processList(java.util.Set, java.lang.String)
{
io.fabric.kubernetes.api.model.v.ListOptionsBuilder v;
io.fabric.kubernetes.clnt.v.informers.impl.ListerWatcher v, v;
java.util.Set v;
io.fabric.kubernetes.api.model.v.ListOptionsFluent v, v;
java.util.concurrent.CompletableFuture v, v;
java.util.function.Function v;
io.fabric.kubernetes.api.model.v.ListOptions v;
java.lang.Long v;
io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector v;
java.lang.String v;
v := @this: io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector;
v := @parameter: java.util.Set;
v := @parameter: java.lang.String;
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: io.fabric.kubernetes.clnt.v.informers.impl.ListerWatcher listerWatcher>;
v = new io.fabric.kubernetes.api.model.v.ListOptionsBuilder;
specialinvoke v.<io.fabric.kubernetes.api.model.v.ListOptionsBuilder: void <init>()>();
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: io.fabric.kubernetes.clnt.v.informers.impl.ListerWatcher listerWatcher>;
v = interfaceinvoke v.<io.fabric.kubernetes.clnt.v.informers.impl.ListerWatcher: java.lang.Long getLimit()>();
v = virtualinvoke v.<io.fabric.kubernetes.api.model.v.ListOptionsBuilder: io.fabric.kubernetes.api.model.v.ListOptionsFluent withLimit(java.lang.Long)>(v);
v = virtualinvoke v.<io.fabric.kubernetes.api.model.v.ListOptionsBuilder: io.fabric.kubernetes.api.model.v.ListOptionsFluent withContinue(java.lang.String)>(v);
v = virtualinvoke v.<io.fabric.kubernetes.api.model.v.ListOptionsBuilder: io.fabric.kubernetes.api.model.v.ListOptions build()>();
v = interfaceinvoke v.<io.fabric.kubernetes.clnt.v.informers.impl.ListerWatcher: java.util.concurrent.CompletableFuture submitList(io.fabric.kubernetes.api.model.v.ListOptions)>(v);
v = staticinvoke <io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector$lambda_processList_3__227: java.util.function.Function bootstrap$(io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector,java.util.Set)>(v, v);
v = virtualinvoke v.<java.util.concurrent.CompletableFuture: java.util.concurrent.CompletableFuture thenCompose(java.util.function.Function)>(v);
return v;
}
private void stopWatch(io.fabric.kubernetes.clnt.v.Watch)
{
java.lang.Object[] v;
org.slf4j.Logger v;
io.fabric.kubernetes.clnt.v.informers.impl.ListerWatcher v;
io.fabric.kubernetes.clnt.v.Watch v;
io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector v;
java.lang.Class v;
java.lang.String v, v;
v := @this: io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector;
v := @parameter: io.fabric.kubernetes.clnt.v.Watch;
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: io.fabric.kubernetes.clnt.v.informers.impl.ListerWatcher listerWatcher>;
v = interfaceinvoke v.<io.fabric.kubernetes.clnt.v.informers.impl.ListerWatcher: java.lang.String getNamespace()>();
v = <io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: org.slf4j.Logger log>;
v = newarray (java.lang.Object)[3];
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: java.lang.Class apiTypeClass>;
v[0] = v;
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: java.lang.String lastSyncResourceVersion>;
v[1] = v;
v[2] = v;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object[])>("Stopping watcher for resource {} v{} in namespace {}", v);
interfaceinvoke v.<io.fabric.kubernetes.clnt.v.Watch: void close()>();
specialinvoke v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: void watchStopped()>();
return;
}
private synchronized java.util.concurrent.CompletableFuture startWatcher(java.lang.String)
{
io.fabric.kubernetes.api.model.v.ListOptionsBuilder v;
org.slf4j.Logger v;
io.fabric.kubernetes.clnt.v.informers.impl.ListerWatcher v;
io.fabric.kubernetes.api.model.v.ListOptionsFluent v, v;
java.util.concurrent.CompletableFuture v, v;
io.fabric.kubernetes.api.model.v.ListOptions v;
io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector v;
java.lang.Class v;
java.lang.String v;
io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector$ReflectorWatcher v;
boolean v;
v := @this: io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector;
v := @parameter: java.lang.String;
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: boolean running>;
if v != 0 goto label;
return null;
label:
v = <io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: org.slf4j.Logger log>;
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: java.lang.Class apiTypeClass>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("Starting watcher for resource {} v{}", v, v);
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: io.fabric.kubernetes.clnt.v.informers.impl.ListerWatcher listerWatcher>;
v = new io.fabric.kubernetes.api.model.v.ListOptionsBuilder;
specialinvoke v.<io.fabric.kubernetes.api.model.v.ListOptionsBuilder: void <init>()>();
v = virtualinvoke v.<io.fabric.kubernetes.api.model.v.ListOptionsBuilder: io.fabric.kubernetes.api.model.v.ListOptionsFluent withResourceVersion(java.lang.String)>(v);
v = virtualinvoke v.<io.fabric.kubernetes.api.model.v.ListOptionsBuilder: io.fabric.kubernetes.api.model.v.ListOptionsFluent withTimeoutSeconds(java.lang.Long)>(null);
v = virtualinvoke v.<io.fabric.kubernetes.api.model.v.ListOptionsBuilder: io.fabric.kubernetes.api.model.v.ListOptions build()>();
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector$ReflectorWatcher watcher>;
v = interfaceinvoke v.<io.fabric.kubernetes.clnt.v.informers.impl.ListerWatcher: java.util.concurrent.CompletableFuture submitWatch(io.fabric.kubernetes.api.model.v.ListOptions,io.fabric.kubernetes.clnt.v.Watcher)>(v, v);
v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: java.util.concurrent.CompletableFuture watchFuture> = v;
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: java.util.concurrent.CompletableFuture watchFuture>;
return v;
}
private synchronized void watchStopped()
{
io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector v;
v := @this: io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector;
v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: boolean watching> = 0;
return;
}
public java.lang.String getLastSyncResourceVersion()
{
io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector v;
java.lang.String v;
v := @this: io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector;
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: java.lang.String lastSyncResourceVersion>;
return v;
}
public boolean isRunning()
{
io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector v;
boolean v;
v := @this: io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector;
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: boolean running>;
return v;
}
public boolean isWatching()
{
io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector v;
boolean v;
v := @this: io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector;
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: boolean watching>;
return v;
}
io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector$ReflectorWatcher getWatcher()
{
io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector v;
io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector$ReflectorWatcher v;
v := @this: io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector;
v = v.<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector$ReflectorWatcher watcher>;
return v;
}
static void <clinit>()
{
org.slf4j.Logger v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lio/fabric8/kubernetes/clnt/v6_0/informers/impl/cache/Reflector;");
<io.fabric.kubernetes.clnt.v.informers.impl.cache.Reflector: org.slf4j.Logger log> = v;
return;
}
}