public class org.eclipse.aether.internal.impl.DefaultUpdateCheckManager extends java.lang.Object implements org.eclipse.aether.impl.UpdateCheckManager, org.eclipse.aether.spi.locator.Service
{
private static final org.slf4j.Logger LOGGER;
private org.eclipse.aether.internal.impl.TrackingFileManager trackingFileManager;
private org.eclipse.aether.impl.UpdatePolicyAnalyzer updatePolicyAnalyzer;
private static final java.lang.String UPDATED_KEY_SUFFIX;
private static final java.lang.String ERROR_KEY_SUFFIX;
private static final java.lang.String NOT_FOUND;
static final java.lang.Object SESSION_CHECKS;
static final java.lang.String CONFIG_PROP_SESSION_STATE;
private static final int STATE_ENABLED;
private static final int STATE_BYPASS;
private static final int STATE_DISABLED;
private static final long TS_NEVER;
private static final long TS_UNKNOWN;
public void <init>()
{
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public void <init>(org.eclipse.aether.internal.impl.TrackingFileManager, org.eclipse.aether.impl.UpdatePolicyAnalyzer)
{
org.eclipse.aether.internal.impl.TrackingFileManager v;
org.eclipse.aether.impl.UpdatePolicyAnalyzer v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: org.eclipse.aether.internal.impl.TrackingFileManager;
v := @parameter: org.eclipse.aether.impl.UpdatePolicyAnalyzer;
specialinvoke v.<java.lang.Object: void <init>()>();
virtualinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager setTrackingFileManager(org.eclipse.aether.internal.impl.TrackingFileManager)>(v);
virtualinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager setUpdatePolicyAnalyzer(org.eclipse.aether.impl.UpdatePolicyAnalyzer)>(v);
return;
}
public void initService(org.eclipse.aether.spi.locator.ServiceLocator)
{
org.eclipse.aether.spi.locator.ServiceLocator v;
java.lang.Object v, v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: org.eclipse.aether.spi.locator.ServiceLocator;
v = interfaceinvoke v.<org.eclipse.aether.spi.locator.ServiceLocator: java.lang.Object getService(java.lang.Class)>(class "Lorg/eclipse/aether/internal/impl/TrackingFileManager;");
virtualinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager setTrackingFileManager(org.eclipse.aether.internal.impl.TrackingFileManager)>(v);
v = interfaceinvoke v.<org.eclipse.aether.spi.locator.ServiceLocator: java.lang.Object getService(java.lang.Class)>(class "Lorg/eclipse/aether/impl/UpdatePolicyAnalyzer;");
virtualinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager setUpdatePolicyAnalyzer(org.eclipse.aether.impl.UpdatePolicyAnalyzer)>(v);
return;
}
public org.eclipse.aether.internal.impl.DefaultUpdateCheckManager setTrackingFileManager(org.eclipse.aether.internal.impl.TrackingFileManager)
{
org.eclipse.aether.internal.impl.TrackingFileManager v;
java.lang.Object v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: org.eclipse.aether.internal.impl.TrackingFileManager;
v = staticinvoke <java.util.Objects: java.lang.Object requireNonNull(java.lang.Object)>(v);
v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.eclipse.aether.internal.impl.TrackingFileManager trackingFileManager> = v;
return v;
}
public org.eclipse.aether.internal.impl.DefaultUpdateCheckManager setUpdatePolicyAnalyzer(org.eclipse.aether.impl.UpdatePolicyAnalyzer)
{
java.lang.Object v;
org.eclipse.aether.impl.UpdatePolicyAnalyzer v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: org.eclipse.aether.impl.UpdatePolicyAnalyzer;
v = staticinvoke <java.util.Objects: java.lang.Object requireNonNull(java.lang.Object,java.lang.String)>(v, "update policy analyzer cannot be null");
v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.eclipse.aether.impl.UpdatePolicyAnalyzer updatePolicyAnalyzer> = v;
return v;
}
public void checkArtifact(org.eclipse.aether.RepositorySystemSession, org.eclipse.aether.impl.UpdateCheck)
{
byte v, v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
boolean v, v, v, v, v, v, v, v;
org.eclipse.aether.impl.UpdateCheck v;
java.lang.Object[] v;
long v, v, v;
org.eclipse.aether.RepositorySystemSession v;
org.eclipse.aether.transfer.ArtifactTransferException v, v;
int v, v, v;
java.lang.String v, v, v, v, v, v, v;
java.util.Properties v;
org.slf4j.Logger v, v, v;
java.io.File v, v;
org.eclipse.aether.repository.RemoteRepository v;
java.lang.Object v, v, v, v, v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: org.eclipse.aether.RepositorySystemSession;
v := @parameter: org.eclipse.aether.impl.UpdateCheck;
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, "check cannot be null");
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: long getLocalLastUpdated()>();
v = v cmp 0L;
if v == 0 goto label;
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: long getLocalLastUpdated()>();
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: java.lang.String getPolicy()>();
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: boolean isUpdatedRequired(org.eclipse.aether.RepositorySystemSession,long,java.lang.String)>(v, v, v);
if v != 0 goto label;
v = <org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.slf4j.Logger LOGGER>;
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: java.lang.Object getItem()>();
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Skipped remote request for {}, locally installed artifact up-to-date", v);
virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.impl.UpdateCheck setRequired(boolean)>(0);
return;
label:
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: java.lang.Object getItem()>();
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.repository.RemoteRepository getRepository()>();
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: java.io.File getFile()>();
v = newarray (java.lang.Object)[1];
v[0] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("The artifact \'%s\' has no file attached", v);
v = staticinvoke <java.util.Objects: java.lang.Object requireNonNull(java.lang.Object,java.lang.String)>(v, v);
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: boolean isFileValid()>();
if v == 0 goto label;
v = virtualinvoke v.<java.io.File: boolean exists()>();
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.io.File getArtifactTouchFile(java.io.File)>(v);
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.util.Properties read(java.io.File)>(v);
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String getUpdateKey(org.eclipse.aether.RepositorySystemSession,java.io.File,org.eclipse.aether.repository.RemoteRepository)>(v, v, v);
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String getDataKey(org.eclipse.aether.repository.RemoteRepository)>(v);
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String getError(java.util.Properties,java.lang.String)>(v, v);
if v != null goto label;
if v == 0 goto label;
v = virtualinvoke v.<java.io.File: long lastModified()>();
goto label;
label:
v = 0L;
goto label;
label:
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v == 0 goto label;
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: long getLastUpdated(java.util.Properties,java.lang.String)>(v, v);
goto label;
label:
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String getTransferKey(org.eclipse.aether.RepositorySystemSession,org.eclipse.aether.repository.RemoteRepository)>(v, v);
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: long getLastUpdated(java.util.Properties,java.lang.String)>(v, v);
label:
v = v cmp 0L;
if v != 0 goto label;
virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.impl.UpdateCheck setRequired(boolean)>(1);
goto label;
label:
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: boolean isAlreadyUpdated(org.eclipse.aether.RepositorySystemSession,java.lang.Object)>(v, v);
if v == 0 goto label;
v = <org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.slf4j.Logger LOGGER>;
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: java.lang.Object getItem()>();
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Skipped remote request for {}, already updated during this session", v);
virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.impl.UpdateCheck setRequired(boolean)>(0);
if v == null goto label;
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.eclipse.aether.transfer.ArtifactTransferException newException(java.lang.String,org.eclipse.aether.artifact.Artifact,org.eclipse.aether.repository.RemoteRepository)>(v, v, v);
virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.impl.UpdateCheck setException(org.eclipse.aether.RepositoryException)>(v);
goto label;
label:
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: java.lang.String getPolicy()>();
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: boolean isUpdatedRequired(org.eclipse.aether.RepositorySystemSession,long,java.lang.String)>(v, v, v);
if v == 0 goto label;
virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.impl.UpdateCheck setRequired(boolean)>(1);
goto label;
label:
if v == 0 goto label;
v = <org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.slf4j.Logger LOGGER>;
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: java.lang.Object getItem()>();
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Skipped remote request for {}, locally cached artifact up-to-date", v);
virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.impl.UpdateCheck setRequired(boolean)>(0);
goto label;
label:
v = staticinvoke <org.eclipse.aether.internal.impl.Utils: int getPolicy(org.eclipse.aether.RepositorySystemSession,org.eclipse.aether.artifact.Artifact,org.eclipse.aether.repository.RemoteRepository)>(v, v, v);
v = staticinvoke <org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: int getCacheFlag(java.lang.String)>(v);
v = v & v;
if v == 0 goto label;
virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.impl.UpdateCheck setRequired(boolean)>(0);
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.eclipse.aether.transfer.ArtifactTransferException newException(java.lang.String,org.eclipse.aether.artifact.Artifact,org.eclipse.aether.repository.RemoteRepository)>(v, v, v);
virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.impl.UpdateCheck setException(org.eclipse.aether.RepositoryException)>(v);
goto label;
label:
virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.impl.UpdateCheck setRequired(boolean)>(1);
label:
return;
}
private static int getCacheFlag(java.lang.String)
{
java.lang.String v;
boolean v;
v := @parameter: java.lang.String;
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v == 0 goto label;
label:
return 1;
label:
return 2;
}
private org.eclipse.aether.transfer.ArtifactTransferException newException(java.lang.String, org.eclipse.aether.artifact.Artifact, org.eclipse.aether.repository.RemoteRepository)
{
org.eclipse.aether.artifact.Artifact v;
org.eclipse.aether.transfer.ArtifactNotFoundException v;
org.eclipse.aether.repository.RemoteRepository v;
org.eclipse.aether.transfer.ArtifactTransferException v;
java.lang.String v, v, v, v, v, v, v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
boolean v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: java.lang.String;
v := @parameter: org.eclipse.aether.artifact.Artifact;
v := @parameter: org.eclipse.aether.repository.RemoteRepository;
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v == 0 goto label;
label:
v = new org.eclipse.aether.transfer.ArtifactNotFoundException;
v = virtualinvoke v.<org.eclipse.aether.repository.RemoteRepository: java.lang.String getUrl()>();
v = virtualinvoke v.<org.eclipse.aether.repository.RemoteRepository: java.lang.String getId()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.eclipse.aether.artifact.Artifact,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[])>("\u was not found in \u during a previous attempt. This failure was cached in the local repository and resolution is not reattempted until the update interval of \u has elapsed or updates are forced");
specialinvoke v.<org.eclipse.aether.transfer.ArtifactNotFoundException: void <init>(org.eclipse.aether.artifact.Artifact,org.eclipse.aether.repository.RemoteRepository,java.lang.String,boolean)>(v, v, v, 1);
return v;
label:
v = new org.eclipse.aether.transfer.ArtifactTransferException;
v = virtualinvoke v.<org.eclipse.aether.repository.RemoteRepository: java.lang.String getUrl()>();
v = virtualinvoke v.<org.eclipse.aether.repository.RemoteRepository: java.lang.String getId()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.eclipse.aether.artifact.Artifact,java.lang.String,java.lang.String,java.lang.String)>(v, 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[])>("\u failed to transfer from \u during a previous attempt. This failure was cached in the local repository and resolution is not reattempted until the update interval of \u has elapsed or updates are forced. Original error: \u0001");
specialinvoke v.<org.eclipse.aether.transfer.ArtifactTransferException: void <init>(org.eclipse.aether.artifact.Artifact,org.eclipse.aether.repository.RemoteRepository,java.lang.String,boolean)>(v, v, v, 1);
return v;
}
public void checkMetadata(org.eclipse.aether.RepositorySystemSession, org.eclipse.aether.impl.UpdateCheck)
{
byte v, v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
boolean v, v, v, v, v, v, v, v;
org.eclipse.aether.impl.UpdateCheck v;
org.eclipse.aether.transfer.MetadataTransferException v, v;
java.lang.Object[] v;
long v, v, v;
org.eclipse.aether.RepositorySystemSession v;
int v, v, v;
java.lang.String v, v, v, v, v, v, v;
java.util.Properties v;
org.slf4j.Logger v, v, v;
java.io.File v, v;
org.eclipse.aether.repository.RemoteRepository v;
java.lang.Object v, v, v, v, v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: org.eclipse.aether.RepositorySystemSession;
v := @parameter: org.eclipse.aether.impl.UpdateCheck;
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, "check cannot be null");
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: long getLocalLastUpdated()>();
v = v cmp 0L;
if v == 0 goto label;
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: long getLocalLastUpdated()>();
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: java.lang.String getPolicy()>();
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: boolean isUpdatedRequired(org.eclipse.aether.RepositorySystemSession,long,java.lang.String)>(v, v, v);
if v != 0 goto label;
v = <org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.slf4j.Logger LOGGER>;
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: java.lang.Object getItem()>();
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Skipped remote request for {} locally installed metadata up-to-date", v);
virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.impl.UpdateCheck setRequired(boolean)>(0);
return;
label:
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: java.lang.Object getItem()>();
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.repository.RemoteRepository getRepository()>();
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: java.io.File getFile()>();
v = newarray (java.lang.Object)[1];
v[0] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("The metadata \'%s\' has no file attached", v);
v = staticinvoke <java.util.Objects: java.lang.Object requireNonNull(java.lang.Object,java.lang.String)>(v, v);
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: boolean isFileValid()>();
if v == 0 goto label;
v = virtualinvoke v.<java.io.File: boolean exists()>();
if v == 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
v = v;
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.io.File getMetadataTouchFile(java.io.File)>(v);
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.util.Properties read(java.io.File)>(v);
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String getUpdateKey(org.eclipse.aether.RepositorySystemSession,java.io.File,org.eclipse.aether.repository.RemoteRepository)>(v, v, v);
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String getDataKey(java.io.File)>(v);
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String getError(java.util.Properties,java.lang.String)>(v, v);
if v != null goto label;
if v == 0 goto label;
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: long getLastUpdated(java.util.Properties,java.lang.String)>(v, v);
goto label;
label:
v = 0L;
goto label;
label:
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v == 0 goto label;
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: long getLastUpdated(java.util.Properties,java.lang.String)>(v, v);
goto label;
label:
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String getTransferKey(org.eclipse.aether.RepositorySystemSession,java.io.File,org.eclipse.aether.repository.RemoteRepository)>(v, v, v);
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: long getLastUpdated(java.util.Properties,java.lang.String)>(v, v);
label:
v = v cmp 0L;
if v != 0 goto label;
virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.impl.UpdateCheck setRequired(boolean)>(1);
goto label;
label:
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: boolean isAlreadyUpdated(org.eclipse.aether.RepositorySystemSession,java.lang.Object)>(v, v);
if v == 0 goto label;
v = <org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.slf4j.Logger LOGGER>;
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: java.lang.Object getItem()>();
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Skipped remote request for {}, already updated during this session", v);
virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.impl.UpdateCheck setRequired(boolean)>(0);
if v == null goto label;
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.eclipse.aether.transfer.MetadataTransferException newException(java.lang.String,org.eclipse.aether.metadata.Metadata,org.eclipse.aether.repository.RemoteRepository)>(v, v, v);
virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.impl.UpdateCheck setException(org.eclipse.aether.RepositoryException)>(v);
goto label;
label:
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: java.lang.String getPolicy()>();
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: boolean isUpdatedRequired(org.eclipse.aether.RepositorySystemSession,long,java.lang.String)>(v, v, v);
if v == 0 goto label;
virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.impl.UpdateCheck setRequired(boolean)>(1);
goto label;
label:
if v == 0 goto label;
v = <org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.slf4j.Logger LOGGER>;
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: java.lang.Object getItem()>();
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object)>("Skipped remote request for {}, locally cached metadata up-to-date", v);
virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.impl.UpdateCheck setRequired(boolean)>(0);
goto label;
label:
v = staticinvoke <org.eclipse.aether.internal.impl.Utils: int getPolicy(org.eclipse.aether.RepositorySystemSession,org.eclipse.aether.metadata.Metadata,org.eclipse.aether.repository.RemoteRepository)>(v, v, v);
v = staticinvoke <org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: int getCacheFlag(java.lang.String)>(v);
v = v & v;
if v == 0 goto label;
virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.impl.UpdateCheck setRequired(boolean)>(0);
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.eclipse.aether.transfer.MetadataTransferException newException(java.lang.String,org.eclipse.aether.metadata.Metadata,org.eclipse.aether.repository.RemoteRepository)>(v, v, v);
virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.impl.UpdateCheck setException(org.eclipse.aether.RepositoryException)>(v);
goto label;
label:
virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.impl.UpdateCheck setRequired(boolean)>(1);
label:
return;
}
private org.eclipse.aether.transfer.MetadataTransferException newException(java.lang.String, org.eclipse.aether.metadata.Metadata, org.eclipse.aether.repository.RemoteRepository)
{
org.eclipse.aether.transfer.MetadataTransferException v;
org.eclipse.aether.transfer.MetadataNotFoundException v;
org.eclipse.aether.repository.RemoteRepository v;
org.eclipse.aether.metadata.Metadata v;
java.lang.String v, v, v, v, v, v, v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
boolean v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: java.lang.String;
v := @parameter: org.eclipse.aether.metadata.Metadata;
v := @parameter: org.eclipse.aether.repository.RemoteRepository;
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v == 0 goto label;
label:
v = new org.eclipse.aether.transfer.MetadataNotFoundException;
v = virtualinvoke v.<org.eclipse.aether.repository.RemoteRepository: java.lang.String getUrl()>();
v = virtualinvoke v.<org.eclipse.aether.repository.RemoteRepository: java.lang.String getId()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.eclipse.aether.metadata.Metadata,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[])>("\u was not found in \u during a previous attempt. This failure was cached in the local repository and resolution is not be reattempted until the update interval of \u has elapsed or updates are forced");
specialinvoke v.<org.eclipse.aether.transfer.MetadataNotFoundException: void <init>(org.eclipse.aether.metadata.Metadata,org.eclipse.aether.repository.RemoteRepository,java.lang.String,boolean)>(v, v, v, 1);
return v;
label:
v = new org.eclipse.aether.transfer.MetadataTransferException;
v = virtualinvoke v.<org.eclipse.aether.repository.RemoteRepository: java.lang.String getUrl()>();
v = virtualinvoke v.<org.eclipse.aether.repository.RemoteRepository: java.lang.String getId()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.eclipse.aether.metadata.Metadata,java.lang.String,java.lang.String,java.lang.String)>(v, 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[])>("\u failed to transfer from \u during a previous attempt. This failure was cached in the local repository and resolution will not be reattempted until the update interval of \u has elapsed or updates are forced. Original error: \u0001");
specialinvoke v.<org.eclipse.aether.transfer.MetadataTransferException: void <init>(org.eclipse.aether.metadata.Metadata,org.eclipse.aether.repository.RemoteRepository,java.lang.String,boolean)>(v, v, v, 1);
return v;
}
private long getLastUpdated(java.util.Properties, java.lang.String)
{
java.util.Properties v;
org.slf4j.Logger v;
java.lang.NumberFormatException v;
long v;
int v;
java.lang.String v, v, v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: java.util.Properties;
v := @parameter: java.lang.String;
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[])>("\u.lastUpdated");
v = virtualinvoke v.<java.util.Properties: java.lang.String getProperty(java.lang.String,java.lang.String)>(v, "");
label:
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = staticinvoke <java.lang.Long: long parseLong(java.lang.String)>(v);
goto label;
label:
v = 1L;
label:
return v;
label:
v := @caughtexception;
v = <org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.slf4j.Logger LOGGER>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Object,java.lang.Object)>("Cannot parse last updated date {}, ignoring it", v, v);
return 1L;
catch java.lang.NumberFormatException from label to label with label;
}
private java.lang.String getError(java.util.Properties, java.lang.String)
{
java.util.Properties v;
java.lang.String v, v, v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: java.util.Properties;
v := @parameter: java.lang.String;
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[])>("\u.error");
v = virtualinvoke v.<java.util.Properties: java.lang.String getProperty(java.lang.String)>(v);
return v;
}
private java.io.File getArtifactTouchFile(java.io.File)
{
java.lang.String v, v;
java.io.File v, v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: java.io.File;
v = new java.io.File;
v = virtualinvoke v.<java.io.File: java.lang.String getPath()>();
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[])>("\u.lastUpdated");
specialinvoke v.<java.io.File: void <init>(java.lang.String)>(v);
return v;
}
private java.io.File getMetadataTouchFile(java.io.File)
{
java.lang.String v;
java.io.File v, v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: java.io.File;
v = new java.io.File;
v = virtualinvoke v.<java.io.File: java.lang.String getParent()>();
specialinvoke v.<java.io.File: void <init>(java.lang.String,java.lang.String)>(v, "resolver-status.properties");
return v;
}
private java.lang.String getDataKey(org.eclipse.aether.repository.RemoteRepository)
{
java.util.TreeSet v;
java.lang.String v, v, v, v, v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
boolean v, v, v;
java.util.Iterator v, v;
java.util.Set v;
org.eclipse.aether.repository.RemoteRepository v;
java.util.List v;
java.lang.Object v, v;
java.lang.StringBuilder v, v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: org.eclipse.aether.repository.RemoteRepository;
v = staticinvoke <java.util.Collections: java.util.Set emptySet()>();
v = virtualinvoke v.<org.eclipse.aether.repository.RemoteRepository: boolean isRepositoryManager()>();
if v == 0 goto label;
v = new java.util.TreeSet;
specialinvoke v.<java.util.TreeSet: void <init>()>();
v = v;
v = virtualinvoke v.<org.eclipse.aether.repository.RemoteRepository: java.util.List getMirroredRepositories()>();
v = interfaceinvoke v.<java.util.List: 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 = virtualinvoke v.<org.eclipse.aether.repository.RemoteRepository: java.lang.String getUrl()>();
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String normalizeRepoUrl(java.lang.String)>(v);
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
goto label;
label:
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>(int)>(1024);
v = virtualinvoke v.<org.eclipse.aether.repository.RemoteRepository: java.lang.String getUrl()>();
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String normalizeRepoUrl(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = interfaceinvoke v.<java.util.Set: 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 = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(43);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
goto label;
label:
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
}
private java.lang.String getTransferKey(org.eclipse.aether.RepositorySystemSession, org.eclipse.aether.repository.RemoteRepository)
{
org.eclipse.aether.repository.RemoteRepository v;
java.lang.String v;
org.eclipse.aether.RepositorySystemSession v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: org.eclipse.aether.RepositorySystemSession;
v := @parameter: org.eclipse.aether.repository.RemoteRepository;
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String getRepoKey(org.eclipse.aether.RepositorySystemSession,org.eclipse.aether.repository.RemoteRepository)>(v, v);
return v;
}
private java.lang.String getDataKey(java.io.File)
{
java.lang.String v;
java.io.File v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: java.io.File;
v = virtualinvoke v.<java.io.File: java.lang.String getName()>();
return v;
}
private java.lang.String getTransferKey(org.eclipse.aether.RepositorySystemSession, java.io.File, org.eclipse.aether.repository.RemoteRepository)
{
org.eclipse.aether.repository.RemoteRepository v;
java.lang.String v, v, v;
org.eclipse.aether.RepositorySystemSession v;
java.io.File v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: org.eclipse.aether.RepositorySystemSession;
v := @parameter: java.io.File;
v := @parameter: org.eclipse.aether.repository.RemoteRepository;
v = virtualinvoke v.<java.io.File: java.lang.String getName()>();
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String getRepoKey(org.eclipse.aether.RepositorySystemSession,org.eclipse.aether.repository.RemoteRepository)>(v, v);
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[])>("\u0001/\u0001");
return v;
}
private java.lang.String getRepoKey(org.eclipse.aether.RepositorySystemSession, org.eclipse.aether.repository.RemoteRepository)
{
org.eclipse.aether.repository.Proxy v;
org.eclipse.aether.RepositorySystemSession v;
int v;
java.lang.String v, v, v, v, v, v, v, v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
org.eclipse.aether.repository.RemoteRepository v;
java.lang.StringBuilder v, v, v, v, v, v, v, v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: org.eclipse.aether.RepositorySystemSession;
v := @parameter: org.eclipse.aether.repository.RemoteRepository;
v = new java.lang.StringBuilder;
specialinvoke v.<java.lang.StringBuilder: void <init>(int)>(128);
v = virtualinvoke v.<org.eclipse.aether.repository.RemoteRepository: org.eclipse.aether.repository.Proxy getProxy()>();
if v == null goto label;
v = staticinvoke <org.eclipse.aether.repository.AuthenticationDigest: java.lang.String forProxy(org.eclipse.aether.RepositorySystemSession,org.eclipse.aether.repository.RemoteRepository)>(v, v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(64);
v = virtualinvoke v.<org.eclipse.aether.repository.Proxy: java.lang.String getHost()>();
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(58);
v = virtualinvoke v.<org.eclipse.aether.repository.Proxy: int getPort()>();
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(int)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(62);
label:
v = staticinvoke <org.eclipse.aether.repository.AuthenticationDigest: java.lang.String forRepository(org.eclipse.aether.RepositorySystemSession,org.eclipse.aether.repository.RemoteRepository)>(v, v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(64);
v = virtualinvoke v.<org.eclipse.aether.repository.RemoteRepository: java.lang.String getContentType()>();
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(45);
v = virtualinvoke v.<org.eclipse.aether.repository.RemoteRepository: java.lang.String getId()>();
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(char)>(45);
v = virtualinvoke v.<org.eclipse.aether.repository.RemoteRepository: java.lang.String getUrl()>();
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String normalizeRepoUrl(java.lang.String)>(v);
virtualinvoke v.<java.lang.StringBuilder: java.lang.StringBuilder append(java.lang.String)>(v);
v = virtualinvoke v.<java.lang.StringBuilder: java.lang.String toString()>();
return v;
}
private java.lang.String normalizeRepoUrl(java.lang.String)
{
int v;
java.lang.String v, v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
boolean v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: java.lang.String;
v = v;
if v == null goto label;
v = virtualinvoke v.<java.lang.String: int length()>();
if v <= 0 goto label;
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>("/");
if v != 0 goto label;
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[])>("\u0001/");
label:
return v;
}
private java.lang.String getUpdateKey(org.eclipse.aether.RepositorySystemSession, java.io.File, org.eclipse.aether.repository.RemoteRepository)
{
org.eclipse.aether.repository.RemoteRepository v;
java.lang.String v, v, v;
org.eclipse.aether.RepositorySystemSession v;
java.io.File v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: org.eclipse.aether.RepositorySystemSession;
v := @parameter: java.io.File;
v := @parameter: org.eclipse.aether.repository.RemoteRepository;
v = virtualinvoke v.<java.io.File: java.lang.String getAbsolutePath()>();
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String getRepoKey(org.eclipse.aether.RepositorySystemSession,org.eclipse.aether.repository.RemoteRepository)>(v, v);
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[])>("\u0001|\u0001");
return v;
}
private int getSessionState(org.eclipse.aether.RepositorySystemSession)
{
java.lang.String[] v;
org.eclipse.aether.RepositorySystemSession v;
java.lang.String v, v, v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
boolean v, v, v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: org.eclipse.aether.RepositorySystemSession;
v = newarray (java.lang.String)[1];
v[0] = "aether.updateCheckManager.sessionState";
v = staticinvoke <org.eclipse.aether.util.ConfigUtils: java.lang.String getString(org.eclipse.aether.RepositorySystemSession,java.lang.String,java.lang.String[])>(v, "enabled", v);
v = staticinvoke <java.lang.Boolean: boolean parseBoolean(java.lang.String)>(v);
if v != 0 goto label;
v = "enabled";
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>(v);
if v == 0 goto label;
label:
return 0;
label:
v = "bypass";
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>(v);
if v == 0 goto label;
return 1;
label:
return 2;
}
private boolean isAlreadyUpdated(org.eclipse.aether.RepositorySystemSession, java.lang.Object)
{
org.eclipse.aether.SessionData v;
org.eclipse.aether.RepositorySystemSession v;
int v;
java.lang.Object v, v, v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
boolean v, v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: org.eclipse.aether.RepositorySystemSession;
v := @parameter: java.lang.Object;
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: int getSessionState(org.eclipse.aether.RepositorySystemSession)>(v);
if v < 1 goto label;
return 0;
label:
v = interfaceinvoke v.<org.eclipse.aether.RepositorySystemSession: org.eclipse.aether.SessionData getData()>();
v = <org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.Object SESSION_CHECKS>;
v = interfaceinvoke v.<org.eclipse.aether.SessionData: java.lang.Object get(java.lang.Object)>(v);
v = v instanceof java.util.Map;
if v != 0 goto label;
return 0;
label:
v = interfaceinvoke v.<java.util.Map: boolean containsKey(java.lang.Object)>(v);
return v;
}
private void setUpdated(org.eclipse.aether.RepositorySystemSession, java.lang.Object)
{
org.eclipse.aether.SessionData v;
java.util.function.Supplier v;
org.eclipse.aether.RepositorySystemSession v;
int v;
java.lang.Boolean v;
java.lang.Object v, v, v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: org.eclipse.aether.RepositorySystemSession;
v := @parameter: java.lang.Object;
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: int getSessionState(org.eclipse.aether.RepositorySystemSession)>(v);
if v < 2 goto label;
return;
label:
v = interfaceinvoke v.<org.eclipse.aether.RepositorySystemSession: org.eclipse.aether.SessionData getData()>();
v = <org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.Object SESSION_CHECKS>;
v = staticinvoke <org.eclipse.aether.internal.impl.DefaultUpdateCheckManager$lambda_setUpdated_0__51: java.util.function.Supplier bootstrap$()>();
v = interfaceinvoke v.<org.eclipse.aether.SessionData: java.lang.Object computeIfAbsent(java.lang.Object,java.util.function.Supplier)>(v, v);
v = <java.lang.Boolean: java.lang.Boolean TRUE>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
return;
}
private boolean isUpdatedRequired(org.eclipse.aether.RepositorySystemSession, long, java.lang.String)
{
long v;
java.lang.String v;
org.eclipse.aether.impl.UpdatePolicyAnalyzer v;
org.eclipse.aether.RepositorySystemSession v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
boolean v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: org.eclipse.aether.RepositorySystemSession;
v := @parameter: long;
v := @parameter: java.lang.String;
v = v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.eclipse.aether.impl.UpdatePolicyAnalyzer updatePolicyAnalyzer>;
v = interfaceinvoke v.<org.eclipse.aether.impl.UpdatePolicyAnalyzer: boolean isUpdatedRequired(org.eclipse.aether.RepositorySystemSession,long,java.lang.String)>(v, v, v);
return v;
}
private java.util.Properties read(java.io.File)
{
org.eclipse.aether.internal.impl.TrackingFileManager v;
java.util.Properties v, v;
java.io.File v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: java.io.File;
v = v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.eclipse.aether.internal.impl.TrackingFileManager trackingFileManager>;
v = interfaceinvoke v.<org.eclipse.aether.internal.impl.TrackingFileManager: java.util.Properties read(java.io.File)>(v);
if v == null goto label;
v = v;
goto label;
label:
v = new java.util.Properties;
specialinvoke v.<java.util.Properties: void <init>()>();
label:
return v;
}
public void touchArtifact(org.eclipse.aether.RepositorySystemSession, org.eclipse.aether.impl.UpdateCheck)
{
org.eclipse.aether.impl.UpdateCheck v;
java.util.Properties v;
org.eclipse.aether.RepositorySystemSession v;
java.io.File v, v;
org.eclipse.aether.repository.RemoteRepository v, v, v;
org.eclipse.aether.RepositoryException v;
java.lang.String v, v, v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
boolean v, v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: org.eclipse.aether.RepositorySystemSession;
v := @parameter: org.eclipse.aether.impl.UpdateCheck;
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, "check cannot be null");
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: java.io.File getFile()>();
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.io.File getArtifactTouchFile(java.io.File)>(v);
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.repository.RemoteRepository getRepository()>();
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String getUpdateKey(org.eclipse.aether.RepositorySystemSession,java.io.File,org.eclipse.aether.repository.RemoteRepository)>(v, v, v);
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.repository.RemoteRepository getAuthoritativeRepository()>();
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String getDataKey(org.eclipse.aether.repository.RemoteRepository)>(v);
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.repository.RemoteRepository getRepository()>();
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String getTransferKey(org.eclipse.aether.RepositorySystemSession,org.eclipse.aether.repository.RemoteRepository)>(v, v);
specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: void setUpdated(org.eclipse.aether.RepositorySystemSession,java.lang.Object)>(v, v);
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.RepositoryException getException()>();
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.util.Properties write(java.io.File,java.lang.String,java.lang.String,java.lang.Exception)>(v, v, v, v);
v = virtualinvoke v.<java.io.File: boolean exists()>();
if v == 0 goto label;
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: boolean hasErrors(java.util.Properties)>(v);
if v != 0 goto label;
virtualinvoke v.<java.io.File: boolean delete()>();
label:
return;
}
private boolean hasErrors(java.util.Properties)
{
java.util.Properties v;
java.util.Iterator v;
java.util.Set v;
java.lang.Object v;
java.lang.String v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
boolean v, v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: java.util.Properties;
v = virtualinvoke v.<java.util.Properties: java.util.Set keySet()>();
v = interfaceinvoke v.<java.util.Set: 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 = virtualinvoke v.<java.lang.Object: java.lang.String toString()>();
v = virtualinvoke v.<java.lang.String: boolean endsWith(java.lang.String)>(".error");
if v == 0 goto label;
return 1;
label:
return 0;
}
public void touchMetadata(org.eclipse.aether.RepositorySystemSession, org.eclipse.aether.impl.UpdateCheck)
{
org.eclipse.aether.impl.UpdateCheck v;
org.eclipse.aether.RepositorySystemSession v;
java.io.File v, v;
org.eclipse.aether.repository.RemoteRepository v, v;
org.eclipse.aether.RepositoryException v;
java.lang.String v, v, v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: org.eclipse.aether.RepositorySystemSession;
v := @parameter: org.eclipse.aether.impl.UpdateCheck;
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, "check cannot be null");
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: java.io.File getFile()>();
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.io.File getMetadataTouchFile(java.io.File)>(v);
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.repository.RemoteRepository getRepository()>();
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String getUpdateKey(org.eclipse.aether.RepositorySystemSession,java.io.File,org.eclipse.aether.repository.RemoteRepository)>(v, v, v);
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String getDataKey(java.io.File)>(v);
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.repository.RemoteRepository getRepository()>();
v = specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.String getTransferKey(org.eclipse.aether.RepositorySystemSession,java.io.File,org.eclipse.aether.repository.RemoteRepository)>(v, v, v);
specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: void setUpdated(org.eclipse.aether.RepositorySystemSession,java.lang.Object)>(v, v);
v = virtualinvoke v.<org.eclipse.aether.impl.UpdateCheck: org.eclipse.aether.RepositoryException getException()>();
specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.util.Properties write(java.io.File,java.lang.String,java.lang.String,java.lang.Exception)>(v, v, v, v);
return;
}
private java.util.Properties write(java.io.File, java.lang.String, java.lang.String, java.lang.Exception)
{
java.util.HashMap v;
long v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v;
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager v;
boolean v, v, v;
java.util.Properties v;
java.io.File v;
java.lang.Exception v;
org.eclipse.aether.internal.impl.TrackingFileManager v;
java.lang.Class v;
v := @this: org.eclipse.aether.internal.impl.DefaultUpdateCheckManager;
v := @parameter: java.io.File;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: java.lang.Exception;
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = staticinvoke <java.lang.System: long currentTimeMillis()>();
v = staticinvoke <java.lang.Long: java.lang.String toString(long)>(v);
if v != null goto label;
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[])>("\u.error");
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, null);
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[])>("\u.lastUpdated");
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
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[])>("\u.lastUpdated");
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, null);
goto label;
label:
v = v instanceof org.eclipse.aether.transfer.ArtifactNotFoundException;
if v != 0 goto label;
v = v instanceof org.eclipse.aether.transfer.MetadataNotFoundException;
if v == 0 goto label;
label:
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[])>("\u.error");
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, "");
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[])>("\u.lastUpdated");
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
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[])>("\u.lastUpdated");
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, null);
goto label;
label:
v = virtualinvoke v.<java.lang.Exception: java.lang.String getMessage()>();
if v == null goto label;
v = virtualinvoke v.<java.lang.String: boolean isEmpty()>();
if v == 0 goto label;
label:
v = virtualinvoke v.<java.lang.Object: java.lang.Class getClass()>();
v = virtualinvoke v.<java.lang.Class: java.lang.String getSimpleName()>();
label:
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[])>("\u.error");
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
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[])>("\u.lastUpdated");
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, null);
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[])>("\u.lastUpdated");
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
v = v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.eclipse.aether.internal.impl.TrackingFileManager trackingFileManager>;
v = interfaceinvoke v.<org.eclipse.aether.internal.impl.TrackingFileManager: java.util.Properties update(java.io.File,java.util.Map)>(v, v);
return v;
}
static void <clinit>()
{
org.eclipse.aether.internal.impl.DefaultUpdateCheckManager$1 v;
org.slf4j.Logger v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/eclipse/aether/internal/impl/DefaultUpdatePolicyAnalyzer;");
<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: org.slf4j.Logger LOGGER> = v;
v = new org.eclipse.aether.internal.impl.DefaultUpdateCheckManager$1;
specialinvoke v.<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager$1: void <init>()>();
<org.eclipse.aether.internal.impl.DefaultUpdateCheckManager: java.lang.Object SESSION_CHECKS> = v;
return;
}
}