public abstract class org.apache.nifi.processors.standard.FetchFileTransfer extends org.apache.nifi.processor.AbstractProcessor
{
static final org.apache.nifi.components.AllowableValue COMPLETION_NONE;
static final org.apache.nifi.components.AllowableValue COMPLETION_MOVE;
static final org.apache.nifi.components.AllowableValue COMPLETION_DELETE;
static final java.lang.String FAILURE_REASON_ATTRIBUTE;
static final org.apache.nifi.components.PropertyDescriptor HOSTNAME;
static final org.apache.nifi.components.PropertyDescriptor UNDEFAULTED_PORT;
public static final org.apache.nifi.components.PropertyDescriptor USERNAME;
public static final org.apache.nifi.components.PropertyDescriptor REMOTE_FILENAME;
static final org.apache.nifi.components.PropertyDescriptor COMPLETION_STRATEGY;
static final org.apache.nifi.components.PropertyDescriptor MOVE_CREATE_DIRECTORY;
static final org.apache.nifi.components.PropertyDescriptor MOVE_DESTINATION_DIR;
static final org.apache.nifi.components.PropertyDescriptor FILE_NOT_FOUND_LOG_LEVEL;
public static final org.apache.nifi.processor.Relationship REL_SUCCESS;
static final org.apache.nifi.processor.Relationship REL_COMMS_FAILURE;
static final org.apache.nifi.processor.Relationship REL_NOT_FOUND;
static final org.apache.nifi.processor.Relationship REL_PERMISSION_DENIED;
private final java.util.Map fileTransferMap;
private final long IDLE_CONNECTION_MILLIS;
private volatile long lastClearTime;
private org.apache.nifi.logging.LogLevel levelFileNotFound;
public void <init>()
{
java.util.concurrent.TimeUnit v;
org.apache.nifi.processors.standard.FetchFileTransfer v;
java.util.HashMap v;
long v, v;
org.apache.nifi.logging.LogLevel v;
v := @this: org.apache.nifi.processors.standard.FetchFileTransfer;
specialinvoke v.<org.apache.nifi.processor.AbstractProcessor: void <init>()>();
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v.<org.apache.nifi.processors.standard.FetchFileTransfer: java.util.Map fileTransferMap> = v;
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit SECONDS>;
v = virtualinvoke v.<java.util.concurrent.TimeUnit: long toMillis(long)>(10L);
v.<org.apache.nifi.processors.standard.FetchFileTransfer: long IDLE_CONNECTION_MILLIS> = v;
v = staticinvoke <java.lang.System: long currentTimeMillis()>();
v.<org.apache.nifi.processors.standard.FetchFileTransfer: long lastClearTime> = v;
v = <org.apache.nifi.logging.LogLevel: org.apache.nifi.logging.LogLevel ERROR>;
v.<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.logging.LogLevel levelFileNotFound> = v;
return;
}
public java.util.Set getRelationships()
{
java.util.HashSet v;
org.apache.nifi.processor.Relationship v, v, v, v;
org.apache.nifi.processors.standard.FetchFileTransfer v;
v := @this: org.apache.nifi.processors.standard.FetchFileTransfer;
v = new java.util.HashSet;
specialinvoke v.<java.util.HashSet: void <init>()>();
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.processor.Relationship REL_SUCCESS>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.processor.Relationship REL_NOT_FOUND>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.processor.Relationship REL_PERMISSION_DENIED>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.processor.Relationship REL_COMMS_FAILURE>;
interfaceinvoke v.<java.util.Set: boolean add(java.lang.Object)>(v);
return v;
}
public void onScheduled(org.apache.nifi.processor.ProcessContext)
{
org.apache.nifi.processors.standard.FetchFileTransfer v;
org.apache.nifi.processor.ProcessContext v;
java.lang.String v;
org.apache.nifi.components.PropertyDescriptor v;
org.apache.nifi.logging.LogLevel v;
org.apache.nifi.components.PropertyValue v;
v := @this: org.apache.nifi.processors.standard.FetchFileTransfer;
v := @parameter: org.apache.nifi.processor.ProcessContext;
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor FILE_NOT_FOUND_LOG_LEVEL>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
v = staticinvoke <org.apache.nifi.logging.LogLevel: org.apache.nifi.logging.LogLevel valueOf(java.lang.String)>(v);
v.<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.logging.LogLevel levelFileNotFound> = v;
return;
}
private void closeConnections(boolean)
{
java.lang.Object[] v;
org.apache.nifi.processors.standard.FetchFileTransfer v;
long v, v, v, v, v;
org.apache.nifi.logging.ComponentLog v;
java.util.ArrayList v;
byte v;
java.util.Map v;
boolean v, v, v;
java.util.Iterator v, v;
java.util.Set v;
java.io.IOException v;
java.util.concurrent.TimeUnit v;
java.lang.Object v, v, v, v;
org.apache.nifi.processors.standard.util.FileTransfer v;
v := @this: org.apache.nifi.processors.standard.FetchFileTransfer;
v := @parameter: boolean;
v = v.<org.apache.nifi.processors.standard.FetchFileTransfer: java.util.Map fileTransferMap>;
v = interfaceinvoke v.<java.util.Map: java.util.Set entrySet()>();
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 = interfaceinvoke v.<java.util.Map$Entry: java.lang.Object getValue()>();
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
label:
v = interfaceinvoke v.<java.util.concurrent.BlockingQueue: java.lang.Object poll()>();
if v == null goto label;
v = virtualinvoke v.<org.apache.nifi.processors.standard.FetchFileTransfer$FileTransferIdleWrapper: long getLastUsed()>();
v = staticinvoke <java.lang.System: long nanoTime()>();
v = v - v;
if v != 0 goto label;
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit NANOSECONDS>;
v = virtualinvoke v.<java.util.concurrent.TimeUnit: long toMillis(long)>(v);
v = v.<org.apache.nifi.processors.standard.FetchFileTransfer: long IDLE_CONNECTION_MILLIS>;
v = v cmp v;
if v >= 0 goto label;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.nifi.processors.standard.FetchFileTransfer$FileTransferIdleWrapper: org.apache.nifi.processors.standard.util.FileTransfer getFileTransfer()>();
interfaceinvoke v.<org.apache.nifi.processors.standard.util.FileTransfer: void close()>();
label:
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.logging.ComponentLog getLogger()>();
v = newarray (java.lang.Object)[2];
v[0] = v;
v[1] = v;
interfaceinvoke v.<org.apache.nifi.logging.ComponentLog: void warn(java.lang.String,java.lang.Object[])>("Failed to close Idle Connection due to {}", v);
goto label;
label:
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()>();
interfaceinvoke v.<java.util.concurrent.BlockingQueue: boolean offer(java.lang.Object)>(v);
goto label;
label:
return;
catch java.io.IOException from label to label with label;
}
public void cleanup()
{
org.apache.nifi.processors.standard.FetchFileTransfer v;
v := @this: org.apache.nifi.processors.standard.FetchFileTransfer;
specialinvoke v.<org.apache.nifi.processors.standard.FetchFileTransfer: void closeConnections(boolean)>(1);
return;
}
protected java.util.List getSupportedPropertyDescriptors()
{
org.apache.nifi.processors.standard.FetchFileTransfer v;
org.apache.nifi.components.PropertyDescriptor v, v, v, v, v, v;
java.util.ArrayList v;
v := @this: org.apache.nifi.processors.standard.FetchFileTransfer;
v = new java.util.ArrayList;
specialinvoke v.<java.util.ArrayList: void <init>()>();
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor HOSTNAME>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor UNDEFAULTED_PORT>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor REMOTE_FILENAME>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor COMPLETION_STRATEGY>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor MOVE_DESTINATION_DIR>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor MOVE_CREATE_DIRECTORY>;
interfaceinvoke v.<java.util.List: boolean add(java.lang.Object)>(v);
return v;
}
public void onTrigger(org.apache.nifi.processor.ProcessContext, org.apache.nifi.processor.ProcessSession) throws org.apache.nifi.processor.exception.ProcessException
{
java.lang.Integer v, v, v;
org.apache.nifi.components.PropertyDescriptor v, v, v;
org.apache.nifi.processors.standard.util.PermissionDeniedException v;
byte v;
java.util.Map v, v, v;
org.apache.nifi.util.StopWatch v;
java.lang.Throwable v, v, v;
java.lang.Object[] v, v, v;
long v, v, v, v, v, v;
org.apache.nifi.provenance.ProvenanceReporter v, v;
org.apache.nifi.processor.Relationship v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.nifi.processor.ProcessSession v;
org.apache.nifi.flowfile.attributes.CoreAttributes v, v, v;
java.lang.Runnable v, v;
org.apache.nifi.components.PropertyValue v, v, v, v, v, v;
boolean v, v;
org.apache.nifi.flowfile.FlowFile v, v, v, v;
java.util.concurrent.LinkedBlockingQueue v;
java.io.FileNotFoundException v;
org.apache.nifi.processors.standard.util.FileTransfer v;
org.apache.nifi.processors.standard.FetchFileTransfer v;
java.util.HashMap v;
org.apache.nifi.logging.ComponentLog v, v, v, v;
int v;
org.apache.nifi.logging.LogLevel v;
org.apache.nifi.processor.ProcessContext v;
java.util.concurrent.TimeUnit v;
java.util.function.Consumer v;
org.apache.nifi.util.Tuple v;
java.lang.Object v, v;
v := @this: org.apache.nifi.processors.standard.FetchFileTransfer;
v := @parameter: org.apache.nifi.processor.ProcessContext;
v := @parameter: org.apache.nifi.processor.ProcessSession;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.flowfile.FlowFile get()>();
if v != null goto label;
return;
label:
v = new org.apache.nifi.util.StopWatch;
specialinvoke v.<org.apache.nifi.util.StopWatch: void <init>(boolean)>(1);
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor HOSTNAME>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: org.apache.nifi.components.PropertyValue evaluateAttributeExpressions(org.apache.nifi.flowfile.FlowFile)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor UNDEFAULTED_PORT>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: org.apache.nifi.components.PropertyValue evaluateAttributeExpressions(org.apache.nifi.flowfile.FlowFile)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.Integer asInteger()>();
v = virtualinvoke v.<java.lang.Integer: int intValue()>();
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor REMOTE_FILENAME>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: org.apache.nifi.components.PropertyValue evaluateAttributeExpressions(org.apache.nifi.flowfile.FlowFile)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
v = v.<org.apache.nifi.processors.standard.FetchFileTransfer: java.util.Map fileTransferMap>;
entermonitor v;
label:
v = new org.apache.nifi.util.Tuple;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
specialinvoke v.<org.apache.nifi.util.Tuple: void <init>(java.lang.Object,java.lang.Object)>(v, v);
v = v.<org.apache.nifi.processors.standard.FetchFileTransfer: java.util.Map fileTransferMap>;
v = interfaceinvoke v.<java.util.Map: java.lang.Object get(java.lang.Object)>(v);
if v != null goto label;
v = new java.util.concurrent.LinkedBlockingQueue;
specialinvoke v.<java.util.concurrent.LinkedBlockingQueue: void <init>()>();
v = v;
v = v.<org.apache.nifi.processors.standard.FetchFileTransfer: java.util.Map fileTransferMap>;
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
v = staticinvoke <java.lang.System: long currentTimeMillis()>();
v = v.<org.apache.nifi.processors.standard.FetchFileTransfer: long lastClearTime>;
v = v - v;
v = v.<org.apache.nifi.processors.standard.FetchFileTransfer: long IDLE_CONNECTION_MILLIS>;
v = v cmp v;
if v <= 0 goto label;
specialinvoke v.<org.apache.nifi.processors.standard.FetchFileTransfer: void closeConnections(boolean)>(0);
v = staticinvoke <java.lang.System: long currentTimeMillis()>();
v.<org.apache.nifi.processors.standard.FetchFileTransfer: long lastClearTime> = v;
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
v = interfaceinvoke v.<java.util.concurrent.BlockingQueue: java.lang.Object poll()>();
if v != null goto label;
v = virtualinvoke v.<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.processors.standard.util.FileTransfer createFileTransfer(org.apache.nifi.processor.ProcessContext)>(v);
goto label;
label:
v = virtualinvoke v.<org.apache.nifi.processors.standard.FetchFileTransfer$FileTransferIdleWrapper: org.apache.nifi.processors.standard.util.FileTransfer getFileTransfer()>();
label:
v = null;
v = 0;
label:
v = interfaceinvoke v.<org.apache.nifi.processors.standard.util.FileTransfer: org.apache.nifi.flowfile.FlowFile getRemoteFile(java.lang.String,org.apache.nifi.flowfile.FlowFile,org.apache.nifi.processor.ProcessSession)>(v, v, v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.processor.Relationship REL_NOT_FOUND>;
v = virtualinvoke v.<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.logging.ComponentLog getLogger()>();
v = v.<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.logging.LogLevel levelFileNotFound>;
v = newarray (java.lang.Object)[4];
v[0] = v;
v[1] = v;
v[2] = v;
v = virtualinvoke v.<org.apache.nifi.processor.Relationship: java.lang.String getName()>();
v[3] = v;
interfaceinvoke v.<org.apache.nifi.logging.ComponentLog: void log(org.apache.nifi.logging.LogLevel,java.lang.String,java.lang.Object[])>(v, "Failed to fetch content for {} from filename {} on remote host {} because the file could not be found on the remote system; routing to {}", v);
goto label;
label:
v := @caughtexception;
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.processor.Relationship REL_PERMISSION_DENIED>;
v = virtualinvoke v.<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.logging.ComponentLog getLogger()>();
v = newarray (java.lang.Object)[4];
v[0] = v;
v[1] = v;
v[2] = v;
v = virtualinvoke v.<org.apache.nifi.processor.Relationship: java.lang.String getName()>();
v[3] = v;
interfaceinvoke v.<org.apache.nifi.logging.ComponentLog: void error(java.lang.String,java.lang.Object[])>("Failed to fetch content for {} from filename {} on remote host {} due to insufficient permissions; routing to {}", v);
goto label;
label:
v := @caughtexception;
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.processor.Relationship REL_COMMS_FAILURE>;
v = virtualinvoke v.<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.logging.ComponentLog getLogger()>();
v = newarray (java.lang.Object)[7];
v[0] = v;
v[1] = v;
v[2] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[3] = v;
v = virtualinvoke v.<java.lang.Exception: java.lang.String toString()>();
v[4] = v;
v = virtualinvoke v.<org.apache.nifi.processor.Relationship: java.lang.String getName()>();
v[5] = v;
v[6] = v;
interfaceinvoke v.<org.apache.nifi.logging.ComponentLog: void error(java.lang.String,java.lang.Object[])>("Failed to fetch content for {} from filename {} on remote host {}:{} due to {}; routing to {}", v);
v = 1;
label:
v = new java.util.HashMap;
specialinvoke v.<java.util.HashMap: void <init>()>();
v = interfaceinvoke v.<org.apache.nifi.processors.standard.util.FileTransfer: java.lang.String getProtocolName()>();
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.remote.host");
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.remote.port");
v = staticinvoke <java.lang.String: java.lang.String valueOf(int)>(v);
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.remote.filename");
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = virtualinvoke v.<java.lang.String: boolean contains(java.lang.CharSequence)>("/");
if v == 0 goto label;
v = staticinvoke <org.apache.commons.lang.StringUtils: java.lang.String substringBeforeLast(java.lang.String,java.lang.String)>(v, "/");
v = staticinvoke <org.apache.commons.lang.StringUtils: java.lang.String substringAfterLast(java.lang.String,java.lang.String)>(v, "/");
v = <org.apache.nifi.flowfile.attributes.CoreAttributes: org.apache.nifi.flowfile.attributes.CoreAttributes PATH>;
v = virtualinvoke v.<org.apache.nifi.flowfile.attributes.CoreAttributes: java.lang.String key()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
v = <org.apache.nifi.flowfile.attributes.CoreAttributes: org.apache.nifi.flowfile.attributes.CoreAttributes FILENAME>;
v = virtualinvoke v.<org.apache.nifi.flowfile.attributes.CoreAttributes: java.lang.String key()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
goto label;
label:
v = <org.apache.nifi.flowfile.attributes.CoreAttributes: org.apache.nifi.flowfile.attributes.CoreAttributes FILENAME>;
v = virtualinvoke v.<org.apache.nifi.flowfile.attributes.CoreAttributes: java.lang.String key()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>(v, v);
label:
if v == null goto label;
v = virtualinvoke v.<org.apache.nifi.processor.Relationship: java.lang.String getName()>();
interfaceinvoke v.<java.util.Map: java.lang.Object put(java.lang.Object,java.lang.Object)>("fetch.failure.reason", v);
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.flowfile.FlowFile putAllAttributes(org.apache.nifi.flowfile.FlowFile,java.util.Map)>(v, v);
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.flowfile.FlowFile penalize(org.apache.nifi.flowfile.FlowFile)>(v);
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: void transfer(org.apache.nifi.flowfile.FlowFile,org.apache.nifi.processor.Relationship)>(v, v);
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.provenance.ProvenanceReporter getProvenanceReporter()>();
interfaceinvoke v.<org.apache.nifi.provenance.ProvenanceReporter: void route(org.apache.nifi.flowfile.FlowFile,org.apache.nifi.processor.Relationship)>(v, v);
specialinvoke v.<org.apache.nifi.processors.standard.FetchFileTransfer: void cleanupTransfer(org.apache.nifi.processors.standard.util.FileTransfer,boolean,java.util.concurrent.BlockingQueue,java.lang.String,int)>(v, v, v, v, v);
label:
return;
label:
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.flowfile.FlowFile putAllAttributes(org.apache.nifi.flowfile.FlowFile,java.util.Map)>(v, v);
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.provenance.ProvenanceReporter getProvenanceReporter()>();
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (java.lang.String,java.lang.String,int,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[])>("\u0001://\u0001:\u0001/\u0001");
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit MILLISECONDS>;
v = virtualinvoke v.<org.apache.nifi.util.StopWatch: long getElapsed(java.util.concurrent.TimeUnit)>(v);
interfaceinvoke v.<org.apache.nifi.provenance.ProvenanceReporter: void fetch(org.apache.nifi.flowfile.FlowFile,java.lang.String,long)>(v, v, v);
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.processor.Relationship REL_SUCCESS>;
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: void transfer(org.apache.nifi.flowfile.FlowFile,org.apache.nifi.processor.Relationship)>(v, v);
v = staticinvoke <org.apache.nifi.processors.standard.FetchFileTransfer$lambda_onTrigger_0__84: java.lang.Runnable bootstrap$(org.apache.nifi.processors.standard.FetchFileTransfer,org.apache.nifi.processors.standard.util.FileTransfer,java.util.concurrent.BlockingQueue,java.lang.String,int)>(v, v, v, v, v);
v = staticinvoke <org.apache.nifi.processors.standard.FetchFileTransfer$lambda_onTrigger_1__85: java.lang.Runnable bootstrap$(org.apache.nifi.processors.standard.FetchFileTransfer,org.apache.nifi.processors.standard.util.FileTransfer,org.apache.nifi.processor.ProcessContext,org.apache.nifi.flowfile.FlowFile,java.lang.String,java.lang.String,int,java.lang.Runnable)>(v, v, v, v, v, v, v, v);
v = staticinvoke <org.apache.nifi.processors.standard.FetchFileTransfer$lambda_onTrigger_2__86: java.util.function.Consumer bootstrap$(java.lang.Runnable)>(v);
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: void commitAsync(java.lang.Runnable,java.util.function.Consumer)>(v, v);
label:
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.logging.ComponentLog getLogger()>();
interfaceinvoke v.<org.apache.nifi.logging.ComponentLog: void error(java.lang.String,java.lang.Throwable)>("Failed to fetch file", v);
specialinvoke v.<org.apache.nifi.processors.standard.FetchFileTransfer: void cleanupTransfer(org.apache.nifi.processors.standard.util.FileTransfer,boolean,java.util.concurrent.BlockingQueue,java.lang.String,int)>(v, 1, v, v, v);
label:
return;
catch java.lang.Throwable from label to label with label;
catch java.io.FileNotFoundException from label to label with label;
catch org.apache.nifi.processors.standard.util.PermissionDeniedException from label to label with label;
catch org.apache.nifi.processor.exception.ProcessException 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;
}
private void cleanupTransfer(org.apache.nifi.processors.standard.util.FileTransfer, boolean, java.util.concurrent.BlockingQueue, java.lang.String, int)
{
org.apache.nifi.processors.standard.FetchFileTransfer$FileTransferIdleWrapper v;
org.apache.nifi.processors.standard.FetchFileTransfer v;
java.util.concurrent.BlockingQueue v;
long v;
org.apache.nifi.logging.ComponentLog v, v;
int v;
org.apache.nifi.processors.standard.util.FileTransfer v;
java.lang.String v;
boolean v;
v := @this: org.apache.nifi.processors.standard.FetchFileTransfer;
v := @parameter: org.apache.nifi.processors.standard.util.FileTransfer;
v := @parameter: boolean;
v := @parameter: java.util.concurrent.BlockingQueue;
v := @parameter: java.lang.String;
v := @parameter: int;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.logging.ComponentLog getLogger()>();
interfaceinvoke v.<org.apache.nifi.logging.ComponentLog: void debug(java.lang.String)>("Closing FileTransfer...");
goto label;
label:
v = virtualinvoke v.<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.logging.ComponentLog getLogger()>();
interfaceinvoke v.<org.apache.nifi.logging.ComponentLog: void debug(java.lang.String)>("Returning FileTransfer to pool...");
v = new org.apache.nifi.processors.standard.FetchFileTransfer$FileTransferIdleWrapper;
v = staticinvoke <java.lang.System: long nanoTime()>();
specialinvoke v.<org.apache.nifi.processors.standard.FetchFileTransfer$FileTransferIdleWrapper: void <init>(org.apache.nifi.processors.standard.util.FileTransfer,long)>(v, v);
interfaceinvoke v.<java.util.concurrent.BlockingQueue: boolean offer(java.lang.Object)>(v);
label:
return;
}
private void performCompletionStrategy(org.apache.nifi.processors.standard.util.FileTransfer, org.apache.nifi.processor.ProcessContext, org.apache.nifi.flowfile.FlowFile, java.lang.String, java.lang.String, int)
{
java.lang.Integer v, v;
org.apache.nifi.components.PropertyDescriptor v, v, v;
org.apache.nifi.components.PropertyValue v, v, v, v;
boolean v, v, v;
org.apache.nifi.flowfile.FlowFile v;
org.apache.nifi.components.AllowableValue v, v;
java.io.FileNotFoundException v;
org.apache.nifi.processors.standard.util.FileTransfer v;
java.lang.Object[] v, v, v;
org.apache.nifi.processors.standard.FetchFileTransfer v;
org.apache.nifi.logging.ComponentLog v, v;
int v;
java.lang.Boolean v;
java.lang.String v, v, v, v, v, v, v, v, v;
org.apache.nifi.processor.ProcessContext v;
java.io.IOException v, v;
java.io.File v;
v := @this: org.apache.nifi.processors.standard.FetchFileTransfer;
v := @parameter: org.apache.nifi.processors.standard.util.FileTransfer;
v := @parameter: org.apache.nifi.processor.ProcessContext;
v := @parameter: org.apache.nifi.flowfile.FlowFile;
v := @parameter: java.lang.String;
v := @parameter: java.lang.String;
v := @parameter: int;
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor COMPLETION_STRATEGY>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.AllowableValue COMPLETION_DELETE>;
v = virtualinvoke v.<org.apache.nifi.components.AllowableValue: java.lang.String getValue()>();
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>(v);
if v == 0 goto label;
label:
interfaceinvoke v.<org.apache.nifi.processors.standard.util.FileTransfer: void deleteFile(org.apache.nifi.flowfile.FlowFile,java.lang.String,java.lang.String)>(v, null, v);
label:
goto label;
label:
v := @caughtexception;
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.logging.ComponentLog getLogger()>();
v = newarray (java.lang.Object)[6];
v[0] = v;
v[1] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[2] = v;
v[3] = v;
v[4] = v;
v[5] = v;
interfaceinvoke v.<org.apache.nifi.logging.ComponentLog: void warn(java.lang.String,java.lang.Object[])>("Successfully fetched the content for {} from {}:{}{} but failed to remove the remote file due to {}", v);
goto label;
label:
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.AllowableValue COMPLETION_MOVE>;
v = virtualinvoke v.<org.apache.nifi.components.AllowableValue: java.lang.String getValue()>();
v = virtualinvoke v.<java.lang.String: boolean equalsIgnoreCase(java.lang.String)>(v);
if v == 0 goto label;
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor MOVE_DESTINATION_DIR>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: org.apache.nifi.components.PropertyValue evaluateAttributeExpressions(org.apache.nifi.flowfile.FlowFile)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.String getValue()>();
v = staticinvoke <org.apache.commons.lang.StringUtils: java.lang.String substringAfterLast(java.lang.String,java.lang.String)>(v, "/");
label:
v = interfaceinvoke v.<org.apache.nifi.processors.standard.util.FileTransfer: java.lang.String getAbsolutePath(org.apache.nifi.flowfile.FlowFile,java.lang.String)>(v, v);
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor MOVE_CREATE_DIRECTORY>;
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessContext: org.apache.nifi.components.PropertyValue getProperty(org.apache.nifi.components.PropertyDescriptor)>(v);
v = interfaceinvoke v.<org.apache.nifi.components.PropertyValue: java.lang.Boolean asBoolean()>();
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
if v == 0 goto label;
v = new java.io.File;
specialinvoke v.<java.io.File: void <init>(java.lang.String)>(v);
interfaceinvoke v.<org.apache.nifi.processors.standard.util.FileTransfer: void ensureDirectoryExists(org.apache.nifi.flowfile.FlowFile,java.io.File)>(v, v);
label:
v = newarray (java.lang.Object)[2];
v[0] = v;
v[1] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("%s/%s", v);
interfaceinvoke v.<org.apache.nifi.processors.standard.util.FileTransfer: void rename(org.apache.nifi.flowfile.FlowFile,java.lang.String,java.lang.String)>(v, v, v);
label:
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.logging.ComponentLog getLogger()>();
v = newarray (java.lang.Object)[6];
v[0] = v;
v[1] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[2] = v;
v[3] = v;
v[4] = v;
v[5] = v;
interfaceinvoke v.<org.apache.nifi.logging.ComponentLog: void warn(java.lang.String,java.lang.Object[])>("Successfully fetched the content for {} from {}:{}{} but failed to rename the remote file due to {}", v);
label:
return;
catch java.io.FileNotFoundException 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;
}
protected abstract org.apache.nifi.processors.standard.util.FileTransfer createFileTransfer(org.apache.nifi.processor.ProcessContext);
static void <clinit>()
{
org.apache.nifi.components.PropertyDescriptor v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.nifi.components.AllowableValue v, v, v, v, v, v, v, v, v;
java.lang.Object[] v, v;
org.apache.nifi.logging.LogLevel[] v;
org.apache.nifi.processor.Relationship v, v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v;
org.apache.nifi.components.PropertyDescriptor$Builder v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v, v;
org.apache.nifi.expression.ExpressionLanguageScope v, v, v, v, v, v;
org.apache.nifi.components.AllowableValue[] v;
org.apache.nifi.logging.LogLevel v;
org.apache.nifi.components.Validator v, v, v, v, v;
org.apache.nifi.processor.Relationship$Builder v, v, v, v, v, v, v, v, v, v, v, v;
v = new org.apache.nifi.components.AllowableValue;
specialinvoke v.<org.apache.nifi.components.AllowableValue: void <init>(java.lang.String,java.lang.String,java.lang.String)>("None", "None", "Leave the file as-is");
<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.AllowableValue COMPLETION_NONE> = v;
v = new org.apache.nifi.components.AllowableValue;
specialinvoke v.<org.apache.nifi.components.AllowableValue: void <init>(java.lang.String,java.lang.String,java.lang.String)>("Move File", "Move File", "Move the file to the directory specified by the <Move Destination Directory> property");
<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.AllowableValue COMPLETION_MOVE> = v;
v = new org.apache.nifi.components.AllowableValue;
specialinvoke v.<org.apache.nifi.components.AllowableValue: void <init>(java.lang.String,java.lang.String,java.lang.String)>("Delete File", "Delete File", "Deletes the original file from the remote system");
<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.AllowableValue COMPLETION_DELETE> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("Hostname");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("The fully-qualified hostname or IP address of the host to fetch the data from");
v = <org.apache.nifi.processor.util.StandardValidators: org.apache.nifi.components.Validator NON_EMPTY_VALIDATOR>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder addValidator(org.apache.nifi.components.Validator)>(v);
v = <org.apache.nifi.expression.ExpressionLanguageScope: org.apache.nifi.expression.ExpressionLanguageScope FLOWFILE_ATTRIBUTES>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder expressionLanguageSupported(org.apache.nifi.expression.ExpressionLanguageScope)>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(1);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor HOSTNAME> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("Port");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("The port to connect to on the remote host to fetch the data from");
v = <org.apache.nifi.processor.util.StandardValidators: org.apache.nifi.components.Validator NON_EMPTY_VALIDATOR>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder addValidator(org.apache.nifi.components.Validator)>(v);
v = <org.apache.nifi.expression.ExpressionLanguageScope: org.apache.nifi.expression.ExpressionLanguageScope FLOWFILE_ATTRIBUTES>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder expressionLanguageSupported(org.apache.nifi.expression.ExpressionLanguageScope)>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(1);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor UNDEFAULTED_PORT> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("Username");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("Username");
v = <org.apache.nifi.processor.util.StandardValidators: org.apache.nifi.components.Validator NON_EMPTY_VALIDATOR>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder addValidator(org.apache.nifi.components.Validator)>(v);
v = <org.apache.nifi.expression.ExpressionLanguageScope: org.apache.nifi.expression.ExpressionLanguageScope FLOWFILE_ATTRIBUTES>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder expressionLanguageSupported(org.apache.nifi.expression.ExpressionLanguageScope)>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(1);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor USERNAME> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("Remote File");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("The fully qualified filename on the remote system");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(1);
v = <org.apache.nifi.processor.util.StandardValidators: org.apache.nifi.components.Validator NON_EMPTY_VALIDATOR>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder addValidator(org.apache.nifi.components.Validator)>(v);
v = <org.apache.nifi.expression.ExpressionLanguageScope: org.apache.nifi.expression.ExpressionLanguageScope FLOWFILE_ATTRIBUTES>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder expressionLanguageSupported(org.apache.nifi.expression.ExpressionLanguageScope)>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor REMOTE_FILENAME> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("Completion Strategy");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("Specifies what to do with the original file on the server once it has been pulled into NiFi. If the Completion Strategy fails, a warning will be logged but the data will still be transferred.");
v = <org.apache.nifi.expression.ExpressionLanguageScope: org.apache.nifi.expression.ExpressionLanguageScope NONE>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder expressionLanguageSupported(org.apache.nifi.expression.ExpressionLanguageScope)>(v);
v = newarray (org.apache.nifi.components.AllowableValue)[3];
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.AllowableValue COMPLETION_NONE>;
v[0] = v;
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.AllowableValue COMPLETION_MOVE>;
v[1] = v;
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.AllowableValue COMPLETION_DELETE>;
v[2] = v;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder allowableValues(org.apache.nifi.components.AllowableValue[])>(v);
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.AllowableValue COMPLETION_NONE>;
v = virtualinvoke v.<org.apache.nifi.components.AllowableValue: java.lang.String getValue()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder defaultValue(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(1);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor COMPLETION_STRATEGY> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = <org.apache.nifi.processors.standard.util.FileTransfer: org.apache.nifi.components.PropertyDescriptor CREATE_DIRECTORY>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder fromPropertyDescriptor(org.apache.nifi.components.PropertyDescriptor)>(v);
v = newarray (java.lang.Object)[3];
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor COMPLETION_STRATEGY>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor: java.lang.String getDisplayName()>();
v[0] = v;
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.AllowableValue COMPLETION_MOVE>;
v = virtualinvoke v.<org.apache.nifi.components.AllowableValue: java.lang.String getDisplayName()>();
v[1] = v;
v = <org.apache.nifi.processors.standard.util.FileTransfer: org.apache.nifi.components.PropertyDescriptor CREATE_DIRECTORY>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor: java.lang.String getDescription()>();
v[2] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("Used when \'%s\' is \'%s\'. %s", v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(0);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor MOVE_CREATE_DIRECTORY> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("Move Destination Directory");
v = newarray (java.lang.Object)[3];
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor COMPLETION_STRATEGY>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor: java.lang.String getDisplayName()>();
v[0] = v;
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.AllowableValue COMPLETION_MOVE>;
v = virtualinvoke v.<org.apache.nifi.components.AllowableValue: java.lang.String getDisplayName()>();
v[1] = v;
v = <org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor MOVE_CREATE_DIRECTORY>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor: java.lang.String getDisplayName()>();
v[2] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("The directory on the remote server to move the original file to once it has been ingested into NiFi. This property is ignored unless the %s is set to \'%s\'. The specified directory must already exist on the remote system if \'%s\' is disabled, or the rename will fail.", v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>(v);
v = <org.apache.nifi.expression.ExpressionLanguageScope: org.apache.nifi.expression.ExpressionLanguageScope FLOWFILE_ATTRIBUTES>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder expressionLanguageSupported(org.apache.nifi.expression.ExpressionLanguageScope)>(v);
v = <org.apache.nifi.processor.util.StandardValidators: org.apache.nifi.components.Validator NON_EMPTY_VALIDATOR>;
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder addValidator(org.apache.nifi.components.Validator)>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(0);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor MOVE_DESTINATION_DIR> = v;
v = new org.apache.nifi.components.PropertyDescriptor$Builder;
specialinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder displayName(java.lang.String)>("Log level when file not found");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder name(java.lang.String)>("fetchfiletransfer-notfound-loglevel");
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder description(java.lang.String)>("Log level to use in case the file does not exist when the processor is triggered");
v = staticinvoke <org.apache.nifi.logging.LogLevel: org.apache.nifi.logging.LogLevel[] values()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder allowableValues(java.lang.Enum[])>(v);
v = <org.apache.nifi.logging.LogLevel: org.apache.nifi.logging.LogLevel ERROR>;
v = virtualinvoke v.<org.apache.nifi.logging.LogLevel: java.lang.String toString()>();
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder defaultValue(java.lang.String)>(v);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor$Builder required(boolean)>(1);
v = virtualinvoke v.<org.apache.nifi.components.PropertyDescriptor$Builder: org.apache.nifi.components.PropertyDescriptor build()>();
<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.components.PropertyDescriptor FILE_NOT_FOUND_LOG_LEVEL> = v;
v = new org.apache.nifi.processor.Relationship$Builder;
specialinvoke v.<org.apache.nifi.processor.Relationship$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.processor.Relationship$Builder: org.apache.nifi.processor.Relationship$Builder name(java.lang.String)>("success");
v = virtualinvoke v.<org.apache.nifi.processor.Relationship$Builder: org.apache.nifi.processor.Relationship$Builder description(java.lang.String)>("All FlowFiles that are received are routed to success");
v = virtualinvoke v.<org.apache.nifi.processor.Relationship$Builder: org.apache.nifi.processor.Relationship build()>();
<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.processor.Relationship REL_SUCCESS> = v;
v = new org.apache.nifi.processor.Relationship$Builder;
specialinvoke v.<org.apache.nifi.processor.Relationship$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.processor.Relationship$Builder: org.apache.nifi.processor.Relationship$Builder name(java.lang.String)>("comms.failure");
v = virtualinvoke v.<org.apache.nifi.processor.Relationship$Builder: org.apache.nifi.processor.Relationship$Builder description(java.lang.String)>("Any FlowFile that could not be fetched from the remote server due to a communications failure will be transferred to this Relationship.");
v = virtualinvoke v.<org.apache.nifi.processor.Relationship$Builder: org.apache.nifi.processor.Relationship build()>();
<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.processor.Relationship REL_COMMS_FAILURE> = v;
v = new org.apache.nifi.processor.Relationship$Builder;
specialinvoke v.<org.apache.nifi.processor.Relationship$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.processor.Relationship$Builder: org.apache.nifi.processor.Relationship$Builder name(java.lang.String)>("not.found");
v = virtualinvoke v.<org.apache.nifi.processor.Relationship$Builder: org.apache.nifi.processor.Relationship$Builder description(java.lang.String)>("Any FlowFile for which we receive a \'Not Found\' message from the remote server will be transferred to this Relationship.");
v = virtualinvoke v.<org.apache.nifi.processor.Relationship$Builder: org.apache.nifi.processor.Relationship build()>();
<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.processor.Relationship REL_NOT_FOUND> = v;
v = new org.apache.nifi.processor.Relationship$Builder;
specialinvoke v.<org.apache.nifi.processor.Relationship$Builder: void <init>()>();
v = virtualinvoke v.<org.apache.nifi.processor.Relationship$Builder: org.apache.nifi.processor.Relationship$Builder name(java.lang.String)>("permission.denied");
v = virtualinvoke v.<org.apache.nifi.processor.Relationship$Builder: org.apache.nifi.processor.Relationship$Builder description(java.lang.String)>("Any FlowFile that could not be fetched from the remote server due to insufficient permissions will be transferred to this Relationship.");
v = virtualinvoke v.<org.apache.nifi.processor.Relationship$Builder: org.apache.nifi.processor.Relationship build()>();
<org.apache.nifi.processors.standard.FetchFileTransfer: org.apache.nifi.processor.Relationship REL_PERMISSION_DENIED> = v;
return;
}
}