public class org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy extends org.apache.camel.component.file.strategy.MarkerFileExclusiveReadLockStrategy
{
private static final org.slf4j.Logger LOG;
private long timeout;
private long checkInterval;
private org.apache.camel.LoggingLevel readLockLoggingLevel;
public void <init>()
{
org.apache.camel.LoggingLevel v;
org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy v;
v := @this: org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy;
specialinvoke v.<org.apache.camel.component.file.strategy.MarkerFileExclusiveReadLockStrategy: void <init>()>();
v.<org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: long checkInterval> = 1000L;
v = <org.apache.camel.LoggingLevel: org.apache.camel.LoggingLevel DEBUG>;
v.<org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.apache.camel.LoggingLevel readLockLoggingLevel> = v;
return;
}
public void prepareOnStartup(org.apache.camel.component.file.GenericFileOperations, org.apache.camel.component.file.GenericFileEndpoint)
{
org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy v;
org.apache.camel.component.file.GenericFileOperations v;
org.apache.camel.component.file.GenericFileEndpoint v;
v := @this: org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy;
v := @parameter: org.apache.camel.component.file.GenericFileOperations;
v := @parameter: org.apache.camel.component.file.GenericFileEndpoint;
return;
}
public boolean acquireExclusiveReadLock(org.apache.camel.component.file.GenericFileOperations, org.apache.camel.component.file.GenericFile, org.apache.camel.Exchange) throws java.lang.Exception
{
java.io.RandomAccessFile v, v;
byte v, v, v, v;
org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy v;
java.lang.Throwable v;
long v, v, v, v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
java.io.IOException v;
java.io.File v;
java.lang.IllegalStateException v;
java.nio.channels.FileLock v, v;
boolean v, v, v, v, v;
org.apache.camel.LoggingLevel v, v;
org.apache.camel.component.file.GenericFileOperations v;
org.apache.camel.component.file.GenericFile v;
org.apache.camel.Exchange v;
org.slf4j.Logger v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.camel.util.StopWatch v;
java.nio.channels.FileChannel v;
v := @this: org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy;
v := @parameter: org.apache.camel.component.file.GenericFileOperations;
v := @parameter: org.apache.camel.component.file.GenericFile;
v := @parameter: org.apache.camel.Exchange;
v = specialinvoke v.<org.apache.camel.component.file.strategy.MarkerFileExclusiveReadLockStrategy: boolean acquireExclusiveReadLock(org.apache.camel.component.file.GenericFileOperations,org.apache.camel.component.file.GenericFile,org.apache.camel.Exchange)>(v, v, v);
if v != 0 goto label;
return 0;
label:
v = new java.io.File;
v = virtualinvoke v.<org.apache.camel.component.file.GenericFile: java.lang.String getAbsoluteFilePath()>();
specialinvoke v.<java.io.File: void <init>(java.lang.String)>(v);
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void trace(java.lang.String,java.lang.Object)>("Waiting for exclusive read lock to file: {}", v);
v = null;
v = null;
v = 0;
v = null;
label:
v = new java.io.RandomAccessFile;
specialinvoke v.<java.io.RandomAccessFile: void <init>(java.io.File,java.lang.String)>(v, "rw");
v = v;
v = virtualinvoke v.<java.io.RandomAccessFile: java.nio.channels.FileChannel getChannel()>();
v = new org.apache.camel.util.StopWatch;
specialinvoke v.<org.apache.camel.util.StopWatch: void <init>()>();
label:
if v != 0 goto label;
v = v.<org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: long timeout>;
v = v cmp 0L;
if v <= 0 goto label;
v = virtualinvoke v.<org.apache.camel.util.StopWatch: long taken()>();
v = v.<org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: long timeout>;
v = v cmp v;
if v <= 0 goto label;
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
v = v.<org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.apache.camel.LoggingLevel readLockLoggingLevel>;
v = v.<org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: long timeout>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (long,java.io.File)>(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[])>("Cannot acquire read lock within \u millis. Will skip the file: \u0001");
staticinvoke <org.apache.camel.util.CamelLogger: void log(org.slf4j.Logger,org.apache.camel.LoggingLevel,java.lang.String)>(v, v, v);
label:
if v != 0 goto label;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.io.File)>(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[])>("while acquiring exclusive read lock for file: \u0001");
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
staticinvoke <org.apache.camel.util.IOHelper: void close(java.io.Closeable,java.lang.String,org.slf4j.Logger)>(v, v, v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.io.File)>(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[])>("while acquiring exclusive read lock for file: \u0001");
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
staticinvoke <org.apache.camel.util.IOHelper: void close(java.io.Closeable,java.lang.String,org.slf4j.Logger)>(v, v, v);
specialinvoke v.<org.apache.camel.component.file.strategy.MarkerFileExclusiveReadLockStrategy: void releaseExclusiveReadLockOnAbort(org.apache.camel.component.file.GenericFileOperations,org.apache.camel.component.file.GenericFile,org.apache.camel.Exchange)>(v, v, v);
label:
return 0;
label:
v = virtualinvoke v.<java.io.File: boolean exists()>();
if v != 0 goto label;
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
v = v.<org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.apache.camel.LoggingLevel readLockLoggingLevel>;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (org.apache.camel.component.file.GenericFile)>(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[])>("Cannot acquire read lock as file no longer exists. Will skip the file: \u0001");
staticinvoke <org.apache.camel.util.CamelLogger: void log(org.slf4j.Logger,org.apache.camel.LoggingLevel,java.lang.String)>(v, v, v);
label:
if v != 0 goto label;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.io.File)>(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[])>("while acquiring exclusive read lock for file: \u0001");
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
staticinvoke <org.apache.camel.util.IOHelper: void close(java.io.Closeable,java.lang.String,org.slf4j.Logger)>(v, v, v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.io.File)>(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[])>("while acquiring exclusive read lock for file: \u0001");
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
staticinvoke <org.apache.camel.util.IOHelper: void close(java.io.Closeable,java.lang.String,org.slf4j.Logger)>(v, v, v);
specialinvoke v.<org.apache.camel.component.file.strategy.MarkerFileExclusiveReadLockStrategy: void releaseExclusiveReadLockOnAbort(org.apache.camel.component.file.GenericFileOperations,org.apache.camel.component.file.GenericFile,org.apache.camel.Exchange)>(v, v, v);
label:
return 0;
label:
v = v.<org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: long timeout>;
v = v cmp 0L;
if v <= 0 goto label;
v = virtualinvoke v.<java.nio.channels.FileChannel: java.nio.channels.FileLock tryLock()>();
goto label;
label:
v = virtualinvoke v.<java.nio.channels.FileChannel: java.nio.channels.FileLock lock()>();
label:
v = v;
label:
goto label;
label:
v := @caughtexception;
label:
if v == null goto label;
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void trace(java.lang.String,java.lang.Object,java.lang.Object)>("Acquired exclusive read lock: {} to file: {}", v, v);
v = 1;
goto label;
label:
v = specialinvoke v.<org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: boolean sleep()>();
if v == 0 goto label;
label:
if v != 0 goto label;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.io.File)>(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[])>("while acquiring exclusive read lock for file: \u0001");
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
staticinvoke <org.apache.camel.util.IOHelper: void close(java.io.Closeable,java.lang.String,org.slf4j.Logger)>(v, v, v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.io.File)>(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[])>("while acquiring exclusive read lock for file: \u0001");
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
staticinvoke <org.apache.camel.util.IOHelper: void close(java.io.Closeable,java.lang.String,org.slf4j.Logger)>(v, v, v);
specialinvoke v.<org.apache.camel.component.file.strategy.MarkerFileExclusiveReadLockStrategy: void releaseExclusiveReadLockOnAbort(org.apache.camel.component.file.GenericFileOperations,org.apache.camel.component.file.GenericFile,org.apache.camel.Exchange)>(v, v, v);
label:
return 0;
label:
v := @caughtexception;
v = v.<org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: long timeout>;
v = v cmp 0L;
if v != 0 goto label;
label:
if v != 0 goto label;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.io.File)>(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[])>("while acquiring exclusive read lock for file: \u0001");
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
staticinvoke <org.apache.camel.util.IOHelper: void close(java.io.Closeable,java.lang.String,org.slf4j.Logger)>(v, v, v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.io.File)>(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[])>("while acquiring exclusive read lock for file: \u0001");
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
staticinvoke <org.apache.camel.util.IOHelper: void close(java.io.Closeable,java.lang.String,org.slf4j.Logger)>(v, v, v);
specialinvoke v.<org.apache.camel.component.file.strategy.MarkerFileExclusiveReadLockStrategy: void releaseExclusiveReadLockOnAbort(org.apache.camel.component.file.GenericFileOperations,org.apache.camel.component.file.GenericFile,org.apache.camel.Exchange)>(v, v, v);
label:
return 0;
label:
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String,java.lang.Throwable)>("Cannot acquire read lock. Will try again.", v);
v = specialinvoke v.<org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: boolean sleep()>();
if v == 0 goto label;
label:
if v != 0 goto label;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.io.File)>(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[])>("while acquiring exclusive read lock for file: \u0001");
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
staticinvoke <org.apache.camel.util.IOHelper: void close(java.io.Closeable,java.lang.String,org.slf4j.Logger)>(v, v, v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.io.File)>(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[])>("while acquiring exclusive read lock for file: \u0001");
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
staticinvoke <org.apache.camel.util.IOHelper: void close(java.io.Closeable,java.lang.String,org.slf4j.Logger)>(v, v, v);
specialinvoke v.<org.apache.camel.component.file.strategy.MarkerFileExclusiveReadLockStrategy: void releaseExclusiveReadLockOnAbort(org.apache.camel.component.file.GenericFileOperations,org.apache.camel.component.file.GenericFile,org.apache.camel.Exchange)>(v, v, v);
label:
return 0;
label:
if v != 0 goto label;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.io.File)>(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[])>("while acquiring exclusive read lock for file: \u0001");
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
staticinvoke <org.apache.camel.util.IOHelper: void close(java.io.Closeable,java.lang.String,org.slf4j.Logger)>(v, v, v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.io.File)>(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[])>("while acquiring exclusive read lock for file: \u0001");
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
staticinvoke <org.apache.camel.util.IOHelper: void close(java.io.Closeable,java.lang.String,org.slf4j.Logger)>(v, v, v);
specialinvoke v.<org.apache.camel.component.file.strategy.MarkerFileExclusiveReadLockStrategy: void releaseExclusiveReadLockOnAbort(org.apache.camel.component.file.GenericFileOperations,org.apache.camel.component.file.GenericFile,org.apache.camel.Exchange)>(v, v, v);
goto label;
label:
v := @caughtexception;
if v != 0 goto label;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.io.File)>(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[])>("while acquiring exclusive read lock for file: \u0001");
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
staticinvoke <org.apache.camel.util.IOHelper: void close(java.io.Closeable,java.lang.String,org.slf4j.Logger)>(v, v, v);
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.io.File)>(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[])>("while acquiring exclusive read lock for file: \u0001");
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
staticinvoke <org.apache.camel.util.IOHelper: void close(java.io.Closeable,java.lang.String,org.slf4j.Logger)>(v, v, v);
specialinvoke v.<org.apache.camel.component.file.strategy.MarkerFileExclusiveReadLockStrategy: void releaseExclusiveReadLockOnAbort(org.apache.camel.component.file.GenericFileOperations,org.apache.camel.component.file.GenericFile,org.apache.camel.Exchange)>(v, v, v);
label:
throw v;
label:
v = staticinvoke <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: java.lang.String asReadLockKey(org.apache.camel.component.file.GenericFile,java.lang.String)>(v, "CamelFileLockExclusiveLock");
interfaceinvoke v.<org.apache.camel.Exchange: void setProperty(java.lang.String,java.lang.Object)>(v, v);
v = staticinvoke <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: java.lang.String asReadLockKey(org.apache.camel.component.file.GenericFile,java.lang.String)>(v, "CamelFileLockRandomAccessFile");
interfaceinvoke v.<org.apache.camel.Exchange: void setProperty(java.lang.String,java.lang.Object)>(v, v);
return 1;
catch java.lang.IllegalStateException from label to label with label;
catch java.io.IOException from label to label with label;
catch java.io.IOException from label to label with label;
catch java.io.IOException from label to label with label;
catch java.io.IOException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
protected void doReleaseExclusiveReadLock(org.apache.camel.component.file.GenericFileOperations, org.apache.camel.component.file.GenericFile, org.apache.camel.Exchange) throws java.lang.Exception
{
java.lang.Throwable v;
org.apache.camel.component.file.GenericFile v;
org.apache.camel.Exchange v;
java.lang.String v, v, v, v, v, v, v;
org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy v;
java.nio.channels.Channel v;
org.slf4j.Logger v, v, v, v;
org.apache.camel.component.file.GenericFileOperations v;
java.lang.Object v, v;
v := @this: org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy;
v := @parameter: org.apache.camel.component.file.GenericFileOperations;
v := @parameter: org.apache.camel.component.file.GenericFile;
v := @parameter: org.apache.camel.Exchange;
specialinvoke v.<org.apache.camel.component.file.strategy.MarkerFileExclusiveReadLockStrategy: void doReleaseExclusiveReadLock(org.apache.camel.component.file.GenericFileOperations,org.apache.camel.component.file.GenericFile,org.apache.camel.Exchange)>(v, v, v);
v = staticinvoke <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: java.lang.String asReadLockKey(org.apache.camel.component.file.GenericFile,java.lang.String)>(v, "CamelFileLockExclusiveLock");
v = interfaceinvoke v.<org.apache.camel.Exchange: java.lang.Object getProperty(java.lang.String,java.lang.Class)>(v, class "Ljava/nio/channels/FileLock;");
v = staticinvoke <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: java.lang.String asReadLockKey(org.apache.camel.component.file.GenericFile,java.lang.String)>(v, "CamelFileLockExclusiveLock");
v = interfaceinvoke v.<org.apache.camel.Exchange: java.lang.Object getProperty(java.lang.String,java.lang.Class)>(v, class "Ljava/io/RandomAccessFile;");
v = virtualinvoke v.<org.apache.camel.component.file.GenericFile: java.lang.String getFileName()>();
if v == null goto label;
v = virtualinvoke v.<java.nio.channels.FileLock: java.nio.channels.Channel acquiredBy()>();
label:
virtualinvoke v.<java.nio.channels.FileLock: void release()>();
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[])>("while releasing exclusive read lock for file: \u0001");
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
staticinvoke <org.apache.camel.util.IOHelper: void close(java.io.Closeable,java.lang.String,org.slf4j.Logger)>(v, 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[])>("while releasing exclusive read lock for file: \u0001");
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
staticinvoke <org.apache.camel.util.IOHelper: void close(java.io.Closeable,java.lang.String,org.slf4j.Logger)>(v, v, v);
goto label;
label:
v := @caughtexception;
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[])>("while releasing exclusive read lock for file: \u0001");
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
staticinvoke <org.apache.camel.util.IOHelper: void close(java.io.Closeable,java.lang.String,org.slf4j.Logger)>(v, 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[])>("while releasing exclusive read lock for file: \u0001");
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
staticinvoke <org.apache.camel.util.IOHelper: void close(java.io.Closeable,java.lang.String,org.slf4j.Logger)>(v, v, v);
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
private boolean sleep()
{
org.slf4j.Logger v, v;
java.lang.InterruptedException v;
java.lang.Long v;
long v, v;
org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy v;
v := @this: org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy;
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
v = v.<org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: long checkInterval>;
v = staticinvoke <java.lang.Long: java.lang.Long valueOf(long)>(v);
interfaceinvoke v.<org.slf4j.Logger: void trace(java.lang.String,java.lang.Object)>("Exclusive read lock not granted. Sleeping for {} millis.", v);
label:
v = v.<org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: long checkInterval>;
staticinvoke <java.lang.Thread: void sleep(long)>(v);
label:
return 0;
label:
v := @caughtexception;
v = <org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void debug(java.lang.String)>("Sleep interrupted while waiting for exclusive read lock, so breaking out");
return 1;
catch java.lang.InterruptedException from label to label with label;
}
public long getTimeout()
{
long v;
org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy v;
v := @this: org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy;
v = v.<org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: long timeout>;
return v;
}
public void setTimeout(long)
{
long v;
org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy v;
v := @this: org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy;
v := @parameter: long;
v.<org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: long timeout> = v;
return;
}
public void setCheckInterval(long)
{
long v;
org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy v;
v := @this: org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy;
v := @parameter: long;
v.<org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: long checkInterval> = v;
return;
}
public void setReadLockLoggingLevel(org.apache.camel.LoggingLevel)
{
org.apache.camel.LoggingLevel v;
org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy v;
v := @this: org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy;
v := @parameter: org.apache.camel.LoggingLevel;
v.<org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.apache.camel.LoggingLevel readLockLoggingLevel> = v;
return;
}
private static java.lang.String asReadLockKey(org.apache.camel.component.file.GenericFile, java.lang.String)
{
org.apache.camel.component.file.GenericFile v;
java.lang.String v, v, v, v;
v := @parameter: org.apache.camel.component.file.GenericFile;
v := @parameter: java.lang.String;
v = virtualinvoke v.<org.apache.camel.component.file.GenericFile: java.lang.String getCopyFromAbsoluteFilePath()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.camel.component.file.GenericFile: java.lang.String getCopyFromAbsoluteFilePath()>();
goto label;
label:
v = virtualinvoke v.<org.apache.camel.component.file.GenericFile: java.lang.String getAbsoluteFilePath()>();
label:
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;
}
static void <clinit>()
{
org.slf4j.Logger v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/camel/component/file/strategy/FileLockExclusiveReadLockStrategy;");
<org.apache.camel.component.file.strategy.FileLockExclusiveReadLockStrategy: org.slf4j.Logger LOG> = v;
return;
}
}