PageRenderTime 15ms CodeModel.GetById 10ms app.highlight 3ms RepoModel.GetById 1ms app.codeStats 0ms

/tags/release-0.1-rc2/hive/external/serde/src/java/org/apache/hadoop/hive/serde2/ByteStreamTypedSerDe.java

#
Java | 49 lines | 20 code | 8 blank | 21 comment | 0 complexity | 2f04cfba888984fe01557a1fb6f56530 MD5 | raw file
 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.hive.serde2;
20
21import java.lang.reflect.Type;
22
23import org.apache.hadoop.io.BytesWritable;
24import org.apache.hadoop.io.Writable;
25
26/**
27 * ByteStreamTypedSerDe.
28 *
29 */
30public abstract class ByteStreamTypedSerDe extends TypedSerDe {
31
32  protected ByteStream.Input bis;
33  protected ByteStream.Output bos;
34
35  public ByteStreamTypedSerDe(Type objectType) throws SerDeException {
36    super(objectType);
37    bos = new ByteStream.Output();
38    bis = new ByteStream.Input();
39  }
40
41  @Override
42  public Object deserialize(Writable field) throws SerDeException {
43    Object retObj = super.deserialize(field);
44    BytesWritable b = (BytesWritable) field;
45    bis.reset(b.get(), b.getSize());
46    return (retObj);
47  }
48
49}