# Class AbstractSamplerCreator

java.lang.Object
org.apache.jmeter.protocol.http.proxy.AbstractSamplerCreator

All Implemented Interfaces:
  `SamplerCreator`

Direct Known Subclasses:
  `DefaultSamplerCreator`

public abstract class AbstractSamplerCreator extends Object implements SamplerCreator
Base class for SamplerCreator

## Field Summary

Fields
Modifier and Type
Field
Description
`protected static final String`
`HTTP`
`protected static final String`
`HTTPS`

## Constructor Summary

Constructors
Constructor
Description
`AbstractSamplerCreator()`

## Method Summary

Modifier and Type
Method
Description
`HTTPSamplerBase`
`createAndPopulateSampler(HttpRequestHdr request, Map<String,String> pageEncodings, Map<String,String> formEncodings)`
Default implementation calls: `SamplerCreator` `SamplerCreator.createSampler(HttpRequestHdr, Map, Map)` `SamplerCreator` `SamplerCreator.populateSampler(HTTPSamplerBase, HttpRequestHdr, Map, Map)`
`List<TestElement>`
`createChildren(HTTPSamplerBase sampler, SampleResult result)`
Default implementation returns an empty list
`protected String`
`getBinaryDirectory()`
`protected String`
`getBinaryFileSuffix()`
`protected static int`
`getRequestNumber()`
`protected static void`
`incrementRequestNumber()`
Increment request number
`protected boolean`
`isBinaryContent(String contentType)`
`protected static boolean`
`isNumberRequests()`
`void`
`postProcessSampler(HTTPSamplerBase sampler, SampleResult result)`
Post process sampler Called after sampling

### Methods inherited from class Object

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

### Methods inherited from interface SamplerCreator

`createSampler, getManagedContentTypes, populateSampler`

## Field Details

### HTTP

protected static final String HTTP

See Also:
  - Constant Field Values

### HTTPS

protected static final String HTTPS

See Also:
  - Constant Field Values

## Constructor Details

### AbstractSamplerCreator

public AbstractSamplerCreator()

## Method Details

### getRequestNumber

protected static int getRequestNumber()

Returns:
  int request number

### incrementRequestNumber

protected static void incrementRequestNumber()
Increment request number

### isNumberRequests

protected static boolean isNumberRequests()

Returns:
  boolean is numbering requests is required

### isBinaryContent

protected boolean isBinaryContent(String contentType)

Parameters:
  `contentType` - String content type
Returns:
  true if contentType is part of binary declared types

### getBinaryFileSuffix

protected String getBinaryFileSuffix()

Returns:
  String binary file suffix

### getBinaryDirectory

protected String getBinaryDirectory()

Returns:
  String binary directory

### postProcessSampler

public void postProcessSampler(HTTPSamplerBase sampler, SampleResult result)
Description copied from interface: `SamplerCreator`
Post process sampler Called after sampling

Specified by:
  `postProcessSampler` in interface `SamplerCreator`
Parameters:
  `sampler` - HTTPSamplerBase
  `result` - SampleResult
See Also:
  - `SamplerCreator.postProcessSampler(org.apache.jmeter.protocol.http.sampler.HTTPSamplerBase, org.apache.jmeter.samplers.SampleResult)`

### createAndPopulateSampler

public HTTPSamplerBase createAndPopulateSampler(HttpRequestHdr request, Map<String,String> pageEncodings, Map<String,String> formEncodings) throws Exception
Description copied from interface: `SamplerCreator`
Default implementation calls:

1. `SamplerCreator` `SamplerCreator.createSampler(HttpRequestHdr, Map, Map)`
2. `SamplerCreator` `SamplerCreator.populateSampler(HTTPSamplerBase, HttpRequestHdr, Map, Map)`

Specified by:
  `createAndPopulateSampler` in interface `SamplerCreator`
Parameters:
  `request` - `HttpRequestHdr`
  `pageEncodings` - Map of page encodings
  `formEncodings` - Map of form encodings
Returns:
  `HTTPSamplerBase`
Throws:
  `Exception` - when something fails
See Also:
  - `SamplerCreator.createAndPopulateSampler(org.apache.jmeter.protocol.http.proxy.HttpRequestHdr, java.util.Map, java.util.Map)`

### createChildren

public List<TestElement> createChildren(HTTPSamplerBase sampler, SampleResult result)
Default implementation returns an empty list

Specified by:
  `createChildren` in interface `SamplerCreator`
Parameters:
  `sampler` - `HTTPSamplerBase`
  `result` - `SampleResult`
Returns:
  List
See Also:
  - `SamplerCreator.createChildren(HTTPSamplerBase, SampleResult)`