public class oadd.io.netty.handler.codec.compression.LzmaFrameEncoder extends oadd.io.netty.handler.codec.MessageToByteEncoder
{
private static final oadd.io.netty.util.internal.logging.InternalLogger logger;
private static final int MEDIUM_DICTIONARY_SIZE;
private static final int MIN_FAST_BYTES;
private static final int MEDIUM_FAST_BYTES;
private static final int MAX_FAST_BYTES;
private static final int DEFAULT_MATCH_FINDER;
private static final int DEFAULT_LC;
private static final int DEFAULT_LP;
private static final int DEFAULT_PB;
private final lzma.sdk.lzma.Encoder encoder;
private final byte properties;
private final int littleEndianDictionarySize;
private static boolean warningLogged;
public void <init>()
{
oadd.io.netty.handler.codec.compression.LzmaFrameEncoder v;
v := @this: oadd.io.netty.handler.codec.compression.LzmaFrameEncoder;
specialinvoke v.<oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: void <init>(int)>(65536);
return;
}
public void <init>(int, int, int)
{
int v, v, v;
oadd.io.netty.handler.codec.compression.LzmaFrameEncoder v;
v := @this: oadd.io.netty.handler.codec.compression.LzmaFrameEncoder;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
specialinvoke v.<oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: void <init>(int,int,int,int)>(v, v, v, 65536);
return;
}
public void <init>(int)
{
int v;
oadd.io.netty.handler.codec.compression.LzmaFrameEncoder v;
v := @this: oadd.io.netty.handler.codec.compression.LzmaFrameEncoder;
v := @parameter: int;
specialinvoke v.<oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: void <init>(int,int,int,int)>(3, 0, 2, v);
return;
}
public void <init>(int, int, int, int)
{
int v, v, v, v;
oadd.io.netty.handler.codec.compression.LzmaFrameEncoder v;
v := @this: oadd.io.netty.handler.codec.compression.LzmaFrameEncoder;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
specialinvoke v.<oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: void <init>(int,int,int,int,boolean,int)>(v, v, v, v, 0, 32);
return;
}
public void <init>(int, int, int, int, boolean, int)
{
java.lang.Integer v, v, v;
oadd.io.netty.util.internal.logging.InternalLogger v;
boolean v, v;
java.lang.Object[] v;
lzma.sdk.lzma.Encoder v, v, v, v, v, v;
int v, v, v, v, v, v, v, v, v, v, v;
java.lang.String v, v, v, v, v;
oadd.io.netty.handler.codec.compression.LzmaFrameEncoder v;
java.lang.IllegalArgumentException v, v, v, v, v;
v := @this: oadd.io.netty.handler.codec.compression.LzmaFrameEncoder;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v := @parameter: int;
v := @parameter: boolean;
v := @parameter: int;
specialinvoke v.<oadd.io.netty.handler.codec.MessageToByteEncoder: void <init>()>();
if v < 0 goto label;
if v <= 8 goto label;
label:
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(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[])>("lc: \u (expected: 0-8)");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
if v < 0 goto label;
if v <= 4 goto label;
label:
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(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[])>("lp: \u (expected: 0-4)");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
if v < 0 goto label;
if v <= 4 goto label;
label:
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(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[])>("pb: \u (expected: 0-4)");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = v + v;
if v <= 4 goto label;
v = <oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: boolean warningLogged>;
if v != 0 goto label;
v = <oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: oadd.io.netty.util.internal.logging.InternalLogger logger>;
interfaceinvoke v.<oadd.io.netty.util.internal.logging.InternalLogger: void warn(java.lang.String)>("The latest versions of LZMA libraries (for example, XZ Utils) has an additional requirement: lc + lp <= 4. Data which don\'t follow this requirement cannot be decompressed with this libraries.");
<oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: boolean warningLogged> = 1;
label:
if v >= 0 goto label;
v = new java.lang.IllegalArgumentException;
v = dynamicinvoke "makeConcatWithConstants" <java.lang.String (int)>(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[])>("dictionarySize: \u (expected: 0+)");
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
if v < 5 goto label;
if v <= 273 goto label;
label:
v = new java.lang.IllegalArgumentException;
v = newarray (java.lang.Object)[3];
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(v);
v[0] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(5);
v[1] = v;
v = staticinvoke <java.lang.Integer: java.lang.Integer valueOf(int)>(273);
v[2] = v;
v = staticinvoke <java.lang.String: java.lang.String format(java.lang.String,java.lang.Object[])>("numFastBytes: %d (expected: %d-%d)", v);
specialinvoke v.<java.lang.IllegalArgumentException: void <init>(java.lang.String)>(v);
throw v;
label:
v = new lzma.sdk.lzma.Encoder;
specialinvoke v.<lzma.sdk.lzma.Encoder: void <init>()>();
v.<oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: lzma.sdk.lzma.Encoder encoder> = v;
v = v.<oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: lzma.sdk.lzma.Encoder encoder>;
virtualinvoke v.<lzma.sdk.lzma.Encoder: boolean setDictionarySize(int)>(v);
v = v.<oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: lzma.sdk.lzma.Encoder encoder>;
virtualinvoke v.<lzma.sdk.lzma.Encoder: void setEndMarkerMode(boolean)>(v);
v = v.<oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: lzma.sdk.lzma.Encoder encoder>;
virtualinvoke v.<lzma.sdk.lzma.Encoder: boolean setMatchFinder(int)>(1);
v = v.<oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: lzma.sdk.lzma.Encoder encoder>;
virtualinvoke v.<lzma.sdk.lzma.Encoder: boolean setNumFastBytes(int)>(v);
v = v.<oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: lzma.sdk.lzma.Encoder encoder>;
virtualinvoke v.<lzma.sdk.lzma.Encoder: boolean setLcLpPb(int,int,int)>(v, v, v);
v = v * 5;
v = v + v;
v = v * 9;
v = v + v;
v.<oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: byte properties> = v;
v = staticinvoke <java.lang.Integer: int reverseBytes(int)>(v);
v.<oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: int littleEndianDictionarySize> = v;
return;
}
protected void encode(oadd.io.netty.channel.ChannelHandlerContext, oadd.io.netty.buffer.ByteBuf, oadd.io.netty.buffer.ByteBuf) throws java.lang.Exception
{
java.lang.Throwable v;
oadd.io.netty.buffer.ByteBufInputStream v, v;
long v;
lzma.sdk.lzma.Encoder v;
oadd.io.netty.buffer.ByteBufOutputStream v, v;
byte v;
int v, v;
oadd.io.netty.channel.ChannelHandlerContext v;
oadd.io.netty.buffer.ByteBuf v, v;
oadd.io.netty.handler.codec.compression.LzmaFrameEncoder v;
v := @this: oadd.io.netty.handler.codec.compression.LzmaFrameEncoder;
v := @parameter: oadd.io.netty.channel.ChannelHandlerContext;
v := @parameter: oadd.io.netty.buffer.ByteBuf;
v := @parameter: oadd.io.netty.buffer.ByteBuf;
v = virtualinvoke v.<oadd.io.netty.buffer.ByteBuf: int readableBytes()>();
v = null;
v = null;
label:
v = new oadd.io.netty.buffer.ByteBufInputStream;
specialinvoke v.<oadd.io.netty.buffer.ByteBufInputStream: void <init>(oadd.io.netty.buffer.ByteBuf)>(v);
v = v;
v = new oadd.io.netty.buffer.ByteBufOutputStream;
specialinvoke v.<oadd.io.netty.buffer.ByteBufOutputStream: void <init>(oadd.io.netty.buffer.ByteBuf)>(v);
v = v;
v = v.<oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: byte properties>;
virtualinvoke v.<oadd.io.netty.buffer.ByteBufOutputStream: void writeByte(int)>(v);
v = v.<oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: int littleEndianDictionarySize>;
virtualinvoke v.<oadd.io.netty.buffer.ByteBufOutputStream: void writeInt(int)>(v);
v = staticinvoke <java.lang.Long: long reverseBytes(long)>(v);
virtualinvoke v.<oadd.io.netty.buffer.ByteBufOutputStream: void writeLong(long)>(v);
v = v.<oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: lzma.sdk.lzma.Encoder encoder>;
virtualinvoke v.<lzma.sdk.lzma.Encoder: void code(java.io.InputStream,java.io.OutputStream,long,long,lzma.sdk.ICodeProgress)>(v, v, -1L, -1L, null);
label:
virtualinvoke v.<java.io.InputStream: void close()>();
virtualinvoke v.<oadd.io.netty.buffer.ByteBufOutputStream: void close()>();
goto label;
label:
v := @caughtexception;
if v == null goto label;
virtualinvoke v.<java.io.InputStream: void close()>();
label:
if v == null goto label;
virtualinvoke v.<oadd.io.netty.buffer.ByteBufOutputStream: void close()>();
label:
throw v;
label:
return;
catch java.lang.Throwable from label to label with label;
}
protected oadd.io.netty.buffer.ByteBuf allocateBuffer(oadd.io.netty.channel.ChannelHandlerContext, oadd.io.netty.buffer.ByteBuf, boolean) throws java.lang.Exception
{
int v, v;
oadd.io.netty.buffer.ByteBufAllocator v;
oadd.io.netty.channel.ChannelHandlerContext v;
oadd.io.netty.buffer.ByteBuf v, v;
oadd.io.netty.handler.codec.compression.LzmaFrameEncoder v;
boolean v;
v := @this: oadd.io.netty.handler.codec.compression.LzmaFrameEncoder;
v := @parameter: oadd.io.netty.channel.ChannelHandlerContext;
v := @parameter: oadd.io.netty.buffer.ByteBuf;
v := @parameter: boolean;
v = virtualinvoke v.<oadd.io.netty.buffer.ByteBuf: int readableBytes()>();
v = staticinvoke <oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: int maxOutputBufferLength(int)>(v);
v = interfaceinvoke v.<oadd.io.netty.channel.ChannelHandlerContext: oadd.io.netty.buffer.ByteBufAllocator alloc()>();
v = interfaceinvoke v.<oadd.io.netty.buffer.ByteBufAllocator: oadd.io.netty.buffer.ByteBuf ioBuffer(int)>(v);
return v;
}
private static int maxOutputBufferLength(int)
{
int v, v;
double v, v;
v := @parameter: int;
if v >= 200 goto label;
v = 1.5;
goto label;
label:
if v >= 500 goto label;
v = 1.2;
goto label;
label:
if v >= 1000 goto label;
v = 1.1;
goto label;
label:
if v >= 10000 goto label;
v = 1.05;
goto label;
label:
v = 1.02;
label:
v = v * v;
v = 13 + v;
return v;
}
static void <clinit>()
{
oadd.io.netty.util.internal.logging.InternalLogger v;
v = staticinvoke <oadd.io.netty.util.internal.logging.InternalLoggerFactory: oadd.io.netty.util.internal.logging.InternalLogger getInstance(java.lang.Class)>(class "Loadd/io/netty/handler/codec/compression/LzmaFrameEncoder;");
<oadd.io.netty.handler.codec.compression.LzmaFrameEncoder: oadd.io.netty.util.internal.logging.InternalLogger logger> = v;
return;
}
}