public class io.vertx.ext.web.client.impl.MultipartFormUpload extends java.lang.Object implements io.vertx.core.streams.ReadStream
{
private static final io.netty.buffer.UnpooledByteBufAllocator ALLOC;
private io.netty.handler.codec.http.DefaultFullHttpRequest request;
private io.netty.handler.codec.http.multipart.HttpPostRequestEncoder encoder;
private io.vertx.core.Handler exceptionHandler;
private io.vertx.core.Handler dataHandler;
private io.vertx.core.Handler endHandler;
private final io.vertx.core.streams.impl.InboundBuffer pending;
private boolean ended;
private final io.vertx.core.Context context;
public void <init>(io.vertx.core.Context, io.vertx.ext.web.multipart.MultipartForm, boolean, io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode) throws java.lang.Exception
{
io.netty.handler.codec.http.DefaultFullHttpRequest v, v;
io.vertx.core.Context v;
io.vertx.ext.web.multipart.MultipartForm v;
io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode v;
boolean v, v, v, v, v, v;
io.vertx.ext.web.client.impl.MultipartFormUpload v;
io.vertx.core.buffer.Buffer v, v;
io.netty.handler.codec.http.HttpVersion v;
io.vertx.core.streams.impl.InboundBuffer v, v, v, v;
io.netty.handler.codec.http.multipart.HttpPostRequestEncoder v, v, v, v, v;
io.vertx.ext.web.client.impl.MultipartFormUpload$1 v;
io.netty.buffer.ByteBuf v;
java.nio.charset.Charset v, v;
int v;
io.netty.handler.codec.http.multipart.MemoryFileUpload v;
java.lang.Boolean v, v, v;
java.lang.String v, v, v, v, v, v, v, v, v, v, v, v;
java.util.Iterator v;
io.netty.handler.codec.http.HttpMethod v;
java.io.File v;
java.lang.Object v;
io.vertx.core.Handler v, v;
v := @this: io.vertx.ext.web.client.impl.MultipartFormUpload;
v := @parameter: io.vertx.core.Context;
v := @parameter: io.vertx.ext.web.multipart.MultipartForm;
v := @parameter: boolean;
v := @parameter: io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode;
specialinvoke v.<java.lang.Object: void <init>()>();
v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.vertx.core.Context context> = v;
v = new io.vertx.core.streams.impl.InboundBuffer;
specialinvoke v.<io.vertx.core.streams.impl.InboundBuffer: void <init>(io.vertx.core.Context)>(v);
v = staticinvoke <io.vertx.ext.web.client.impl.MultipartFormUpload$handleChunk__831: io.vertx.core.Handler bootstrap$(io.vertx.ext.web.client.impl.MultipartFormUpload)>(v);
v = virtualinvoke v.<io.vertx.core.streams.impl.InboundBuffer: io.vertx.core.streams.impl.InboundBuffer handler(io.vertx.core.Handler)>(v);
v = staticinvoke <io.vertx.ext.web.client.impl.MultipartFormUpload$lambda_new_0__832: io.vertx.core.Handler bootstrap$(io.vertx.ext.web.client.impl.MultipartFormUpload)>(v);
v = virtualinvoke v.<io.vertx.core.streams.impl.InboundBuffer: io.vertx.core.streams.impl.InboundBuffer drainHandler(io.vertx.core.Handler)>(v);
v = virtualinvoke v.<io.vertx.core.streams.impl.InboundBuffer: io.vertx.core.streams.impl.InboundBuffer pause()>();
v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.vertx.core.streams.impl.InboundBuffer pending> = v;
v = new io.netty.handler.codec.http.DefaultFullHttpRequest;
v = <io.netty.handler.codec.http.HttpVersion: io.netty.handler.codec.http.HttpVersion HTTP_1_1>;
v = <io.netty.handler.codec.http.HttpMethod: io.netty.handler.codec.http.HttpMethod POST>;
specialinvoke v.<io.netty.handler.codec.http.DefaultFullHttpRequest: void <init>(io.netty.handler.codec.http.HttpVersion,io.netty.handler.codec.http.HttpMethod,java.lang.String)>(v, v, "/");
v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.handler.codec.http.DefaultFullHttpRequest request> = v;
interfaceinvoke v.<io.vertx.ext.web.multipart.MultipartForm: java.nio.charset.Charset getCharset()>();
v = interfaceinvoke v.<io.vertx.ext.web.multipart.MultipartForm: java.nio.charset.Charset getCharset()>();
if v == null goto label;
v = interfaceinvoke v.<io.vertx.ext.web.multipart.MultipartForm: java.nio.charset.Charset getCharset()>();
goto label;
label:
v = <io.netty.handler.codec.http.HttpConstants: java.nio.charset.Charset DEFAULT_CHARSET>;
label:
v = new io.netty.handler.codec.http.multipart.HttpPostRequestEncoder;
v = new io.vertx.ext.web.client.impl.MultipartFormUpload$1;
specialinvoke v.<io.vertx.ext.web.client.impl.MultipartFormUpload$1: void <init>(io.vertx.ext.web.client.impl.MultipartFormUpload,long,java.nio.charset.Charset,java.nio.charset.Charset)>(v, 16384L, v, v);
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.handler.codec.http.DefaultFullHttpRequest request>;
specialinvoke v.<io.netty.handler.codec.http.multipart.HttpPostRequestEncoder: void <init>(io.netty.handler.codec.http.multipart.HttpDataFactory,io.netty.handler.codec.http.HttpRequest,boolean,java.nio.charset.Charset,io.netty.handler.codec.http.multipart.HttpPostRequestEncoder$EncoderMode)>(v, v, v, v, v);
v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.handler.codec.http.multipart.HttpPostRequestEncoder encoder> = v;
v = interfaceinvoke v.<io.vertx.ext.web.multipart.MultipartForm: 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.<io.vertx.ext.web.multipart.FormDataPart: boolean isAttribute()>();
if v == 0 goto label;
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.handler.codec.http.multipart.HttpPostRequestEncoder encoder>;
v = interfaceinvoke v.<io.vertx.ext.web.multipart.FormDataPart: java.lang.String name()>();
v = interfaceinvoke v.<io.vertx.ext.web.multipart.FormDataPart: java.lang.String value()>();
virtualinvoke v.<io.netty.handler.codec.http.multipart.HttpPostRequestEncoder: void addBodyAttribute(java.lang.String,java.lang.String)>(v, v);
goto label;
label:
v = interfaceinvoke v.<io.vertx.ext.web.multipart.FormDataPart: java.lang.String pathname()>();
if v == null goto label;
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.handler.codec.http.multipart.HttpPostRequestEncoder encoder>;
v = interfaceinvoke v.<io.vertx.ext.web.multipart.FormDataPart: java.lang.String name()>();
v = interfaceinvoke v.<io.vertx.ext.web.multipart.FormDataPart: java.lang.String filename()>();
v = new java.io.File;
v = interfaceinvoke v.<io.vertx.ext.web.multipart.FormDataPart: java.lang.String pathname()>();
specialinvoke v.<java.io.File: void <init>(java.lang.String)>(v);
v = interfaceinvoke v.<io.vertx.ext.web.multipart.FormDataPart: java.lang.String mediaType()>();
v = interfaceinvoke v.<io.vertx.ext.web.multipart.FormDataPart: java.lang.Boolean isText()>();
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
virtualinvoke v.<io.netty.handler.codec.http.multipart.HttpPostRequestEncoder: void addBodyFileUpload(java.lang.String,java.lang.String,java.io.File,java.lang.String,boolean)>(v, v, v, v, v);
goto label;
label:
v = interfaceinvoke v.<io.vertx.ext.web.multipart.FormDataPart: java.lang.String mediaType()>();
v = interfaceinvoke v.<io.vertx.ext.web.multipart.FormDataPart: java.lang.String mediaType()>();
if v != null goto label;
v = interfaceinvoke v.<io.vertx.ext.web.multipart.FormDataPart: java.lang.Boolean isText()>();
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
if v == 0 goto label;
v = "text/plain";
goto label;
label:
v = "application/octet-stream";
label:
v = interfaceinvoke v.<io.vertx.ext.web.multipart.FormDataPart: java.lang.Boolean isText()>();
v = virtualinvoke v.<java.lang.Boolean: boolean booleanValue()>();
if v == 0 goto label;
v = null;
goto label;
label:
v = "binary";
label:
v = new io.netty.handler.codec.http.multipart.MemoryFileUpload;
v = interfaceinvoke v.<io.vertx.ext.web.multipart.FormDataPart: java.lang.String name()>();
v = interfaceinvoke v.<io.vertx.ext.web.multipart.FormDataPart: java.lang.String filename()>();
v = interfaceinvoke v.<io.vertx.ext.web.multipart.FormDataPart: io.vertx.core.buffer.Buffer content()>();
v = interfaceinvoke v.<io.vertx.core.buffer.Buffer: int length()>();
specialinvoke v.<io.netty.handler.codec.http.multipart.MemoryFileUpload: void <init>(java.lang.String,java.lang.String,java.lang.String,java.lang.String,java.nio.charset.Charset,long)>(v, v, v, v, null, v);
v = interfaceinvoke v.<io.vertx.ext.web.multipart.FormDataPart: io.vertx.core.buffer.Buffer content()>();
v = interfaceinvoke v.<io.vertx.core.buffer.Buffer: io.netty.buffer.ByteBuf getByteBuf()>();
virtualinvoke v.<io.netty.handler.codec.http.multipart.MemoryFileUpload: void setContent(io.netty.buffer.ByteBuf)>(v);
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.handler.codec.http.multipart.HttpPostRequestEncoder encoder>;
virtualinvoke v.<io.netty.handler.codec.http.multipart.HttpPostRequestEncoder: void addBodyHttpData(io.netty.handler.codec.http.multipart.InterfaceHttpData)>(v);
goto label;
label:
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.handler.codec.http.multipart.HttpPostRequestEncoder encoder>;
virtualinvoke v.<io.netty.handler.codec.http.multipart.HttpPostRequestEncoder: io.netty.handler.codec.http.HttpRequest finalizeRequest()>();
return;
}
public void handleChunk(java.lang.Object)
{
java.lang.Throwable v;
io.vertx.ext.web.client.impl.MultipartFormUpload v;
java.lang.Object v, v;
io.vertx.core.Handler v;
boolean v, v;
v := @this: io.vertx.ext.web.client.impl.MultipartFormUpload;
v := @parameter: java.lang.Object;
entermonitor v;
label:
v = v instanceof io.vertx.core.buffer.Buffer;
if v == 0 goto label;
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.vertx.core.Handler dataHandler>;
goto label;
label:
v = v instanceof java.lang.Throwable;
if v == 0 goto label;
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.vertx.core.Handler exceptionHandler>;
goto label;
label:
v = <io.vertx.core.streams.impl.InboundBuffer: java.lang.Object END_SENTINEL>;
if v != v goto label;
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.vertx.core.Handler endHandler>;
v = null;
goto label;
label:
exitmonitor v;
label:
return;
label:
exitmonitor v;
label:
goto label;
label:
v := @caughtexception;
exitmonitor v;
throw v;
label:
interfaceinvoke v.<io.vertx.core.Handler: void handle(java.lang.Object)>(v);
return;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public void run()
{
io.netty.buffer.UnpooledByteBufAllocator v;
io.vertx.core.streams.impl.InboundBuffer v, v, v, v, v;
io.netty.handler.codec.http.DefaultFullHttpRequest v;
io.netty.handler.codec.http.multipart.HttpPostRequestEncoder v, v, v;
io.vertx.core.Context v, v;
io.netty.buffer.ByteBuf v, v;
boolean v, v, v, v;
io.netty.handler.codec.http.HttpContent v;
io.vertx.ext.web.client.impl.MultipartFormUpload v;
java.lang.IllegalArgumentException v;
java.lang.Exception v;
io.vertx.core.buffer.Buffer v, v;
java.lang.Object v, v;
v := @this: io.vertx.ext.web.client.impl.MultipartFormUpload;
v = staticinvoke <io.vertx.core.Vertx: io.vertx.core.Context currentContext()>();
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.vertx.core.Context context>;
if v == v goto label;
v = new java.lang.IllegalArgumentException;
specialinvoke v.<java.lang.IllegalArgumentException: void <init>()>();
throw v;
label:
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: boolean ended>;
if v != 0 goto label;
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.handler.codec.http.multipart.HttpPostRequestEncoder encoder>;
v = virtualinvoke v.<io.netty.handler.codec.http.multipart.HttpPostRequestEncoder: boolean isChunked()>();
if v == 0 goto label;
label:
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.handler.codec.http.multipart.HttpPostRequestEncoder encoder>;
v = <io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.buffer.UnpooledByteBufAllocator ALLOC>;
v = virtualinvoke v.<io.netty.handler.codec.http.multipart.HttpPostRequestEncoder: io.netty.handler.codec.http.HttpContent readChunk(io.netty.buffer.ByteBufAllocator)>(v);
v = interfaceinvoke v.<io.netty.handler.codec.http.HttpContent: io.netty.buffer.ByteBuf content()>();
v = staticinvoke <io.vertx.core.buffer.Buffer: io.vertx.core.buffer.Buffer buffer(io.netty.buffer.ByteBuf)>(v);
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.vertx.core.streams.impl.InboundBuffer pending>;
v = virtualinvoke v.<io.vertx.core.streams.impl.InboundBuffer: boolean write(java.lang.Object)>(v);
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.handler.codec.http.multipart.HttpPostRequestEncoder encoder>;
v = virtualinvoke v.<io.netty.handler.codec.http.multipart.HttpPostRequestEncoder: boolean isEndOfInput()>();
if v == 0 goto label;
v.<io.vertx.ext.web.client.impl.MultipartFormUpload: boolean ended> = 1;
v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.handler.codec.http.DefaultFullHttpRequest request> = null;
v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.handler.codec.http.multipart.HttpPostRequestEncoder encoder> = null;
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.vertx.core.streams.impl.InboundBuffer pending>;
v = <io.vertx.core.streams.impl.InboundBuffer: java.lang.Object END_SENTINEL>;
virtualinvoke v.<io.vertx.core.streams.impl.InboundBuffer: boolean write(java.lang.Object)>(v);
goto label;
label:
if v == 0 goto label;
label:
goto label;
label:
v := @caughtexception;
v.<io.vertx.ext.web.client.impl.MultipartFormUpload: boolean ended> = 1;
v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.handler.codec.http.DefaultFullHttpRequest request> = null;
v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.handler.codec.http.multipart.HttpPostRequestEncoder encoder> = null;
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.vertx.core.streams.impl.InboundBuffer pending>;
virtualinvoke v.<io.vertx.core.streams.impl.InboundBuffer: boolean write(java.lang.Object)>(v);
goto label;
label:
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.handler.codec.http.DefaultFullHttpRequest request>;
v = virtualinvoke v.<io.netty.handler.codec.http.DefaultFullHttpRequest: io.netty.buffer.ByteBuf content()>();
v = staticinvoke <io.vertx.core.buffer.Buffer: io.vertx.core.buffer.Buffer buffer(io.netty.buffer.ByteBuf)>(v);
v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.handler.codec.http.DefaultFullHttpRequest request> = null;
v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.handler.codec.http.multipart.HttpPostRequestEncoder encoder> = null;
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.vertx.core.streams.impl.InboundBuffer pending>;
virtualinvoke v.<io.vertx.core.streams.impl.InboundBuffer: boolean write(java.lang.Object)>(v);
v.<io.vertx.ext.web.client.impl.MultipartFormUpload: boolean ended> = 1;
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.vertx.core.streams.impl.InboundBuffer pending>;
v = <io.vertx.core.streams.impl.InboundBuffer: java.lang.Object END_SENTINEL>;
virtualinvoke v.<io.vertx.core.streams.impl.InboundBuffer: boolean write(java.lang.Object)>(v);
goto label;
label:
return;
catch java.lang.Exception from label to label with label;
}
public io.vertx.core.MultiMap headers()
{
io.vertx.core.http.impl.headers.HeadersAdaptor v;
io.netty.handler.codec.http.HttpHeaders v;
io.netty.handler.codec.http.DefaultFullHttpRequest v;
io.vertx.ext.web.client.impl.MultipartFormUpload v;
v := @this: io.vertx.ext.web.client.impl.MultipartFormUpload;
v = new io.vertx.core.http.impl.headers.HeadersAdaptor;
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.handler.codec.http.DefaultFullHttpRequest request>;
v = virtualinvoke v.<io.netty.handler.codec.http.DefaultFullHttpRequest: io.netty.handler.codec.http.HttpHeaders headers()>();
specialinvoke v.<io.vertx.core.http.impl.headers.HeadersAdaptor: void <init>(io.netty.handler.codec.http.HttpHeaders)>(v);
return v;
}
public synchronized io.vertx.ext.web.client.impl.MultipartFormUpload exceptionHandler(io.vertx.core.Handler)
{
io.vertx.core.Handler v;
io.vertx.ext.web.client.impl.MultipartFormUpload v;
v := @this: io.vertx.ext.web.client.impl.MultipartFormUpload;
v := @parameter: io.vertx.core.Handler;
v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.vertx.core.Handler exceptionHandler> = v;
return v;
}
public synchronized io.vertx.ext.web.client.impl.MultipartFormUpload handler(io.vertx.core.Handler)
{
io.vertx.core.Handler v;
io.vertx.ext.web.client.impl.MultipartFormUpload v;
v := @this: io.vertx.ext.web.client.impl.MultipartFormUpload;
v := @parameter: io.vertx.core.Handler;
v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.vertx.core.Handler dataHandler> = v;
return v;
}
public synchronized io.vertx.ext.web.client.impl.MultipartFormUpload pause()
{
io.vertx.core.streams.impl.InboundBuffer v;
io.vertx.ext.web.client.impl.MultipartFormUpload v;
v := @this: io.vertx.ext.web.client.impl.MultipartFormUpload;
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.vertx.core.streams.impl.InboundBuffer pending>;
virtualinvoke v.<io.vertx.core.streams.impl.InboundBuffer: io.vertx.core.streams.impl.InboundBuffer pause()>();
return v;
}
public io.vertx.core.streams.ReadStream fetch(long)
{
long v;
io.vertx.core.streams.impl.InboundBuffer v;
io.vertx.ext.web.client.impl.MultipartFormUpload v;
v := @this: io.vertx.ext.web.client.impl.MultipartFormUpload;
v := @parameter: long;
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.vertx.core.streams.impl.InboundBuffer pending>;
virtualinvoke v.<io.vertx.core.streams.impl.InboundBuffer: boolean fetch(long)>(v);
return v;
}
public synchronized io.vertx.ext.web.client.impl.MultipartFormUpload resume()
{
io.vertx.core.streams.impl.InboundBuffer v;
io.vertx.ext.web.client.impl.MultipartFormUpload v;
v := @this: io.vertx.ext.web.client.impl.MultipartFormUpload;
v = v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.vertx.core.streams.impl.InboundBuffer pending>;
virtualinvoke v.<io.vertx.core.streams.impl.InboundBuffer: boolean resume()>();
return v;
}
public synchronized io.vertx.ext.web.client.impl.MultipartFormUpload endHandler(io.vertx.core.Handler)
{
io.vertx.core.Handler v;
io.vertx.ext.web.client.impl.MultipartFormUpload v;
v := @this: io.vertx.ext.web.client.impl.MultipartFormUpload;
v := @parameter: io.vertx.core.Handler;
v.<io.vertx.ext.web.client.impl.MultipartFormUpload: io.vertx.core.Handler endHandler> = v;
return v;
}
static void <clinit>()
{
io.netty.buffer.UnpooledByteBufAllocator v;
v = new io.netty.buffer.UnpooledByteBufAllocator;
specialinvoke v.<io.netty.buffer.UnpooledByteBufAllocator: void <init>(boolean)>(0);
<io.vertx.ext.web.client.impl.MultipartFormUpload: io.netty.buffer.UnpooledByteBufAllocator ALLOC> = v;
return;
}
}