@ Override public FSDataInputStream open ( Path f , int bufferSize ) throws IOException { HarStatus hstatus = getFileHarStatus ( f , null ) ; // we got it.. woo hooo!!! if ( hstatus . isDir ( ) ) { throw new FileNotFoundException ( f + " : not a file in " + archivePath ) ; } return new HarFSDataInputStream ( fs , new Path ( archivePath , hstatus . getPartName ( ) ) , hstatus . getStartIndex ( ) , hstatus . getLength ( ) , bufferSize ) ; }
Returns a har input stream which fakes end of file . It reads the index files to get the part file name and the size and start of the file .