public class org.apache.activemq.blob.FTPBlobUploadStrategy extends org.apache.activemq.blob.FTPStrategy implements org.apache.activemq.blob.BlobUploadStrategy
{
public void <init>(org.apache.activemq.blob.BlobTransferPolicy) throws java.net.MalformedURLException
{
org.apache.activemq.blob.BlobTransferPolicy v;
org.apache.activemq.blob.FTPBlobUploadStrategy v;
v := @this: org.apache.activemq.blob.FTPBlobUploadStrategy;
v := @parameter: org.apache.activemq.blob.BlobTransferPolicy;
specialinvoke v.<org.apache.activemq.blob.FTPStrategy: void <init>(org.apache.activemq.blob.BlobTransferPolicy)>(v);
return;
}
public java.net.URL uploadFile(org.apache.activemq.command.ActiveMQBlobMessage, java.io.File) throws javax.jms.JMSException, java.io.IOException
{
java.lang.Throwable v;
java.net.URL v;
java.io.FileInputStream v;
org.apache.activemq.blob.FTPBlobUploadStrategy v;
java.io.File v;
org.apache.activemq.command.ActiveMQBlobMessage v;
v := @this: org.apache.activemq.blob.FTPBlobUploadStrategy;
v := @parameter: org.apache.activemq.command.ActiveMQBlobMessage;
v := @parameter: java.io.File;
v = new java.io.FileInputStream;
specialinvoke v.<java.io.FileInputStream: void <init>(java.io.File)>(v);
label:
v = virtualinvoke v.<org.apache.activemq.blob.FTPBlobUploadStrategy: java.net.URL uploadStream(org.apache.activemq.command.ActiveMQBlobMessage,java.io.InputStream)>(v, v);
label:
virtualinvoke v.<java.io.FileInputStream: void close()>();
return v;
label:
v := @caughtexception;
throw v;
catch java.lang.Throwable from label to label with label;
}
public java.net.URL uploadStream(org.apache.activemq.command.ActiveMQBlobMessage, java.io.InputStream) throws javax.jms.JMSException, java.io.IOException
{
java.lang.Throwable v;
java.net.URL v, v, v, v, v;
int v;
org.apache.commons.net.ftp.FTPClient v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v;
org.apache.activemq.blob.FTPBlobUploadStrategy v;
boolean v, v;
org.apache.activemq.command.MessageId v;
javax.jms.JMSException v;
org.apache.activemq.command.ActiveMQBlobMessage v;
java.io.InputStream v;
v := @this: org.apache.activemq.blob.FTPBlobUploadStrategy;
v := @parameter: org.apache.activemq.command.ActiveMQBlobMessage;
v := @parameter: java.io.InputStream;
v = virtualinvoke v.<org.apache.activemq.blob.FTPBlobUploadStrategy: org.apache.commons.net.ftp.FTPClient createFTP()>();
label:
v = v.<org.apache.activemq.blob.FTPBlobUploadStrategy: java.net.URL url>;
v = virtualinvoke v.<java.net.URL: java.lang.String getPath()>();
v = virtualinvoke v.<java.lang.String: int lastIndexOf(java.lang.String)>("/");
v = virtualinvoke v.<java.lang.String: java.lang.String substring(int,int)>(0, v);
v = virtualinvoke v.<org.apache.activemq.command.ActiveMQBlobMessage: org.apache.activemq.command.MessageId getMessageId()>();
v = virtualinvoke v.<org.apache.activemq.command.MessageId: java.lang.String toString()>();
v = virtualinvoke v.<java.lang.String: java.lang.String replaceAll(java.lang.String,java.lang.String)>(":", "_");
virtualinvoke v.<org.apache.commons.net.ftp.FTPClient: boolean setFileType(int)>(2);
v = virtualinvoke v.<org.apache.commons.net.ftp.FTPClient: boolean changeWorkingDirectory(java.lang.String)>(v);
if v != 0 goto label;
v = v.<org.apache.activemq.blob.FTPBlobUploadStrategy: java.net.URL url>;
v = virtualinvoke v.<java.net.URL: java.lang.String toString()>();
v = v.<org.apache.activemq.blob.FTPBlobUploadStrategy: java.net.URL url>;
v = virtualinvoke v.<java.net.URL: java.lang.String getPath()>();
v = virtualinvoke v.<java.lang.String: java.lang.String replaceFirst(java.lang.String,java.lang.String)>(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[])>("\u0001/");
goto label;
label:
v = v.<org.apache.activemq.blob.FTPBlobUploadStrategy: java.net.URL url>;
v = virtualinvoke v.<java.net.URL: java.lang.String toString()>();
label:
v = virtualinvoke v.<org.apache.commons.net.ftp.FTPClient: boolean storeFile(java.lang.String,java.io.InputStream)>(v, v);
if v != 0 goto label;
v = new javax.jms.JMSException;
v = virtualinvoke v.<org.apache.commons.net.ftp.FTPClient: java.lang.String getReplyString()>();
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[])>("FTP store failed: \u0001");
specialinvoke v.<javax.jms.JMSException: void <init>(java.lang.String)>(v);
throw v;
label:
v = new java.net.URL;
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");
specialinvoke v.<java.net.URL: void <init>(java.lang.String)>(v);
label:
virtualinvoke v.<org.apache.commons.net.ftp.FTPClient: int quit()>();
virtualinvoke v.<org.apache.commons.net.ftp.FTPClient: void disconnect()>();
return v;
label:
v := @caughtexception;
virtualinvoke v.<org.apache.commons.net.ftp.FTPClient: int quit()>();
virtualinvoke v.<org.apache.commons.net.ftp.FTPClient: void disconnect()>();
throw v;
catch java.lang.Throwable from label to label with label;
}
}