Package org.apache.jmeter.report.core

# Class Sample

java.lang.Object
org.apache.jmeter.report.core.Sample

public class Sample extends Object
Represents a sample read from a CSV source.

Getters with a string parameter are implemented for convenience but should be avoided as they are inefficient

Since:
  3.0

## Constructor Summary

Constructors
Constructor
Description
`Sample(long row, SampleMetadata metadata, String... data)`
Build a sample from a string array

## Method Summary

Modifier and Type
Method
Description
`int`
`getAllThreads()`
Gets the overall number of threads.
`long`
`getConnectTime()`
Gets the connect time stored in the sample.
`String`
`getData(int index)`
Gets the data stored in the column with the specified rank.
`<T> T`
`getData(Class<T> clazz, int index, String fieldName)`
Gets the data of the column matching the specified rank and converts it to an alternative type.
`<T> T`
`getData(Class<T> clazz, String name)`
Gets the data of the column matching the specified name and converts it to an alternative type.
`String`
`getData(String name)`
Gets the data stored in the column with the specified name.
`long`
`getElapsedTime()`
Gets the elapsed time stored in the sample.
`long`
`getEndTime()`
Gets the end time of the sample.
`String`
`getFailureMessage()`
Gets the failure message stored in the sample.
`int`
`getGroupThreads()`
Gets the number of threads in the group of this sample.
`long`
`getLatency()`
Gets the latency stored in the sample.
`String`
`getName()`
Gets the name stored in the sample.
`long`
`getReceivedBytes()`
Gets the number of received bytes stored in the sample.
`String`
`getResponseCode()`
Gets the response code stored in the sample.
`String`
`getResponseMessage()`
Gets the response message stored in the sample.
`long`
`getSampleRow()`
`long`
`getSentBytes()`
Gets the number of sent bytes stored in the sample.
`long`
`getStartTime()`
Gets the start time of the sample.
`boolean`
`getSuccess()`
Gets the success status stored in the sample.
`String`
`getThreadName()`
Gets the thread name stored in the sample.
`long`
`getTimestamp()`
Gets the time stamp stored in the sample.
`boolean`
`isController()`
Checks if this sample is a controller.
`boolean`
`isEmptyController()`
Checks if this sample is an empty controller.
`String`
`toString()`

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

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

## Constructor Details

### Sample

public Sample(long row, SampleMetadata metadata, String... data)
Build a sample from a string array

Parameters:
  `row` - the row number in the CSV source from which this sample is built
  `metadata` - The sample metadata (contains column names)
  `data` - The sample data as a string array

## Method Details

### getSampleRow

public long getSampleRow()

Returns:
  the row number from the CSV source from which this sample has been built.

### getData

public String getData(int index)
Gets the data stored in the column with the specified rank.

Parameters:
  `index` - the rank of the column
Returns:
  the data of the column

### getData

public String getData(String name)
Gets the data stored in the column with the specified name.

Parameters:
  `name` - the name of the column
Returns:
  the data of the column

### getData

public <T> T getData(Class<T> clazz, int index, String fieldName)
Gets the data of the column matching the specified rank and converts it to an alternative type.

Type Parameters:
  `T` - type of data to be fetched
Parameters:
  `clazz` - the target class of the data
  `index` - the rank of the column
  `fieldName` - Field name
Returns:
  the converted value of the data

### getData

public <T> T getData(Class<T> clazz, String name)
Gets the data of the column matching the specified name and converts it to an alternative type.

Type Parameters:
  `T` - type of data to be fetched
Parameters:
  `clazz` - the target class of the data
  `name` - the name of the column
Returns:
  the converted value of the data

### toString

public String toString()

Overrides:
  `toString` in class `Object`

### getTimestamp

public long getTimestamp()
Gets the time stamp stored in the sample.

Returns:
  the time stamp

### getElapsedTime

public long getElapsedTime()
Gets the elapsed time stored in the sample.

Returns:
  the elapsed time stored in the sample

### getStartTime

public long getStartTime()

Gets the start time of the sample.

Start time depends on sampleresult.timestamp.start property :

- If the property is true, this method returns the time stamp stored in the sample.
- If the property is false, this method returns the time stamp stored in the sample minus the elapsed time.

Returns:
  the start time

### getEndTime

public long getEndTime()

Gets the end time of the sample.

End time depends on jmeter.timestamp.start property :

- If the property is true, this method returns the time stamp recorded in the sample plus the elapsed time.
- If the property is false, this method returns the time stamp recorded.

Returns:
  the end time

### getResponseCode

public String getResponseCode()
Gets the response code stored in the sample.

Returns:
  the response code stored in the sample

### getFailureMessage

public String getFailureMessage()
Gets the failure message stored in the sample.

Returns:
  the failure message stored in the sample

### getName

public String getName()
Gets the name stored in the sample.

Returns:
  the name stored in the sample

### getResponseMessage

public String getResponseMessage()
Gets the response message stored in the sample.

Returns:
  the response message stored in the sample

### getLatency

public long getLatency()
Gets the latency stored in the sample.

Returns:
  the latency stored in the sample

### getConnectTime

public long getConnectTime()
Gets the connect time stored in the sample.

Returns:
  the connect time stored in the sample or 0 is column is not in results

### getSuccess

public boolean getSuccess()
Gets the success status stored in the sample.

Returns:
  the success status stored in the sample

### getReceivedBytes

public long getReceivedBytes()
Gets the number of received bytes stored in the sample.

Returns:
  the number of received bytes stored in the sample

### getSentBytes

public long getSentBytes()
Gets the number of sent bytes stored in the sample. If column is not in results, we return 0

Returns:
  the number of sent bytes stored in the sample

### getGroupThreads

public int getGroupThreads()
Gets the number of threads in the group of this sample.

Returns:
  the number of threads in the group of this sample

### getAllThreads

public int getAllThreads()
Gets the overall number of threads.

Returns:
  the overall number of threads

### getThreadName

public String getThreadName()
Gets the thread name stored in the sample.

Returns:
  the thread name stored in the sample

### isController

public boolean isController()
Checks if this sample is a controller.

Returns:
  `true`, if this sample is a controller; otherwise `false`

### isEmptyController

public boolean isEmptyController()
Checks if this sample is an empty controller.

Returns:
  `true`, if this sample is a controller; otherwise `false`