@Override public Closeable createOutputStream(String hdfsPath, HdfsConfiguration configuration) { try { Closeable rout; HdfsInfo hdfsInfo = HdfsInfoFactory.newHdfsInfo(hdfsPath); Class<?> keyWritableClass = configuration.getKeyType().getWritableClass(); Class<?> valueWritableClass = configuration.getValueType().getWritableClass(); rout = SequenceFile.createWriter( hdfsInfo.getConf(), Writer.file(hdfsInfo.getPath()), Writer.keyClass(keyWritableClass), Writer.valueClass(valueWritableClass), Writer.bufferSize(configuration.getBufferSize()), Writer.replication(configuration.getReplication()), Writer.blockSize(configuration.getBlockSize()), Writer.compression( configuration.getCompressionType(), configuration.getCompressionCodec().getCodec()), Writer.progressable( new Progressable() { @Override public void progress() {} }), Writer.metadata(new SequenceFile.Metadata())); return rout; } catch (IOException ex) { throw new RuntimeCamelException(ex); } }
@Override public Closeable createOutputStream(String hdfsPath, HdfsConfiguration configuration) { try { Closeable rout; HdfsInfo hdfsInfo = HdfsInfoFactory.newHdfsInfo(hdfsPath); if (!configuration.isAppend()) { rout = hdfsInfo .getFileSystem() .create( hdfsInfo.getPath(), configuration.isOverwrite(), configuration.getBufferSize(), configuration.getReplication(), configuration.getBlockSize(), new Progressable() { @Override public void progress() {} }); } else { rout = hdfsInfo .getFileSystem() .append( hdfsInfo.getPath(), configuration.getBufferSize(), new Progressable() { @Override public void progress() {} }); } return rout; } catch (IOException ex) { throw new RuntimeCamelException(ex); } }