org.apache.jmeter.report.core

## Class AbstractSampleWriter

- java.lang.Object
- - org.apache.jmeter.report.core.SampleWriter
  - - org.apache.jmeter.report.core.AbstractSampleWriter

All Implemented Interfaces:
  Closeable, AutoCloseable

Direct Known Subclasses:
  CsvSampleWriter

    public abstract class AbstractSampleWriter
    extends SampleWriter

Base class for implementing sample writer.

Handles buffering and output writer replacement.

When a writer is set on the sample writer any previous writer is flushed and closed before being replaced by the new one.

Since:
  3.0

### Field Summary

Fields
`protected PrintWriter` `writer` output writer to write samples to

### Constructor Summary

Constructors
Constructor and Description
`AbstractSampleWriter()`

### Method Summary

All Methods Instance Methods Concrete Methods
`void` `close()` This method is guaranteed to not throw any exception.
`void` `setOutputFile(File output)` Set the destination file in which this sample writer will write samples
`void` `setOutputStream(OutputStream out)` Instructs this sample writer to write samples on the specified output with UTG-8 encoding.
`void` `setWriter(Writer newWriter)` Set the new writer on which samples will be written by this sample writer. If any writer exists on the sample writer, it is flushed and closed before being replaced by the new one.

### Methods inherited from class org.apache.jmeter.report.core.SampleWriter

`write`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### writer

    protected PrintWriter writer

output writer to write samples to

### Constructor Detail

#### AbstractSampleWriter

    public AbstractSampleWriter()

### Method Detail

#### setWriter

    public void setWriter(Writer newWriter)

Set the new writer on which samples will be written by this sample writer.
If any writer exists on the sample writer, it is flushed and closed before being replaced by the new one.

Parameters:
  `newWriter` - The destination writer where samples will be written by this sample writer

#### setOutputStream

    public void setOutputStream(OutputStream out)

Instructs this sample writer to write samples on the specified output with UTG-8 encoding. The encoding can be overridden by the user through `SaveService.getFileEncoding(String)`

Parameters:
  `out` - The output stream on which sample should be written

#### setOutputFile

    public void setOutputFile(File output)

Set the destination file in which this sample writer will write samples

Parameters:
  `output` - The output file that will receive samples written by this sample writer

#### close

    public void close()

This method is guaranteed to not throw any exception. If writer is already closed then does nothing.
Any buffered data is flushed by this method.