public abstract class oadd.com.google.common.io.ByteSource extends java.lang.Object
{
protected void <init>()
{
oadd.com.google.common.io.ByteSource v;
v := @this: oadd.com.google.common.io.ByteSource;
specialinvoke v.<java.lang.Object: void <init>()>();
return;
}
public oadd.com.google.common.io.CharSource asCharSource(java.nio.charset.Charset)
{
oadd.com.google.common.io.ByteSource$AsCharSource v;
java.nio.charset.Charset v;
oadd.com.google.common.io.ByteSource v;
v := @this: oadd.com.google.common.io.ByteSource;
v := @parameter: java.nio.charset.Charset;
v = new oadd.com.google.common.io.ByteSource$AsCharSource;
specialinvoke v.<oadd.com.google.common.io.ByteSource$AsCharSource: void <init>(oadd.com.google.common.io.ByteSource,java.nio.charset.Charset)>(v, v);
return v;
}
public abstract java.io.InputStream openStream() throws java.io.IOException;
public java.io.InputStream openBufferedStream() throws java.io.IOException
{
oadd.com.google.common.io.ByteSource v;
boolean v;
java.io.InputStream v;
v := @this: oadd.com.google.common.io.ByteSource;
v = virtualinvoke v.<oadd.com.google.common.io.ByteSource: java.io.InputStream openStream()>();
v = v instanceof java.io.BufferedInputStream;
if v != 0 goto label;
v = new java.io.BufferedInputStream;
specialinvoke v.<java.io.BufferedInputStream: void <init>(java.io.InputStream)>(v);
label:
return v;
}
public oadd.com.google.common.io.ByteSource slice(long, long)
{
oadd.com.google.common.io.ByteSource v;
long v, v;
oadd.com.google.common.io.ByteSource$SlicedByteSource v;
v := @this: oadd.com.google.common.io.ByteSource;
v := @parameter: long;
v := @parameter: long;
v = new oadd.com.google.common.io.ByteSource$SlicedByteSource;
specialinvoke v.<oadd.com.google.common.io.ByteSource$SlicedByteSource: void <init>(oadd.com.google.common.io.ByteSource,long,long)>(v, v, v);
return v;
}
public boolean isEmpty() throws java.io.IOException
{
java.lang.Throwable v;
oadd.com.google.common.io.Closer v;
oadd.com.google.common.io.ByteSource v;
long v;
java.lang.RuntimeException v;
byte v;
java.io.Closeable v;
int v, v;
java.lang.Object v;
oadd.com.google.common.base.Optional v;
boolean v, v, v;
java.io.InputStream v;
v := @this: oadd.com.google.common.io.ByteSource;
v = virtualinvoke v.<oadd.com.google.common.io.ByteSource: oadd.com.google.common.base.Optional sizeIfKnown()>();
v = virtualinvoke v.<oadd.com.google.common.base.Optional: boolean isPresent()>();
if v == 0 goto label;
v = virtualinvoke v.<oadd.com.google.common.base.Optional: java.lang.Object get()>();
v = virtualinvoke v.<java.lang.Long: long longValue()>();
v = v cmp 0L;
if v != 0 goto label;
v = 1;
goto label;
label:
v = 0;
label:
return v;
label:
v = staticinvoke <oadd.com.google.common.io.Closer: oadd.com.google.common.io.Closer create()>();
label:
v = virtualinvoke v.<oadd.com.google.common.io.ByteSource: java.io.InputStream openStream()>();
v = virtualinvoke v.<oadd.com.google.common.io.Closer: java.io.Closeable register(java.io.Closeable)>(v);
v = virtualinvoke v.<java.io.InputStream: int read()>();
v = (int) -1;
if v != v goto label;
v = 1;
goto label;
label:
v = 0;
label:
virtualinvoke v.<oadd.com.google.common.io.Closer: void close()>();
return v;
label:
v := @caughtexception;
v = virtualinvoke v.<oadd.com.google.common.io.Closer: java.lang.RuntimeException rethrow(java.lang.Throwable)>(v);
throw v;
catch java.lang.Throwable from label to label with label;
}
public oadd.com.google.common.base.Optional sizeIfKnown()
{
oadd.com.google.common.io.ByteSource v;
oadd.com.google.common.base.Optional v;
v := @this: oadd.com.google.common.io.ByteSource;
v = staticinvoke <oadd.com.google.common.base.Optional: oadd.com.google.common.base.Optional absent()>();
return v;
}
public long size() throws java.io.IOException
{
java.lang.Throwable v, v;
oadd.com.google.common.io.Closer v, v;
oadd.com.google.common.io.ByteSource v;
long v, v, v;
oadd.com.google.common.base.Optional v;
boolean v;
java.io.IOException v;
java.lang.RuntimeException v;
java.io.Closeable v, v;
java.lang.Object v;
java.io.InputStream v, v;
v := @this: oadd.com.google.common.io.ByteSource;
v = virtualinvoke v.<oadd.com.google.common.io.ByteSource: oadd.com.google.common.base.Optional sizeIfKnown()>();
v = virtualinvoke v.<oadd.com.google.common.base.Optional: boolean isPresent()>();
if v == 0 goto label;
v = virtualinvoke v.<oadd.com.google.common.base.Optional: java.lang.Object get()>();
v = virtualinvoke v.<java.lang.Long: long longValue()>();
return v;
label:
v = staticinvoke <oadd.com.google.common.io.Closer: oadd.com.google.common.io.Closer create()>();
label:
v = virtualinvoke v.<oadd.com.google.common.io.ByteSource: java.io.InputStream openStream()>();
v = virtualinvoke v.<oadd.com.google.common.io.Closer: java.io.Closeable register(java.io.Closeable)>(v);
v = specialinvoke v.<oadd.com.google.common.io.ByteSource: long countBySkipping(java.io.InputStream)>(v);
label:
virtualinvoke v.<oadd.com.google.common.io.Closer: void close()>();
return v;
label:
v := @caughtexception;
virtualinvoke v.<oadd.com.google.common.io.Closer: void close()>();
goto label;
label:
v := @caughtexception;
virtualinvoke v.<oadd.com.google.common.io.Closer: void close()>();
throw v;
label:
v = staticinvoke <oadd.com.google.common.io.Closer: oadd.com.google.common.io.Closer create()>();
label:
v = virtualinvoke v.<oadd.com.google.common.io.ByteSource: java.io.InputStream openStream()>();
v = virtualinvoke v.<oadd.com.google.common.io.Closer: java.io.Closeable register(java.io.Closeable)>(v);
v = staticinvoke <oadd.com.google.common.io.ByteStreams: long exhaust(java.io.InputStream)>(v);
label:
virtualinvoke v.<oadd.com.google.common.io.Closer: void close()>();
return v;
label:
v := @caughtexception;
v = virtualinvoke v.<oadd.com.google.common.io.Closer: java.lang.RuntimeException rethrow(java.lang.Throwable)>(v);
throw v;
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 long countBySkipping(java.io.InputStream) throws java.io.IOException
{
byte v;
oadd.com.google.common.io.ByteSource v;
long v, v;
java.io.InputStream v;
v := @this: oadd.com.google.common.io.ByteSource;
v := @parameter: java.io.InputStream;
v = 0L;
label:
v = staticinvoke <oadd.com.google.common.io.ByteStreams: long skipUpTo(java.io.InputStream,long)>(v, 2147483647L);
v = v cmp 0L;
if v <= 0 goto label;
v = v + v;
goto label;
label:
return v;
}
public long copyTo(java.io.OutputStream) throws java.io.IOException
{
java.io.OutputStream v;
java.lang.Throwable v;
oadd.com.google.common.io.Closer v;
oadd.com.google.common.io.ByteSource v;
long v;
java.lang.RuntimeException v;
java.io.Closeable v;
java.io.InputStream v;
v := @this: oadd.com.google.common.io.ByteSource;
v := @parameter: java.io.OutputStream;
staticinvoke <oadd.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = staticinvoke <oadd.com.google.common.io.Closer: oadd.com.google.common.io.Closer create()>();
label:
v = virtualinvoke v.<oadd.com.google.common.io.ByteSource: java.io.InputStream openStream()>();
v = virtualinvoke v.<oadd.com.google.common.io.Closer: java.io.Closeable register(java.io.Closeable)>(v);
v = staticinvoke <oadd.com.google.common.io.ByteStreams: long copy(java.io.InputStream,java.io.OutputStream)>(v, v);
label:
virtualinvoke v.<oadd.com.google.common.io.Closer: void close()>();
return v;
label:
v := @caughtexception;
v = virtualinvoke v.<oadd.com.google.common.io.Closer: java.lang.RuntimeException rethrow(java.lang.Throwable)>(v);
throw v;
catch java.lang.Throwable from label to label with label;
}
public long copyTo(oadd.com.google.common.io.ByteSink) throws java.io.IOException
{
java.io.OutputStream v;
java.lang.Throwable v;
oadd.com.google.common.io.Closer v;
oadd.com.google.common.io.ByteSource v;
oadd.com.google.common.io.ByteSink v;
long v;
java.lang.RuntimeException v;
java.io.Closeable v, v;
java.io.InputStream v;
v := @this: oadd.com.google.common.io.ByteSource;
v := @parameter: oadd.com.google.common.io.ByteSink;
staticinvoke <oadd.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = staticinvoke <oadd.com.google.common.io.Closer: oadd.com.google.common.io.Closer create()>();
label:
v = virtualinvoke v.<oadd.com.google.common.io.ByteSource: java.io.InputStream openStream()>();
v = virtualinvoke v.<oadd.com.google.common.io.Closer: java.io.Closeable register(java.io.Closeable)>(v);
v = virtualinvoke v.<oadd.com.google.common.io.ByteSink: java.io.OutputStream openStream()>();
v = virtualinvoke v.<oadd.com.google.common.io.Closer: java.io.Closeable register(java.io.Closeable)>(v);
v = staticinvoke <oadd.com.google.common.io.ByteStreams: long copy(java.io.InputStream,java.io.OutputStream)>(v, v);
label:
virtualinvoke v.<oadd.com.google.common.io.Closer: void close()>();
return v;
label:
v := @caughtexception;
v = virtualinvoke v.<oadd.com.google.common.io.Closer: java.lang.RuntimeException rethrow(java.lang.Throwable)>(v);
throw v;
catch java.lang.Throwable from label to label with label;
}
public byte[] read() throws java.io.IOException
{
java.lang.Throwable v;
byte[] v;
oadd.com.google.common.io.Closer v;
oadd.com.google.common.io.ByteSource v;
long v;
java.lang.RuntimeException v;
java.io.Closeable v;
java.lang.Object v;
oadd.com.google.common.base.Optional v;
boolean v;
java.io.InputStream v;
v := @this: oadd.com.google.common.io.ByteSource;
v = staticinvoke <oadd.com.google.common.io.Closer: oadd.com.google.common.io.Closer create()>();
label:
v = virtualinvoke v.<oadd.com.google.common.io.ByteSource: java.io.InputStream openStream()>();
v = virtualinvoke v.<oadd.com.google.common.io.Closer: java.io.Closeable register(java.io.Closeable)>(v);
v = virtualinvoke v.<oadd.com.google.common.io.ByteSource: oadd.com.google.common.base.Optional sizeIfKnown()>();
v = virtualinvoke v.<oadd.com.google.common.base.Optional: boolean isPresent()>();
if v == 0 goto label;
v = virtualinvoke v.<oadd.com.google.common.base.Optional: java.lang.Object get()>();
v = virtualinvoke v.<java.lang.Long: long longValue()>();
v = staticinvoke <oadd.com.google.common.io.ByteStreams: byte[] toByteArray(java.io.InputStream,long)>(v, v);
goto label;
label:
v = staticinvoke <oadd.com.google.common.io.ByteStreams: byte[] toByteArray(java.io.InputStream)>(v);
label:
virtualinvoke v.<oadd.com.google.common.io.Closer: void close()>();
return v;
label:
v := @caughtexception;
v = virtualinvoke v.<oadd.com.google.common.io.Closer: java.lang.RuntimeException rethrow(java.lang.Throwable)>(v);
throw v;
catch java.lang.Throwable from label to label with label;
}
public java.lang.Object read(oadd.com.google.common.io.ByteProcessor) throws java.io.IOException
{
java.lang.Throwable v;
oadd.com.google.common.io.Closer v;
oadd.com.google.common.io.ByteSource v;
java.lang.RuntimeException v;
java.io.Closeable v;
java.lang.Object v;
oadd.com.google.common.io.ByteProcessor v;
java.io.InputStream v;
v := @this: oadd.com.google.common.io.ByteSource;
v := @parameter: oadd.com.google.common.io.ByteProcessor;
staticinvoke <oadd.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = staticinvoke <oadd.com.google.common.io.Closer: oadd.com.google.common.io.Closer create()>();
label:
v = virtualinvoke v.<oadd.com.google.common.io.ByteSource: java.io.InputStream openStream()>();
v = virtualinvoke v.<oadd.com.google.common.io.Closer: java.io.Closeable register(java.io.Closeable)>(v);
v = staticinvoke <oadd.com.google.common.io.ByteStreams: java.lang.Object readBytes(java.io.InputStream,oadd.com.google.common.io.ByteProcessor)>(v, v);
label:
virtualinvoke v.<oadd.com.google.common.io.Closer: void close()>();
return v;
label:
v := @caughtexception;
v = virtualinvoke v.<oadd.com.google.common.io.Closer: java.lang.RuntimeException rethrow(java.lang.Throwable)>(v);
throw v;
catch java.lang.Throwable from label to label with label;
}
public oadd.com.google.common.hash.HashCode hash(oadd.com.google.common.hash.HashFunction) throws java.io.IOException
{
java.io.OutputStream v;
oadd.com.google.common.io.ByteSource v;
oadd.com.google.common.hash.Hasher v;
oadd.com.google.common.hash.HashCode v;
oadd.com.google.common.hash.HashFunction v;
v := @this: oadd.com.google.common.io.ByteSource;
v := @parameter: oadd.com.google.common.hash.HashFunction;
v = interfaceinvoke v.<oadd.com.google.common.hash.HashFunction: oadd.com.google.common.hash.Hasher newHasher()>();
v = staticinvoke <oadd.com.google.common.hash.Funnels: java.io.OutputStream asOutputStream(oadd.com.google.common.hash.PrimitiveSink)>(v);
virtualinvoke v.<oadd.com.google.common.io.ByteSource: long copyTo(java.io.OutputStream)>(v);
v = interfaceinvoke v.<oadd.com.google.common.hash.Hasher: oadd.com.google.common.hash.HashCode hash()>();
return v;
}
public boolean contentEquals(oadd.com.google.common.io.ByteSource) throws java.io.IOException
{
java.lang.Throwable v;
byte[] v, v;
oadd.com.google.common.io.Closer v;
oadd.com.google.common.io.ByteSource v, v;
int v, v, v, v, v;
boolean v;
java.lang.RuntimeException v;
java.io.Closeable v, v;
java.io.InputStream v, v;
v := @this: oadd.com.google.common.io.ByteSource;
v := @parameter: oadd.com.google.common.io.ByteSource;
staticinvoke <oadd.com.google.common.base.Preconditions: java.lang.Object checkNotNull(java.lang.Object)>(v);
v = staticinvoke <oadd.com.google.common.io.ByteStreams: byte[] createBuffer()>();
v = staticinvoke <oadd.com.google.common.io.ByteStreams: byte[] createBuffer()>();
v = staticinvoke <oadd.com.google.common.io.Closer: oadd.com.google.common.io.Closer create()>();
label:
v = virtualinvoke v.<oadd.com.google.common.io.ByteSource: java.io.InputStream openStream()>();
v = virtualinvoke v.<oadd.com.google.common.io.Closer: java.io.Closeable register(java.io.Closeable)>(v);
v = virtualinvoke v.<oadd.com.google.common.io.ByteSource: java.io.InputStream openStream()>();
v = virtualinvoke v.<oadd.com.google.common.io.Closer: java.io.Closeable register(java.io.Closeable)>(v);
label:
v = lengthof v;
v = staticinvoke <oadd.com.google.common.io.ByteStreams: int read(java.io.InputStream,byte[],int,int)>(v, v, 0, v);
v = lengthof v;
v = staticinvoke <oadd.com.google.common.io.ByteStreams: int read(java.io.InputStream,byte[],int,int)>(v, v, 0, v);
if v != v goto label;
v = staticinvoke <java.util.Arrays: boolean equals(byte[],byte[])>(v, v);
if v != 0 goto label;
label:
virtualinvoke v.<oadd.com.google.common.io.Closer: void close()>();
return 0;
label:
v = lengthof v;
if v == v goto label;
label:
virtualinvoke v.<oadd.com.google.common.io.Closer: void close()>();
return 1;
label:
v := @caughtexception;
v = virtualinvoke v.<oadd.com.google.common.io.Closer: java.lang.RuntimeException rethrow(java.lang.Throwable)>(v);
throw v;
catch java.lang.Throwable from label to label with label;
catch java.lang.Throwable from label to label with label;
}
public static oadd.com.google.common.io.ByteSource concat(java.lang.Iterable)
{
java.lang.Iterable v;
oadd.com.google.common.io.ByteSource$ConcatenatedByteSource v;
v := @parameter: java.lang.Iterable;
v = new oadd.com.google.common.io.ByteSource$ConcatenatedByteSource;
specialinvoke v.<oadd.com.google.common.io.ByteSource$ConcatenatedByteSource: void <init>(java.lang.Iterable)>(v);
return v;
}
public static oadd.com.google.common.io.ByteSource concat(java.util.Iterator)
{
oadd.com.google.common.collect.ImmutableList v;
java.util.Iterator v;
oadd.com.google.common.io.ByteSource v;
v := @parameter: java.util.Iterator;
v = staticinvoke <oadd.com.google.common.collect.ImmutableList: oadd.com.google.common.collect.ImmutableList copyOf(java.util.Iterator)>(v);
v = staticinvoke <oadd.com.google.common.io.ByteSource: oadd.com.google.common.io.ByteSource concat(java.lang.Iterable)>(v);
return v;
}
public static transient oadd.com.google.common.io.ByteSource concat(oadd.com.google.common.io.ByteSource[])
{
oadd.com.google.common.collect.ImmutableList v;
oadd.com.google.common.io.ByteSource[] v;
oadd.com.google.common.io.ByteSource v;
v := @parameter: oadd.com.google.common.io.ByteSource[];
v = staticinvoke <oadd.com.google.common.collect.ImmutableList: oadd.com.google.common.collect.ImmutableList copyOf(java.lang.Object[])>(v);
v = staticinvoke <oadd.com.google.common.io.ByteSource: oadd.com.google.common.io.ByteSource concat(java.lang.Iterable)>(v);
return v;
}
public static oadd.com.google.common.io.ByteSource wrap(byte[])
{
oadd.com.google.common.io.ByteSource$ByteArrayByteSource v;
byte[] v;
v := @parameter: byte[];
v = new oadd.com.google.common.io.ByteSource$ByteArrayByteSource;
specialinvoke v.<oadd.com.google.common.io.ByteSource$ByteArrayByteSource: void <init>(byte[])>(v);
return v;
}
public static oadd.com.google.common.io.ByteSource empty()
{
oadd.com.google.common.io.ByteSource$EmptyByteSource v;
v = <oadd.com.google.common.io.ByteSource$EmptyByteSource: oadd.com.google.common.io.ByteSource$EmptyByteSource INSTANCE>;
return v;
}
}