# Class SaveService

java.lang.Object
org.apache.jmeter.save.SaveService

public class SaveService extends Object
Handles setting up XStream serialisation. The class reads alias definitions from saveservice.properties.

## Field Summary

Fields
Modifier and Type
Field
Description
`static final boolean`
`IS_TESTPLAN_FORMAT_22`
New XStream format - more compressed class names
`static final String`
`RESULTCOLLECTOR_HELPER_OBJECT`
`static final String`
`SAMPLE_EVENT_OBJECT`
`static final String`
`TEST_CLASS_NAME`
`static final String`
`TESTLOG_FORMAT`
`static final String`
`TESTPLAN_FORMAT`

## Constructor Summary

Constructors
Constructor
Description
`SaveService()`

## Method Summary

Modifier and Type
Method
Description
`static String`
`aliasToClass(String s)`
`static String`
`CEtoString(ConversionException ce)`
Simplify getMessage() output from XStream ConversionException
`static String`
`classToAlias(String s)`
`static String`
`getFileEncoding(String dflt)`
Returns the file Encoding specified in saveservice.properties or the default
`static String`
`getPropertiesVersion()`
`static String`
`getVERSION()`
`static Object`
`loadElement(InputStream in)`
`static Properties`
`loadProperties()`
`static void`
`loadTestResults(InputStream reader, ResultCollectorHelper resultCollectorHelper)`
Read results from JTL file.
`static HashTree`
`loadTree(File file)`
Load a Test tree (JMX file)
`static HashTree`
`loadTree(InputStream reader)`
Deprecated.
use `SaveService` `loadTree(File)`
`static void`
`saveElement(Object el, OutputStream out)`
`static void`
`saveSampleResult(SampleEvent evt, Writer writer)`
Save a sampleResult to an XML output file using XStream.
`static void`
`saveTestElement(TestElement elem, Writer writer)`
`static void`
`saveTree(HashTree tree, OutputStream out)`

### Methods inherited from class Object

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

## Field Details

### SAMPLE_EVENT_OBJECT

public static final String SAMPLE_EVENT_OBJECT

See Also:
  - Constant Field Values

### RESULTCOLLECTOR_HELPER_OBJECT

public static final String RESULTCOLLECTOR_HELPER_OBJECT

See Also:
  - Constant Field Values

### TEST_CLASS_NAME

public static final String TEST_CLASS_NAME

See Also:
  - Constant Field Values

### TESTPLAN_FORMAT

public static final String TESTPLAN_FORMAT

### TESTLOG_FORMAT

public static final String TESTLOG_FORMAT

### IS_TESTPLAN_FORMAT_22

public static final boolean IS_TESTPLAN_FORMAT_22
New XStream format - more compressed class names

## Constructor Details

### SaveService

public SaveService()

## Method Details

### loadProperties

public static Properties loadProperties() throws IOException

Throws:
  `IOException`

### aliasToClass

public static String aliasToClass(String s)

### classToAlias

public static String classToAlias(String s)

### saveTree

public static void saveTree(HashTree tree, OutputStream out) throws IOException

Throws:
  `IOException`

### saveElement

public static void saveElement(Object el, OutputStream out) throws IOException

Throws:
  `IOException`

### loadElement

public static Object loadElement(InputStream in) throws IOException

Throws:
  `IOException`

### saveSampleResult

public static void saveSampleResult(SampleEvent evt, Writer writer) throws IOException
Save a sampleResult to an XML output file using XStream.

Parameters:
  `evt` - sampleResult wrapped in a sampleEvent
  `writer` - output stream which must be created using `getFileEncoding(String)`
Throws:
  `IOException` - when writing data to output fails

### saveTestElement

public static void saveTestElement(TestElement elem, Writer writer) throws IOException

Parameters:
  `elem` - test element
  `writer` - output stream which must be created using `getFileEncoding(String)`
Throws:
  `IOException` - when writing data to output fails

### loadTestResults

public static void loadTestResults(InputStream reader, ResultCollectorHelper resultCollectorHelper) throws IOException
Read results from JTL file.

Parameters:
  `reader` - of the file
  `resultCollectorHelper` - helper class to enable TestResultWrapperConverter to deliver the samples
Throws:
  `IOException` - if an I/O error occurs

### loadTree

public static HashTree loadTree(InputStream reader) throws IOException
Deprecated.
use `SaveService` `loadTree(File)`
Load a Test tree (JMX file)

Parameters:
  `reader` - the JMX file as an `InputStream`
Returns:
  the loaded tree or null if an error occurs
Throws:
  `IOException` - if there is a problem reading the file or processing it

### loadTree

public static HashTree loadTree(File file) throws IOException
Load a Test tree (JMX file)

Parameters:
  `file` - the JMX file
Returns:
  the loaded tree
Throws:
  `IOException` - if there is a problem reading the file or processing it

### getFileEncoding

public static String getFileEncoding(String dflt)
Returns the file Encoding specified in saveservice.properties or the default

Parameters:
  `dflt` - value to return if file encoding was not provided
Returns:
  file encoding or default

### CEtoString

public static String CEtoString(ConversionException ce)
Simplify getMessage() output from XStream ConversionException

Parameters:
  `ce` - - ConversionException to analyse
Returns:
  string with details of error

### getPropertiesVersion

public static String getPropertiesVersion()

### getVERSION

public static String getVERSION()