public final class org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink extends org.hibernate.search.mapper.orm.outboxpolling.event.impl.AbstractAgentClusterLink
{
private static final org.hibernate.search.mapper.orm.outboxpolling.logging.impl.Log log;
private static final org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.ClusterDescriptor SINGLE_NODE_CLUSTER_DESCRIPTOR;
private static final org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.ShardAssignmentDescriptor SINGLE_NODE_SHARD_ASSIGNMENT;
public void <init>(java.lang.String, org.hibernate.search.engine.reporting.FailureHandler, java.time.Clock, java.time.Duration, java.time.Duration, java.time.Duration)
{
org.hibernate.search.engine.reporting.FailureHandler v;
org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentPersister v;
org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink v;
java.time.Duration v, v, v;
java.time.Clock v;
java.lang.String v;
org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentType v;
v := @this: org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink;
v := @parameter: java.lang.String;
v := @parameter: org.hibernate.search.engine.reporting.FailureHandler;
v := @parameter: java.time.Clock;
v := @parameter: java.time.Duration;
v := @parameter: java.time.Duration;
v := @parameter: java.time.Duration;
v = new org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentPersister;
v = <org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentType: org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentType MASS_INDEXING>;
specialinvoke v.<org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentPersister: void <init>(org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentType,java.lang.String,org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.ShardAssignmentDescriptor)>(v, v, null);
specialinvoke v.<org.hibernate.search.mapper.orm.outboxpolling.event.impl.AbstractAgentClusterLink: void <init>(org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentPersister,org.hibernate.search.engine.reporting.FailureHandler,java.time.Clock,java.time.Duration,java.time.Duration,java.time.Duration)>(v, v, v, v, v, v);
return;
}
protected org.hibernate.search.mapper.orm.outboxpolling.event.impl.AbstractAgentClusterLink$WriteAction doPulse(java.util.List, org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.Agent)
{
java.util.function.Predicate v;
org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink v;
java.util.List v;
java.util.stream.Stream v, v;
org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentState v, v;
org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.Agent v;
java.lang.Object v;
java.util.stream.Collector v;
org.hibernate.search.mapper.orm.outboxpolling.event.impl.AbstractAgentClusterLink$WriteAction v, v, v;
boolean v, v;
v := @this: org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink;
v := @parameter: java.util.List;
v := @parameter: org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.Agent;
v = interfaceinvoke v.<java.util.List: java.util.stream.Stream stream()>();
v = staticinvoke <org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink$lambda_doPulse_0__48: java.util.function.Predicate bootstrap$()>();
v = interfaceinvoke v.<java.util.stream.Stream: java.util.stream.Stream filter(java.util.function.Predicate)>(v);
v = staticinvoke <java.util.stream.Collectors: java.util.stream.Collector toList()>();
v = interfaceinvoke v.<java.util.stream.Stream: java.lang.Object collect(java.util.stream.Collector)>(v);
v = specialinvoke v.<org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink: boolean eventProcessorsAreSuspended(java.util.List)>(v);
if v != 0 goto label;
v = staticinvoke <org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink$lambda_doPulse_1__51: org.hibernate.search.mapper.orm.outboxpolling.event.impl.AbstractAgentClusterLink$WriteAction bootstrap$(org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink)>(v);
return v;
label:
v = <org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentState: org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentState SUSPENDED>;
v = virtualinvoke v.<org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.Agent: org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentState getState()>();
v = virtualinvoke v.<org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentState: boolean equals(java.lang.Object)>(v);
if v == 0 goto label;
v = staticinvoke <org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink$lambda_doPulse_2__50: org.hibernate.search.mapper.orm.outboxpolling.event.impl.AbstractAgentClusterLink$WriteAction bootstrap$(org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink)>(v);
return v;
label:
v = staticinvoke <org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink$lambda_doPulse_3__49: org.hibernate.search.mapper.orm.outboxpolling.event.impl.AbstractAgentClusterLink$WriteAction bootstrap$(org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink)>(v);
return v;
}
private boolean eventProcessorsAreSuspended(java.util.List)
{
org.hibernate.search.mapper.orm.outboxpolling.logging.impl.Log v, v;
java.util.Iterator v;
org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink v;
org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentReference v, v, v;
java.util.List v;
org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentState v, v;
java.lang.Object v;
boolean v, v;
v := @this: org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink;
v := @parameter: java.util.List;
v = <org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentState: org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentState SUSPENDED>;
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.hibernate.search.mapper.orm.outboxpolling.cluster.impl.Agent: org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentState getState()>();
v = virtualinvoke v.<org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentState: boolean equals(java.lang.Object)>(v);
if v != 0 goto label;
v = <org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink: org.hibernate.search.mapper.orm.outboxpolling.logging.impl.Log log>;
v = virtualinvoke v.<org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink: org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentReference selfReference()>();
v = virtualinvoke v.<org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.Agent: org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentReference getReference()>();
interfaceinvoke v.<org.hibernate.search.mapper.orm.outboxpolling.logging.impl.Log: void tracef(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)>("Agent \'%s\': waiting for event processor \'%s\', which has not reached state \'%s\' yet", v, v, v);
return 0;
label:
v = <org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink: org.hibernate.search.mapper.orm.outboxpolling.logging.impl.Log log>;
v = virtualinvoke v.<org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink: org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentReference selfReference()>();
interfaceinvoke v.<org.hibernate.search.mapper.orm.outboxpolling.logging.impl.Log: void tracef(java.lang.String,java.lang.Object,java.lang.Object)>("Agent \'%s\': all event processors reached the expected state %s", v, v);
return 1;
}
protected org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexingInstructions instructCommitAndRetryPulseAfterDelay(java.time.Instant, java.time.Duration)
{
org.hibernate.search.mapper.orm.outboxpolling.logging.impl.Log v;
org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink v;
org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexingInstructions v;
org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentReference v;
java.time.Instant v, v;
java.time.Duration v;
java.time.Clock v;
v := @this: org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink;
v := @parameter: java.time.Instant;
v := @parameter: java.time.Duration;
v = virtualinvoke v.<java.time.Instant: java.time.Instant plus(java.time.temporal.TemporalAmount)>(v);
v = <org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink: org.hibernate.search.mapper.orm.outboxpolling.logging.impl.Log log>;
v = virtualinvoke v.<org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink: org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentReference selfReference()>();
interfaceinvoke v.<org.hibernate.search.mapper.orm.outboxpolling.logging.impl.Log: void tracef(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)>("Agent \'%s\': instructions are to hold off mass indexing and to retry a pulse in %s, around %s", v, v, v);
v = new org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexingInstructions;
v = v.<org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink: java.time.Clock clock>;
specialinvoke v.<org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexingInstructions: void <init>(java.time.Clock,java.time.Instant,boolean)>(v, v, 0);
return v;
}
private org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexingInstructions instructProceedWithMassIndexing(java.time.Instant)
{
org.hibernate.search.mapper.orm.outboxpolling.logging.impl.Log v;
org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink v;
org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexingInstructions v;
org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentReference v;
java.time.Instant v, v;
java.time.Duration v, v;
java.time.Clock v;
v := @this: org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink;
v := @parameter: java.time.Instant;
v = v.<org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink: java.time.Duration pulseInterval>;
v = virtualinvoke v.<java.time.Instant: java.time.Instant plus(java.time.temporal.TemporalAmount)>(v);
v = <org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink: org.hibernate.search.mapper.orm.outboxpolling.logging.impl.Log log>;
v = virtualinvoke v.<org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink: org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.AgentReference selfReference()>();
v = v.<org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink: java.time.Duration pulseInterval>;
interfaceinvoke v.<org.hibernate.search.mapper.orm.outboxpolling.logging.impl.Log: void tracef(java.lang.String,java.lang.Object,java.lang.Object,java.lang.Object)>("Agent \'%s\': instructions are to proceed with mass indexing and to retry a pulse in %s, around %s", v, v, v);
v = new org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexingInstructions;
v = v.<org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink: java.time.Clock clock>;
specialinvoke v.<org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexingInstructions: void <init>(java.time.Clock,java.time.Instant,boolean)>(v, v, 1);
return v;
}
static void <clinit>()
{
java.lang.Object v;
java.lang.invoke.MethodHandles$Lookup v;
v = staticinvoke <java.lang.invoke.MethodHandles: java.lang.invoke.MethodHandles$Lookup lookup()>();
v = staticinvoke <org.hibernate.search.util.common.logging.impl.LoggerFactory: java.lang.Object make(java.lang.Class,java.lang.invoke.MethodHandles$Lookup)>(class "Lorg/hibernate/search/mapper/orm/outboxpolling/logging/impl/Log;", v);
<org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink: org.hibernate.search.mapper.orm.outboxpolling.logging.impl.Log log> = v;
<org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink: org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.ClusterDescriptor SINGLE_NODE_CLUSTER_DESCRIPTOR> = null;
<org.hibernate.search.mapper.orm.outboxpolling.event.impl.OutboxPollingMassIndexerAgentClusterLink: org.hibernate.search.mapper.orm.outboxpolling.cluster.impl.ShardAssignmentDescriptor SINGLE_NODE_SHARD_ASSIGNMENT> = null;
return;
}
}