ByteSink.java
2.63 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
package com.google.common.io;
import com.google.common.base.Preconditions;
import java.io.BufferedOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.nio.charset.Charset;
public abstract class ByteSink
{
public CharSink asCharSink(Charset paramCharset)
{
return new a(paramCharset, (byte)0);
}
public OutputStream openBufferedStream()
throws IOException
{
OutputStream localOutputStream = openStream();
if ((localOutputStream instanceof BufferedOutputStream)) {
return (BufferedOutputStream)localOutputStream;
}
return new BufferedOutputStream(localOutputStream);
}
public abstract OutputStream openStream()
throws IOException;
public void write(byte[] paramArrayOfByte)
throws IOException
{
Preconditions.checkNotNull(paramArrayOfByte);
Closer localCloser = Closer.create();
try
{
OutputStream localOutputStream = (OutputStream)localCloser.register(openStream());
localOutputStream.write(paramArrayOfByte);
localOutputStream.flush();
return;
}
catch (Throwable paramArrayOfByte)
{
throw localCloser.rethrow(paramArrayOfByte);
}
finally
{
localCloser.close();
}
}
public long writeFrom(InputStream paramInputStream)
throws IOException
{
Preconditions.checkNotNull(paramInputStream);
Closer localCloser = Closer.create();
try
{
OutputStream localOutputStream = (OutputStream)localCloser.register(openStream());
long l = ByteStreams.copy(paramInputStream, localOutputStream);
localOutputStream.flush();
return l;
}
catch (Throwable paramInputStream)
{
throw localCloser.rethrow(paramInputStream);
}
finally
{
localCloser.close();
}
}
final class a
extends CharSink
{
private final Charset b;
private a(Charset paramCharset)
{
this.b = ((Charset)Preconditions.checkNotNull(paramCharset));
}
public final Writer openStream()
throws IOException
{
return new OutputStreamWriter(ByteSink.this.openStream(), this.b);
}
public final String toString()
{
String str1 = String.valueOf(String.valueOf(ByteSink.this.toString()));
String str2 = String.valueOf(String.valueOf(this.b));
return str1.length() + 13 + str2.length() + str1 + ".asCharSink(" + str2 + ")";
}
}
}
/* Location: /home/merong/decompile/hackery-dex2jar.jar!/com/google/common/io/ByteSink.class
* Java compiler version: 6 (50.0)
* JD-Core Version: 0.7.1
*/