001/*
002 * Copyright (c) 2010-2013 The Regents of the University of California.
003 * All rights reserved.
004 *
005 * Permission is hereby granted, without written agreement and without
006 * license or royalty fees, to use, copy, modify, and distribute this
007 * software and its documentation for any purpose, provided that the above
008 * copyright notice and the following two paragraphs appear in all copies
009 * of this software.
010 *
011 * IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY
012 * FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES
013 * ARISING OUT OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF
014 * THE UNIVERSITY OF CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF
015 * SUCH DAMAGE.
016 *
017 * THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES,
018 * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
019 * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE
020 * PROVIDED HEREUNDER IS ON AN "AS IS" BASIS, AND THE UNIVERSITY OF
021 * CALIFORNIA HAS NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES,
022 * ENHANCEMENTS, OR MODIFICATIONS.
023 *
024 */
025package org.kepler.hadoop.io.input;
026
027import java.io.IOException;
028
029import org.apache.hadoop.io.Text;
030import org.apache.hadoop.mapreduce.InputSplit;
031import org.apache.hadoop.mapreduce.RecordReader;
032import org.apache.hadoop.mapreduce.TaskAttemptContext;
033import org.apache.hadoop.mapreduce.lib.input.FileInputFormat;
034
035//////////////////////////////////////////////////////////////////////////
036////FilePathInputFormat
037
038/**
039* This class provides InputFormat to read files. 
040* Key is file name (no path info), value is file content.
041* 
042* @author Jianwu Wang (jianwu@sdsc.edu)
043* @version $Id: FileContentInputFormat.java 33070 2014-11-12 23:21:09Z crawl $
044*/
045
046public class FileContentInputFormat extends FileInputFormat<String, Text> {
047
048                @Override
049                public RecordReader<String, Text> createRecordReader(
050                                InputSplit split, TaskAttemptContext context)
051                                throws IOException, InterruptedException {
052                        
053//                      context.reporter.setStatus(split.toString());
054                    return new FileContentRecordReader();
055                }
056}