# Class AbstractScopedTestElement

java.lang.Object
org.apache.jmeter.testelement.AbstractTestElement
org.apache.jmeter.testelement.AbstractScopedTestElement

All Implemented Interfaces:
  `Serializable, Cloneable, Searchable, TestElement`

Direct Known Subclasses:
  `AbstractScopedAssertion, HtmlExtractor, RegexExtractor, XPathExtractor`

public abstract class AbstractScopedTestElement extends AbstractTestElement

Super-class for TestElements that can be applied to main sample, sub-samples or both. [Assertions use a different class because they use a different value for the `getScopeName()` constant]

Their corresponding GUI classes need to add the ScopePanel to the GUI using the AbstractXXXGui methods:

- createScopePanel()
- saveScopeSettings()
- showScopeSettings()

See Also:
  - Serialized Form

## Field Summary

### Fields inherited from interface TestElement

`COMMENTS, ENABLED, GUI_CLASS, NAME, TEST_CLASS`

## Constructor Summary

Constructors
Constructor
Description
`AbstractScopedTestElement()`

## Method Summary

Modifier and Type
Method
Description
`String`
`fetchScope()`
Get the scope setting
`protected List<SampleResult>`
`getSampleList(SampleResult result)`
Generate a list of qualifying sample results, depending on the scope.
`protected String`
`getScopeName()`
`String`
`getVariableName()`
`boolean`
`isScopeAll(String scope)`
Is the assertion to be applied to the all samples?
`boolean`
`isScopeChildren(String scope)`
Is the assertion to be applied to the sub-samples (children)?
`boolean`
`isScopeParent(String scope)`
Is the assertion to be applied to the main (parent) sample?
`protected boolean`
`isScopeVariable()`
Is the assertion to be applied to the all samples?
`boolean`
`isScopeVariable(String scope)`
Is the assertion to be applied to the all samples?
`void`
`setScopeAll()`
`void`
`setScopeChildren()`
`void`
`setScopeParent()`
`void`
`setScopeVariable(String variableName)`

### Methods inherited from class AbstractTestElement

`addPropertiesValues, addProperty, addProperty, addTestElement, canRemove, clear, clearTemporary, clearTestElementChildren, clone, emptyTemporary, equals, getComment, getName, getProperty, getPropertyAsBoolean, getPropertyAsBoolean, getPropertyAsDouble, getPropertyAsFloat, getPropertyAsInt, getPropertyAsInt, getPropertyAsLong, getPropertyAsLong, getPropertyAsString, getPropertyAsString, getSearchableTokens, getThreadContext, getThreadName, hashCode, isEnabled, isRunningVersion, isTemporary, logProperties, mergeIn, propertyIterator, recoverRunningVersion, removeProperty, setComment, setEnabled, setName, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setRunningVersion, setTemporary, setThreadContext, setThreadName, traverse, traverseCollection, traverseMap, traverseProperty`

### Methods inherited from class Object

`finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### AbstractScopedTestElement

public AbstractScopedTestElement()

## Method Details

### getScopeName

protected String getScopeName()

### fetchScope

public String fetchScope()
Get the scope setting

Returns:
  the scope, default parent

### isScopeParent

public boolean isScopeParent(String scope)
Is the assertion to be applied to the main (parent) sample?

Parameters:
  `scope` - name of the scope to be checked
Returns:
  `true` if the assertion is to be applied to the parent sample.

### isScopeChildren

public boolean isScopeChildren(String scope)
Is the assertion to be applied to the sub-samples (children)?

Parameters:
  `scope` - name of the scope to be checked
Returns:
  `true` if the assertion is to be applied to the children.

### isScopeAll

public boolean isScopeAll(String scope)
Is the assertion to be applied to the all samples?

Parameters:
  `scope` - name of the scope to be checked
Returns:
  `true` if the assertion is to be applied to the all samples.

### isScopeVariable

public boolean isScopeVariable(String scope)
Is the assertion to be applied to the all samples?

Parameters:
  `scope` - name of the scope to be checked
Returns:
  `true` if the assertion is to be applied to the all samples.

### isScopeVariable

protected boolean isScopeVariable()
Is the assertion to be applied to the all samples?

Returns:
  `true` if the assertion is to be applied to the all samples.

### getVariableName

public String getVariableName()

### setScopeParent

public void setScopeParent()

### setScopeChildren

public void setScopeChildren()

### setScopeAll

public void setScopeAll()

### setScopeVariable

public void setScopeVariable(String variableName)

### getSampleList

protected List<SampleResult> getSampleList(SampleResult result)
Generate a list of qualifying sample results, depending on the scope.

Parameters:
  `result` - current sample
Returns:
  list containing the current sample and/or its child samples