public class org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR extends org.apache.ftpserver.command.AbstractCommand
{
private static final org.slf4j.Logger LOG;
private final java.util.concurrent.atomic.AtomicReference sessionFactory;
private final java.util.concurrent.CountDownLatch sessionFactorySetSignal;
private final org.apache.nifi.processor.Relationship relationshipSuccess;
public void <init>(java.util.concurrent.atomic.AtomicReference, java.util.concurrent.CountDownLatch, org.apache.nifi.processor.Relationship)
{
java.util.concurrent.CountDownLatch v;
org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR v;
org.apache.nifi.processor.Relationship v;
java.util.concurrent.atomic.AtomicReference v;
v := @this: org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR;
v := @parameter: java.util.concurrent.atomic.AtomicReference;
v := @parameter: java.util.concurrent.CountDownLatch;
v := @parameter: org.apache.nifi.processor.Relationship;
specialinvoke v.<org.apache.ftpserver.command.AbstractCommand: void <init>()>();
v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: java.util.concurrent.atomic.AtomicReference sessionFactory> = v;
v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: java.util.concurrent.CountDownLatch sessionFactorySetSignal> = v;
v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: org.apache.nifi.processor.Relationship relationshipSuccess> = v;
return;
}
public void execute(org.apache.ftpserver.impl.FtpIoSession, org.apache.ftpserver.impl.FtpServerContext, org.apache.ftpserver.ftplet.FtpRequest)
{
java.lang.Throwable v;
org.apache.ftpserver.impl.ServerDataConnectionFactory v, v, v, v;
org.apache.ftpserver.ftplet.DefaultFtpReply v;
org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR v;
int v, v;
java.lang.String v, v, v;
org.apache.ftpserver.impl.FtpIoSession v;
org.apache.ftpserver.ftplet.FtpRequest v;
org.apache.ftpserver.impl.FtpServerContext v;
org.apache.ftpserver.impl.LocalizedDataTransferFtpReply v;
org.apache.nifi.processors.standard.ftp.commands.FtpCommandException v;
org.apache.ftpserver.ftplet.FtpFile v;
org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException v;
v := @this: org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR;
v := @parameter: org.apache.ftpserver.impl.FtpIoSession;
v := @parameter: org.apache.ftpserver.impl.FtpServerContext;
v := @parameter: org.apache.ftpserver.ftplet.FtpRequest;
label:
specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: void executeCommand(org.apache.ftpserver.impl.FtpIoSession,org.apache.ftpserver.impl.FtpServerContext,org.apache.ftpserver.ftplet.FtpRequest)>(v, v, v);
label:
virtualinvoke v.<org.apache.ftpserver.impl.FtpIoSession: void resetState()>();
v = virtualinvoke v.<org.apache.ftpserver.impl.FtpIoSession: org.apache.ftpserver.impl.ServerDataConnectionFactory getDataConnection()>();
interfaceinvoke v.<org.apache.ftpserver.impl.ServerDataConnectionFactory: void closeDataConnection()>();
goto label;
label:
v := @caughtexception;
v = virtualinvoke v.<org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException: int getFtpReturnCode()>();
v = virtualinvoke v.<org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException: java.lang.String getSubId()>();
v = virtualinvoke v.<org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException: java.lang.String getMessage()>();
v = virtualinvoke v.<org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException: org.apache.ftpserver.ftplet.FtpFile getFtpFile()>();
v = staticinvoke <org.apache.ftpserver.impl.LocalizedDataTransferFtpReply: org.apache.ftpserver.impl.LocalizedDataTransferFtpReply translate(org.apache.ftpserver.impl.FtpIoSession,org.apache.ftpserver.ftplet.FtpRequest,org.apache.ftpserver.impl.FtpServerContext,int,java.lang.String,java.lang.String,org.apache.ftpserver.ftplet.FtpFile)>(v, v, v, v, v, v, v);
virtualinvoke v.<org.apache.ftpserver.impl.FtpIoSession: org.apache.mina.core.future.WriteFuture write(java.lang.Object)>(v);
label:
virtualinvoke v.<org.apache.ftpserver.impl.FtpIoSession: void resetState()>();
v = virtualinvoke v.<org.apache.ftpserver.impl.FtpIoSession: org.apache.ftpserver.impl.ServerDataConnectionFactory getDataConnection()>();
interfaceinvoke v.<org.apache.ftpserver.impl.ServerDataConnectionFactory: void closeDataConnection()>();
goto label;
label:
v := @caughtexception;
v = new org.apache.ftpserver.ftplet.DefaultFtpReply;
v = virtualinvoke v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandException: int getFtpReturnCode()>();
v = virtualinvoke v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandException: java.lang.String getMessage()>();
specialinvoke v.<org.apache.ftpserver.ftplet.DefaultFtpReply: void <init>(int,java.lang.String)>(v, v);
virtualinvoke v.<org.apache.ftpserver.impl.FtpIoSession: org.apache.mina.core.future.WriteFuture write(java.lang.Object)>(v);
label:
virtualinvoke v.<org.apache.ftpserver.impl.FtpIoSession: void resetState()>();
v = virtualinvoke v.<org.apache.ftpserver.impl.FtpIoSession: org.apache.ftpserver.impl.ServerDataConnectionFactory getDataConnection()>();
interfaceinvoke v.<org.apache.ftpserver.impl.ServerDataConnectionFactory: void closeDataConnection()>();
goto label;
label:
v := @caughtexception;
virtualinvoke v.<org.apache.ftpserver.impl.FtpIoSession: void resetState()>();
v = virtualinvoke v.<org.apache.ftpserver.impl.FtpIoSession: org.apache.ftpserver.impl.ServerDataConnectionFactory getDataConnection()>();
interfaceinvoke v.<org.apache.ftpserver.impl.ServerDataConnectionFactory: void closeDataConnection()>();
throw v;
label:
return;
catch org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException from label to label with label;
catch org.apache.nifi.processors.standard.ftp.commands.FtpCommandException 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;
}
private void executeCommand(org.apache.ftpserver.impl.FtpIoSession, org.apache.ftpserver.impl.FtpServerContext, org.apache.ftpserver.ftplet.FtpRequest) throws org.apache.nifi.processors.standard.ftp.commands.FtpCommandException
{
org.apache.ftpserver.impl.FtpIoSession v;
org.apache.ftpserver.ftplet.FtpRequest v;
org.apache.ftpserver.impl.FtpServerContext v;
org.apache.ftpserver.ftplet.DataConnection v;
org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR v;
org.apache.ftpserver.ftplet.FtpFile v;
java.lang.String v, v;
v := @this: org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR;
v := @parameter: org.apache.ftpserver.impl.FtpIoSession;
v := @parameter: org.apache.ftpserver.impl.FtpServerContext;
v := @parameter: org.apache.ftpserver.ftplet.FtpRequest;
v = specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: java.lang.String getArgument(org.apache.ftpserver.ftplet.FtpRequest)>(v);
specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: void checkDataConnection(org.apache.ftpserver.impl.FtpIoSession)>(v);
v = specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: org.apache.ftpserver.ftplet.FtpFile getFtpFile(org.apache.ftpserver.impl.FtpIoSession,java.lang.String)>(v, v);
specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: void checkWritePermission(org.apache.ftpserver.ftplet.FtpFile)>(v);
v = interfaceinvoke v.<org.apache.ftpserver.ftplet.FtpFile: java.lang.String getAbsolutePath()>();
specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: void sendFileStatusOkay(org.apache.ftpserver.impl.FtpIoSession,org.apache.ftpserver.impl.FtpServerContext,org.apache.ftpserver.ftplet.FtpRequest,java.lang.String)>(v, v, v, v);
v = specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: org.apache.ftpserver.ftplet.DataConnection openDataConnection(org.apache.ftpserver.impl.FtpIoSession,org.apache.ftpserver.ftplet.FtpFile)>(v, v);
specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: void transferData(org.apache.ftpserver.ftplet.DataConnection,org.apache.ftpserver.impl.FtpIoSession,org.apache.ftpserver.impl.FtpServerContext,org.apache.ftpserver.ftplet.FtpRequest,org.apache.ftpserver.ftplet.FtpFile)>(v, v, v, v, v);
return;
}
private java.lang.String getArgument(org.apache.ftpserver.ftplet.FtpRequest) throws org.apache.nifi.processors.standard.ftp.commands.FtpCommandException
{
org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR v;
org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException v;
java.lang.String v;
org.apache.ftpserver.ftplet.FtpRequest v;
v := @this: org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR;
v := @parameter: org.apache.ftpserver.ftplet.FtpRequest;
v = interfaceinvoke v.<org.apache.ftpserver.ftplet.FtpRequest: java.lang.String getArgument()>();
if v != null goto label;
v = new org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException;
specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException: void <init>(int,java.lang.String,java.lang.String,org.apache.ftpserver.ftplet.FtpFile)>(501, "STOR", null, null);
throw v;
label:
return v;
}
private void checkDataConnection(org.apache.ftpserver.impl.FtpIoSession) throws org.apache.nifi.processors.standard.ftp.commands.FtpCommandException
{
java.net.InetAddress v;
org.apache.nifi.processors.standard.ftp.commands.FtpCommandException v;
org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR v;
org.apache.ftpserver.impl.ServerDataConnectionFactory v;
org.apache.ftpserver.impl.FtpIoSession v;
boolean v;
v := @this: org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR;
v := @parameter: org.apache.ftpserver.impl.FtpIoSession;
v = virtualinvoke v.<org.apache.ftpserver.impl.FtpIoSession: org.apache.ftpserver.impl.ServerDataConnectionFactory getDataConnection()>();
v = v instanceof org.apache.ftpserver.impl.IODataConnectionFactory;
if v == 0 goto label;
v = virtualinvoke v.<org.apache.ftpserver.impl.IODataConnectionFactory: java.net.InetAddress getInetAddress()>();
if v != null goto label;
v = new org.apache.nifi.processors.standard.ftp.commands.FtpCommandException;
specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandException: void <init>(int,java.lang.String)>(503, "PORT or PASV must be issued first");
throw v;
label:
return;
}
private org.apache.ftpserver.ftplet.FtpFile getFtpFile(org.apache.ftpserver.impl.FtpIoSession, java.lang.String) throws org.apache.nifi.processors.standard.ftp.commands.FtpCommandException
{
java.lang.Throwable v;
org.slf4j.Logger v;
org.apache.ftpserver.impl.FtpIoSession v;
org.apache.ftpserver.ftplet.FileSystemView v;
org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR v;
org.apache.ftpserver.ftplet.FtpFile v;
org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException v;
java.lang.String v;
v := @this: org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR;
v := @parameter: org.apache.ftpserver.impl.FtpIoSession;
v := @parameter: java.lang.String;
v = null;
label:
v = virtualinvoke v.<org.apache.ftpserver.impl.FtpIoSession: org.apache.ftpserver.ftplet.FileSystemView getFileSystemView()>();
v = interfaceinvoke v.<org.apache.ftpserver.ftplet.FileSystemView: org.apache.ftpserver.ftplet.FtpFile getFile(java.lang.String)>(v);
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("Exception getting file object", v);
label:
if v != null goto label;
v = new org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException;
specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException: void <init>(int,java.lang.String,java.lang.String,org.apache.ftpserver.ftplet.FtpFile)>(550, "STOR.invalid", v, v);
throw v;
label:
return v;
catch org.apache.ftpserver.ftplet.FtpException from label to label with label;
}
private void checkWritePermission(org.apache.ftpserver.ftplet.FtpFile) throws org.apache.nifi.processors.standard.ftp.commands.FtpCommandException
{
org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR v;
org.apache.ftpserver.ftplet.FtpFile v;
org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException v;
java.lang.String v;
boolean v;
v := @this: org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR;
v := @parameter: org.apache.ftpserver.ftplet.FtpFile;
v = interfaceinvoke v.<org.apache.ftpserver.ftplet.FtpFile: boolean isWritable()>();
if v != 0 goto label;
v = new org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException;
v = interfaceinvoke v.<org.apache.ftpserver.ftplet.FtpFile: java.lang.String getAbsolutePath()>();
specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException: void <init>(int,java.lang.String,java.lang.String,org.apache.ftpserver.ftplet.FtpFile)>(550, "STOR.permission", v, v);
throw v;
label:
return;
}
private void sendFileStatusOkay(org.apache.ftpserver.impl.FtpIoSession, org.apache.ftpserver.impl.FtpServerContext, org.apache.ftpserver.ftplet.FtpRequest, java.lang.String)
{
org.apache.ftpserver.impl.FtpServerContext v;
org.apache.ftpserver.impl.LocalizedFtpReply v;
org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR v;
org.apache.ftpserver.impl.FtpIoSession v;
java.lang.String v;
org.apache.ftpserver.ftplet.FtpRequest v;
org.apache.mina.core.future.WriteFuture v;
v := @this: org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR;
v := @parameter: org.apache.ftpserver.impl.FtpIoSession;
v := @parameter: org.apache.ftpserver.impl.FtpServerContext;
v := @parameter: org.apache.ftpserver.ftplet.FtpRequest;
v := @parameter: java.lang.String;
v = staticinvoke <org.apache.ftpserver.impl.LocalizedFtpReply: org.apache.ftpserver.impl.LocalizedFtpReply translate(org.apache.ftpserver.impl.FtpIoSession,org.apache.ftpserver.ftplet.FtpRequest,org.apache.ftpserver.impl.FtpServerContext,int,java.lang.String,java.lang.String)>(v, v, v, 150, "STOR", v);
v = virtualinvoke v.<org.apache.ftpserver.impl.FtpIoSession: org.apache.mina.core.future.WriteFuture write(java.lang.Object)>(v);
interfaceinvoke v.<org.apache.mina.core.future.WriteFuture: boolean awaitUninterruptibly(long)>(10000L);
return;
}
private org.apache.ftpserver.ftplet.DataConnection openDataConnection(org.apache.ftpserver.impl.FtpIoSession, org.apache.ftpserver.ftplet.FtpFile) throws org.apache.nifi.processors.standard.ftp.commands.FtpCommandException
{
org.slf4j.Logger v;
org.apache.ftpserver.impl.ServerDataConnectionFactory v;
org.apache.ftpserver.impl.FtpIoSession v;
java.lang.Exception v;
org.apache.ftpserver.ftplet.DataConnection v;
org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR v;
org.apache.ftpserver.ftplet.FtpFile v;
org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException v;
java.lang.String v;
v := @this: org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR;
v := @parameter: org.apache.ftpserver.impl.FtpIoSession;
v := @parameter: org.apache.ftpserver.ftplet.FtpFile;
label:
v = virtualinvoke v.<org.apache.ftpserver.impl.FtpIoSession: org.apache.ftpserver.impl.ServerDataConnectionFactory getDataConnection()>();
v = interfaceinvoke v.<org.apache.ftpserver.impl.ServerDataConnectionFactory: org.apache.ftpserver.ftplet.DataConnection openConnection()>();
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("Exception getting the input data stream", v);
v = new org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException;
v = interfaceinvoke v.<org.apache.ftpserver.ftplet.FtpFile: java.lang.String getAbsolutePath()>();
specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException: void <init>(int,java.lang.String,java.lang.String,org.apache.ftpserver.ftplet.FtpFile)>(425, "STOR", v, v);
throw v;
label:
return v;
catch java.lang.Exception from label to label with label;
}
private void transferData(org.apache.ftpserver.ftplet.DataConnection, org.apache.ftpserver.impl.FtpIoSession, org.apache.ftpserver.impl.FtpServerContext, org.apache.ftpserver.ftplet.FtpRequest, org.apache.ftpserver.ftplet.FtpFile) throws org.apache.nifi.processors.standard.ftp.commands.FtpCommandException
{
java.lang.Runnable v;
org.apache.ftpserver.ftplet.DataConnection v;
org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR v;
org.apache.ftpserver.ftplet.FtpStatistics v;
org.apache.nifi.flowfile.FlowFile v;
java.lang.Exception v, v;
org.apache.ftpserver.impl.FtpServerContext v;
org.apache.nifi.processors.standard.ftp.commands.FtpCommandException v;
org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException v, v;
java.lang.Throwable v;
long v;
java.net.SocketException v;
org.apache.nifi.provenance.ProvenanceReporter v;
org.apache.nifi.processor.Relationship v;
java.lang.String v, v, v, v, v, v, v;
java.io.OutputStream v;
org.slf4j.Logger v, v, v, v, v;
org.apache.ftpserver.impl.FtpIoSession v;
java.io.IOException v;
org.apache.nifi.processor.ProcessSession v;
org.apache.ftpserver.ftplet.FtpRequest v;
org.apache.ftpserver.ftplet.FtpFile v;
org.apache.ftpserver.ftplet.FtpSession v;
org.apache.nifi.flowfile.attributes.CoreAttributes v, v;
v := @this: org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR;
v := @parameter: org.apache.ftpserver.ftplet.DataConnection;
v := @parameter: org.apache.ftpserver.impl.FtpIoSession;
v := @parameter: org.apache.ftpserver.impl.FtpServerContext;
v := @parameter: org.apache.ftpserver.ftplet.FtpRequest;
v := @parameter: org.apache.ftpserver.ftplet.FtpFile;
label:
v = specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: org.apache.nifi.processor.ProcessSession createProcessSession()>();
label:
goto label;
label:
v := @caughtexception;
v = <org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("ProcessSession could not be acquired, command STOR aborted.", v);
v = new org.apache.nifi.processors.standard.ftp.commands.FtpCommandException;
specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandException: void <init>(int,java.lang.String)>(425, "File transfer failed.");
throw v;
label:
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.flowfile.FlowFile create()>();
label:
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: java.io.OutputStream write(org.apache.nifi.flowfile.FlowFile)>(v);
label:
v = virtualinvoke v.<org.apache.ftpserver.impl.FtpIoSession: org.apache.ftpserver.ftplet.FtpSession getFtpletSession()>();
v = interfaceinvoke v.<org.apache.ftpserver.ftplet.DataConnection: long transferFromClient(org.apache.ftpserver.ftplet.FtpSession,java.io.OutputStream)>(v, v);
v = <org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: org.slf4j.Logger LOG>;
v = interfaceinvoke v.<org.apache.ftpserver.ftplet.FtpFile: java.lang.String getAbsolutePath()>();
interfaceinvoke v.<org.slf4j.Logger: void info(java.lang.String,java.lang.Object)>("File received {}", v);
label:
if v == null goto label;
virtualinvoke v.<java.io.OutputStream: void close()>();
goto label;
label:
v := @caughtexception;
throw v;
label:
v := @caughtexception;
v = <org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("Socket exception during data transfer", v);
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: void rollback()>();
v = new org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException;
v = interfaceinvoke v.<org.apache.ftpserver.ftplet.FtpFile: java.lang.String getAbsolutePath()>();
specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException: void <init>(int,java.lang.String,java.lang.String,org.apache.ftpserver.ftplet.FtpFile)>(426, "STOR", v, v);
throw v;
label:
v := @caughtexception;
v = <org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("IOException during data transfer", v);
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: void rollback()>();
v = new org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException;
v = interfaceinvoke v.<org.apache.ftpserver.ftplet.FtpFile: java.lang.String getAbsolutePath()>();
specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.DetailedFtpCommandException: void <init>(int,java.lang.String,java.lang.String,org.apache.ftpserver.ftplet.FtpFile)>(551, "STOR", v, v);
throw v;
label:
v = interfaceinvoke v.<org.apache.ftpserver.impl.FtpServerContext: org.apache.ftpserver.ftplet.FtpStatistics getFtpStatistics()>();
interfaceinvoke v.<org.apache.ftpserver.impl.ServerFtpStatistics: void setUpload(org.apache.ftpserver.impl.FtpIoSession,org.apache.ftpserver.ftplet.FtpFile,long)>(v, 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()>();
v = interfaceinvoke v.<org.apache.ftpserver.ftplet.FtpFile: java.lang.String getName()>();
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.flowfile.FlowFile putAttribute(org.apache.nifi.flowfile.FlowFile,java.lang.String,java.lang.String)>(v, v, 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()>();
v = specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: java.lang.String getPath(org.apache.ftpserver.ftplet.FtpFile)>(v);
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.flowfile.FlowFile putAttribute(org.apache.nifi.flowfile.FlowFile,java.lang.String,java.lang.String)>(v, v, v);
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: org.apache.nifi.provenance.ProvenanceReporter getProvenanceReporter()>();
interfaceinvoke v.<org.apache.nifi.provenance.ProvenanceReporter: void modifyContent(org.apache.nifi.flowfile.FlowFile)>(v);
v = v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: org.apache.nifi.processor.Relationship relationshipSuccess>;
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: void transfer(org.apache.nifi.flowfile.FlowFile,org.apache.nifi.processor.Relationship)>(v, v);
label:
goto label;
label:
v := @caughtexception;
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: void rollback()>();
v = <org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: org.slf4j.Logger LOG>;
interfaceinvoke v.<org.slf4j.Logger: void error(java.lang.String,java.lang.Throwable)>("Process session error. ", v);
label:
v = staticinvoke <org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR$lambda_transferData_0__302: java.lang.Runnable bootstrap$(org.apache.ftpserver.impl.FtpIoSession,org.apache.ftpserver.ftplet.FtpRequest,org.apache.ftpserver.impl.FtpServerContext,org.apache.ftpserver.ftplet.FtpFile,long)>(v, v, v, v, v);
interfaceinvoke v.<org.apache.nifi.processor.ProcessSession: void commitAsync(java.lang.Runnable)>(v);
return;
catch java.lang.InterruptedException from label to label with label;
catch java.util.concurrent.TimeoutException from label to label with label;
catch java.lang.Throwable from label to label with label;
catch java.net.SocketException from label to label with label;
catch java.io.IOException from label to label with label;
catch java.lang.Exception from label to label with label;
}
private java.lang.String getPath(org.apache.ftpserver.ftplet.FtpFile)
{
org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR v;
int v, v, v;
org.apache.ftpserver.ftplet.FtpFile v;
java.lang.String v, v, v, v;
v := @this: org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR;
v := @parameter: org.apache.ftpserver.ftplet.FtpFile;
v = interfaceinvoke v.<org.apache.ftpserver.ftplet.FtpFile: java.lang.String getAbsolutePath()>();
v = virtualinvoke v.<java.lang.String: int length()>();
v = interfaceinvoke v.<org.apache.ftpserver.ftplet.FtpFile: java.lang.String getName()>();
v = virtualinvoke v.<java.lang.String: int length()>();
v = v - v;
v = interfaceinvoke v.<org.apache.ftpserver.ftplet.FtpFile: java.lang.String getAbsolutePath()>();
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
return v;
}
private org.apache.nifi.processor.ProcessSession createProcessSession() throws java.lang.InterruptedException, java.util.concurrent.TimeoutException
{
org.apache.nifi.processor.ProcessSession v;
org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR v;
org.apache.nifi.processor.ProcessSessionFactory v;
v := @this: org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR;
v = specialinvoke v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: org.apache.nifi.processor.ProcessSessionFactory getProcessSessionFactory()>();
v = interfaceinvoke v.<org.apache.nifi.processor.ProcessSessionFactory: org.apache.nifi.processor.ProcessSession createSession()>();
return v;
}
private org.apache.nifi.processor.ProcessSessionFactory getProcessSessionFactory() throws java.lang.InterruptedException, java.util.concurrent.TimeoutException
{
java.util.concurrent.TimeUnit v;
java.util.concurrent.CountDownLatch v;
org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR v;
java.util.concurrent.TimeoutException v;
java.lang.Object v;
java.util.concurrent.atomic.AtomicReference v;
boolean v;
v := @this: org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR;
v = v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: java.util.concurrent.CountDownLatch sessionFactorySetSignal>;
v = <java.util.concurrent.TimeUnit: java.util.concurrent.TimeUnit MILLISECONDS>;
v = virtualinvoke v.<java.util.concurrent.CountDownLatch: boolean await(long,java.util.concurrent.TimeUnit)>(10000L, v);
if v == 0 goto label;
v = v.<org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: java.util.concurrent.atomic.AtomicReference sessionFactory>;
v = virtualinvoke v.<java.util.concurrent.atomic.AtomicReference: java.lang.Object get()>();
return v;
label:
v = new java.util.concurrent.TimeoutException;
specialinvoke v.<java.util.concurrent.TimeoutException: void <init>(java.lang.String)>("Waiting period for sessionFactory is over.");
throw v;
}
static void <clinit>()
{
org.slf4j.Logger v;
v = staticinvoke <org.slf4j.LoggerFactory: org.slf4j.Logger getLogger(java.lang.Class)>(class "Lorg/apache/nifi/processors/standard/ftp/commands/FtpCommandSTOR;");
<org.apache.nifi.processors.standard.ftp.commands.FtpCommandSTOR: org.slf4j.Logger LOG> = v;
return;
}
}