public class org.eclipse.aether.internal.impl.DefaultOfflineController extends java.lang.Object implements org.eclipse.aether.impl.OfflineController
{
static final java.lang.String CONFIG_PROP_OFFLINE_PROTOCOLS;
static final java.lang.String CONFIG_PROP_OFFLINE_HOSTS;
private static final java.util.regex.Pattern SEP;
public void <init>()
{
org.eclipse.aether.internal.impl.DefaultOfflineController v;
v := @this: org.eclipse.aether.internal.impl.DefaultOfflineController;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public void checkOffline(org.eclipse.aether.RepositorySystemSession, org.eclipse.aether.repository.RemoteRepository) throws org.eclipse.aether.transfer.RepositoryOfflineException
{
org.eclipse.aether.repository.RemoteRepository v;
org.eclipse.aether.internal.impl.DefaultOfflineController v;
org.eclipse.aether.RepositorySystemSession v;
boolean v, v;
org.eclipse.aether.transfer.RepositoryOfflineException v;
v := @this: org.eclipse.aether.internal.impl.DefaultOfflineController;
v := @parameter: org.eclipse.aether.RepositorySystemSession;
v := @parameter: org.eclipse.aether.repository.RemoteRepository;
staticinvoke <java.util.Objects: java.lang.Object requireNonNull(java.lang.Object,java.lang.String)>(v, "session cannot be null");
staticinvoke <java.util.Objects: java.lang.Object requireNonNull(java.lang.Object,java.lang.String)>(v, "repository cannot be null");
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultOfflineController: boolean isOfflineProtocol(org.eclipse.aether.RepositorySystemSession,org.eclipse.aether.repository.RemoteRepository)>(v, v);
if v != 0 goto label;
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultOfflineController: boolean isOfflineHost(org.eclipse.aether.RepositorySystemSession,org.eclipse.aether.repository.RemoteRepository)>(v, v);
if v == 0 goto label;
label:
return;
label:
v = new org.eclipse.aether.transfer.RepositoryOfflineException;
specialinvoke v.<org.eclipse.aether.transfer.RepositoryOfflineException: void <init>(org.eclipse.aether.repository.RemoteRepository)>(v);
throw v;
}
private boolean isOfflineProtocol(org.eclipse.aether.RepositorySystemSession, org.eclipse.aether.repository.RemoteRepository)
{
java.lang.String[] v;
org.eclipse.aether.RepositorySystemSession v;
org.eclipse.aether.repository.RemoteRepository v;
int v, v, v;
org.eclipse.aether.internal.impl.DefaultOfflineController v;
java.lang.String v, v;
boolean v;
v := @this: org.eclipse.aether.internal.impl.DefaultOfflineController;
v := @parameter: org.eclipse.aether.RepositorySystemSession;
v := @parameter: org.eclipse.aether.repository.RemoteRepository;
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultOfflineController: java.lang.String[] getConfig(org.eclipse.aether.RepositorySystemSession,java.lang.String)>(v, "aether.offline.protocols");
if v == null goto label;
v = virtualinvoke v.<org.eclipse.aether.repository.RemoteRepository: java.lang.String getProtocol()>();
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>(v);
if v == 0 goto label;
return 1;
label:
v = v + 1;
goto label;
label:
return 0;
}
private boolean isOfflineHost(org.eclipse.aether.RepositorySystemSession, org.eclipse.aether.repository.RemoteRepository)
{
java.lang.String[] v;
org.eclipse.aether.RepositorySystemSession v;
org.eclipse.aether.repository.RemoteRepository v;
int v, v, v;
org.eclipse.aether.internal.impl.DefaultOfflineController v;
java.lang.String v, v;
boolean v;
v := @this: org.eclipse.aether.internal.impl.DefaultOfflineController;
v := @parameter: org.eclipse.aether.RepositorySystemSession;
v := @parameter: org.eclipse.aether.repository.RemoteRepository;
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultOfflineController: java.lang.String[] getConfig(org.eclipse.aether.RepositorySystemSession,java.lang.String)>(v, "aether.offline.hosts");
if v == null goto label;
v = virtualinvoke v.<org.eclipse.aether.repository.RemoteRepository: java.lang.String getHost()>();
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = lengthof v;
v = 0;
label:
if v >= v goto label;
v = v[v];
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>(v);
if v == 0 goto label;
return 1;
label:
v = v + 1;
goto label;
label:
return 0;
}
private java.lang.String[] getConfig(org.eclipse.aether.RepositorySystemSession, java.lang.String)
{
java.lang.String[] v, v;
org.eclipse.aether.RepositorySystemSession v;
org.eclipse.aether.internal.impl.DefaultOfflineController v;
java.lang.String v, v, v;
java.util.regex.Pattern v;
boolean v;
v := @this: org.eclipse.aether.internal.impl.DefaultOfflineController;
v := @parameter: org.eclipse.aether.RepositorySystemSession;
v := @parameter: java.lang.String;
v = newarray (java.lang.String)[1];
v[0] = v;
v = staticinvoke <org.eclipse.aether.util.ConfigUtils: java.lang.String getString(org.eclipse.aether.RepositorySystemSession,java.lang.String,java.lang.String[])>(v, "", v);
v = virtualinvoke v.<java.lang.String: java.lang.String trim()>();
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v == 0 goto label;
return null;
label:
v = <org.eclipse.aether.internal.impl.DefaultOfflineController: java.util.regex.Pattern SEP>;
v = virtualinvoke v.<java.util.regex.Pattern: java.lang.String[] split(java.lang.CharSequence)>(v);
return v;
}
static void <clinit>()
{
java.util.regex.Pattern v;
v = staticinvoke <java.util.regex.Pattern: java.util.regex.Pattern compile(java.lang.String)>("\\s*,\\s*");
<org.eclipse.aether.internal.impl.DefaultOfflineController: java.util.regex.Pattern SEP> = v;
return;
}
}