@Override public void teardown() { try { csvReader.close(); } catch (IOException e) { DTThrowable.rethrow(e); } }
@Override public void process(byte[] tuple) { try { csvStringReader.open(new String(tuple, inputEncoding)); if (hasHeader) { String[] header = csvReader.getHeader(true); int len = header.length; for (int i = 0; i < len; i++) { logger.debug("header is {}", header[i]); @SuppressWarnings("unchecked") T headerData = (T)header[i]; output.emit(headerData); } } while (true) { T data = readData(properties, processors); if (data == null) { break; } logger.debug("data in loop is {}", data.toString()); output.emit(data); } } catch (IOException ex) { throw new RuntimeException(ex); } }
@Override public void process(byte[] tuple) { try { csvStringReader.open(new String(tuple, inputEncoding)); if (hasHeader) { String[] header = csvReader.getHeader(true); int len = header.length; for (int i = 0; i < len; i++) { logger.debug("header is {}", header[i]); @SuppressWarnings("unchecked") T headerData = (T)header[i]; output.emit(headerData); } } while (true) { T data = readData(properties, processors); if (data == null) { break; } logger.debug("data in loop is {}", data.toString()); output.emit(data); } } catch (IOException ex) { throw new RuntimeException(ex); } }
@Override public void teardown() { try { csvReader.close(); } catch (IOException e) { DTThrowable.rethrow(e); } }