@Override protected Writer createWriter(final Resource file) { return FileHelper.getWriter(file.write(), FileHelper.DEFAULT_ENCODING); } };
@Override protected Writer createWriter(final Resource resource) { final OutputStream outputStream = resource.write(); return FileHelper.getWriter(outputStream, getSafeEncoding()); } };
@Close(onFailure = false) public void close() throws IOException { if (_greatestEncounteredMillis != -1) { final Properties properties = loadProperties(); final String key = getPropertyKey(); final String value; if (_greatestEncounteredNanos == 0) { value = "" + _greatestEncounteredMillis; } else { value = "" + _greatestEncounteredMillis + '.' + String.format("%09d", _greatestEncounteredNanos); } properties.setProperty(key, value); captureStateFile.write(out -> properties.store(out, null)); } }
@Override protected OutputStream fetch() throws Throwable { final OutputStream outputStream = resource.write(); if (csvConfiguration.getColumnNameLineNumber() != CsvConfiguration.NO_COLUMN_NAME_LINE) { final CsvWriter csvWriter = new CsvWriter(_csvConfiguration); final String headerLine = csvWriter.buildLine(columnNames); final byte[] bytes = headerLine.getBytes(csvConfiguration.getEncoding()); outputStream.write(bytes); outputStream.flush(); } // 512 kb buffer final int bufferSize = 1024 * 512; return new BufferedOutputStream(outputStream, bufferSize); } };
/** * Callback method used by {@link CsvTableDropBuilder} when execute is * called */ protected void dropTable() { close(); if (_resource instanceof FileResource) { final File file = ((FileResource) _resource).getFile(); final boolean success = file.delete(); if (!success) { throw new MetaModelException("Could not delete (drop) file: " + file); } } else { _resource.write(new Action<OutputStream>() { @Override public void run(OutputStream arg) throws Exception { // do nothing, just write an empty file } }); } }
/** * Callback method used by {@link CsvTableDropBuilder} when execute is * called */ protected void dropTable() { close(); if (_resource instanceof FileResource) { final File file = ((FileResource) _resource).getFile(); final boolean success = file.delete(); if (!success) { throw new MetaModelException("Could not delete (drop) file: " + file); } } else { _resource.write(new Action<OutputStream>() { @Override public void run(OutputStream arg) throws Exception { // do nothing, just write an empty file } }); } }
private Writer getWriter(boolean append) { if (_writer == null || !append) { final boolean needsLineBreak = needsLineBreak(_resource, _configuration); final OutputStream out; if (append) { out = _resource.append(); } else { out = _resource.write(); } final boolean insertBom = !append; final Writer writer = FileHelper.getWriter(out, _configuration.getEncoding(), insertBom); if (needsLineBreak) { try { writer.write('\n'); } catch (IOException e) { logger.debug("Failed to insert newline", e); } } _writer = writer; } return _writer; }
private Writer getWriter(boolean append) { if (_writer == null || !append) { final boolean needsLineBreak = needsLineBreak(_resource, _configuration); final OutputStream out; if (append) { out = _resource.append(); } else { out = _resource.write(); } final boolean insertBom = !append; final Writer writer = FileHelper.getWriter(out, _configuration.getEncoding(), insertBom); if (needsLineBreak) { try { writer.write('\n'); } catch (IOException e) { logger.debug("Failed to insert newline", e); } } _writer = writer; } return _writer; }
private static void saveOrThrow(final AnalysisResult analysisResult, final Resource resource) { final SimpleAnalysisResult simpleAnalysisResult; if (analysisResult instanceof SimpleAnalysisResult) { simpleAnalysisResult = (SimpleAnalysisResult) analysisResult; } else { simpleAnalysisResult = new SimpleAnalysisResult(analysisResult.getResultMap(), analysisResult.getCreationDate()); } final OutputStream out = resource.write(); try { SerializationUtils.serialize(simpleAnalysisResult, out); } catch (final SerializationException e) { logger.error("Error serializing analysis result: " + analysisResult, e); throw e; } finally { FileHelper.safeClose(out); } }
public static void copy(Resource from, Resource to) throws IllegalStateException { assert from.isExists(); final InputStream in = from.read(); try { final OutputStream out = to.write(); try { copy(in, out); } finally { safeClose(out); } } finally { safeClose(in); } }
public static void copy(Resource from, Resource to) throws IllegalStateException { assert from.isExists(); final InputStream in = from.read(); try { final OutputStream out = to.write(); try { copy(in, out); } finally { safeClose(out); } } finally { safeClose(in); } }
/** * Writes the {@link Workbook} to a {@link Resource}. The {@link Workbook} will be closed as a result of this * operation! * * @param dataContext * @param wb */ public static void writeAndCloseWorkbook(ExcelDataContext dataContext, final Workbook wb) { // first write to a temp file to avoid that workbook source is the same // as the target (will cause read+write cyclic overflow) final Resource realResource = dataContext.getResource(); final Resource tempResource = new InMemoryResource(realResource.getQualifiedPath()); tempResource.write(out -> wb.write(out)); FileHelper.safeClose(wb); FileHelper.copy(tempResource, realResource); }
/** * Writes the {@link Workbook} to a {@link Resource}. The {@link Workbook} will be closed as a result of this * operation! * * @param dataContext * @param wb */ public static void writeAndCloseWorkbook(ExcelDataContext dataContext, final Workbook wb) { // first write to a temp file to avoid that workbook source is the same // as the target (will cause read+write cyclic overflow) final Resource realResource = dataContext.getResource(); final Resource tempResource = new InMemoryResource(realResource.getQualifiedPath()); tempResource.write(out -> wb.write(out)); FileHelper.safeClose(wb); FileHelper.copy(tempResource, realResource); }
_updateCallback.getResource().write(new Action<OutputStream>() { @Override public void run(OutputStream out) throws Exception {
_updateCallback.getResource().write(new Action<OutputStream>() { @Override public void run(OutputStream out) throws Exception {