source: proiecte/HadoopJUnit/hadoop-0.20.1/src/core/org/apache/hadoop/io/compress/DefaultCodec.java @ 120

Last change on this file since 120 was 120, checked in by (none), 14 years ago

Added the mail files for the Hadoop JUNit Project

  • Property svn:executable set to *
File size: 2.8 KB
Line 
1/*
2 * Licensed to the Apache Software Foundation (ASF) under one
3 * or more contributor license agreements.  See the NOTICE file
4 * distributed with this work for additional information
5 * regarding copyright ownership.  The ASF licenses this file
6 * to you under the Apache License, Version 2.0 (the
7 * "License"); you may not use this file except in compliance
8 * with the License.  You may obtain a copy of the License at
9 *
10 *     http://www.apache.org/licenses/LICENSE-2.0
11 *
12 * Unless required by applicable law or agreed to in writing, software
13 * distributed under the License is distributed on an "AS IS" BASIS,
14 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 * See the License for the specific language governing permissions and
16 * limitations under the License.
17 */
18
19package org.apache.hadoop.io.compress;
20
21import java.io.IOException;
22import java.io.OutputStream;
23import java.io.InputStream;
24
25import org.apache.hadoop.conf.Configurable;
26import org.apache.hadoop.conf.Configuration;
27import org.apache.hadoop.io.compress.zlib.*;
28
29public class DefaultCodec implements Configurable, CompressionCodec {
30 
31  Configuration conf;
32
33  public void setConf(Configuration conf) {
34    this.conf = conf;
35  }
36 
37  public Configuration getConf() {
38    return conf;
39  }
40 
41  public CompressionOutputStream createOutputStream(OutputStream out) 
42  throws IOException {
43    return new CompressorStream(out, createCompressor(), 
44                                conf.getInt("io.file.buffer.size", 4*1024));
45  }
46
47  public CompressionOutputStream createOutputStream(OutputStream out, 
48                                                    Compressor compressor) 
49  throws IOException {
50    return new CompressorStream(out, compressor, 
51                                conf.getInt("io.file.buffer.size", 4*1024));
52  }
53
54  public Class<? extends Compressor> getCompressorType() {
55    return ZlibFactory.getZlibCompressorType(conf);
56  }
57
58  public Compressor createCompressor() {
59    return ZlibFactory.getZlibCompressor(conf);
60  }
61
62  public CompressionInputStream createInputStream(InputStream in) 
63  throws IOException {
64    return new DecompressorStream(in, createDecompressor(),
65                                  conf.getInt("io.file.buffer.size", 4*1024));
66  }
67
68  public CompressionInputStream createInputStream(InputStream in, 
69                                                  Decompressor decompressor) 
70  throws IOException {
71    return new DecompressorStream(in, decompressor, 
72                                  conf.getInt("io.file.buffer.size", 4*1024));
73  }
74
75  public Class<? extends Decompressor> getDecompressorType() {
76    return ZlibFactory.getZlibDecompressorType(conf);
77  }
78
79  public Decompressor createDecompressor() {
80    return ZlibFactory.getZlibDecompressor(conf);
81  }
82 
83  public String getDefaultExtension() {
84    return ".deflate";
85  }
86
87}
Note: See TracBrowser for help on using the repository browser.