<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>AbstractSampler (Apache JMeter dist API)</title>
<link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style">
<script type="text/javascript" src="../../../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="AbstractSampler (Apache JMeter dist API)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><b>Apache JMeter</b></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Class</li>
<li><a href="../../../../org/apache/jmeter/samplers/AbstractSampleSender.html" title="class in org.apache.jmeter.samplers"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/jmeter/samplers/AbstractSampler.html" target="_top">Frames</a></li>
<li><a href="AbstractSampler.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">org.apache.jmeter.samplers</div>
<h2 title="Class AbstractSampler" class="title">Class AbstractSampler</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li><a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html" title="class in org.apache.jmeter.testelement">org.apache.jmeter.testelement.AbstractTestElement</a></li>
<li>
<ul class="inheritance">
<li>org.apache.jmeter.samplers.AbstractSampler</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="https://docs.oracle.com/javase/8/docs/api/java/io/Serializable.html?is-external=true" title="class or interface in java.io">Serializable</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Cloneable.html?is-external=true" title="class or interface in java.lang">Cloneable</a>, <a href="../../../../org/apache/jmeter/engine/util/ConfigMergabilityIndicator.html" title="interface in org.apache.jmeter.engine.util">ConfigMergabilityIndicator</a>, <a href="../../../../org/apache/jmeter/gui/Searchable.html" title="interface in org.apache.jmeter.gui">Searchable</a>, <a href="../../../../org/apache/jmeter/samplers/Sampler.html" title="interface in org.apache.jmeter.samplers">Sampler</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html" title="interface in org.apache.jmeter.testelement">TestElement</a></dd>
</dl>
<dl>
<dt>Direct Known Subclasses:</dt>
<dd><a href="../../../../org/apache/jmeter/protocol/jms/sampler/BaseJMSSampler.html" title="class in org.apache.jmeter.protocol.jms.sampler">BaseJMSSampler</a>, <a href="../../../../org/apache/jmeter/sampler/DebugSampler.html" title="class in org.apache.jmeter.sampler">DebugSampler</a>, <a href="../../../../org/apache/jmeter/protocol/ftp/sampler/FTPSampler.html" title="class in org.apache.jmeter.protocol.ftp.sampler">FTPSampler</a>, <a href="../../../../org/apache/jmeter/protocol/http/sampler/HTTPSamplerBase.html" title="class in org.apache.jmeter.protocol.http.sampler">HTTPSamplerBase</a>, <a href="../../../../org/apache/jmeter/protocol/java/sampler/JavaSampler.html" title="class in org.apache.jmeter.protocol.java.sampler">JavaSampler</a>, <a href="../../../../org/apache/jmeter/protocol/jms/sampler/JMSSampler.html" title="class in org.apache.jmeter.protocol.jms.sampler">JMSSampler</a>, <a href="../../../../org/apache/jmeter/protocol/java/sampler/JUnitSampler.html" title="class in org.apache.jmeter.protocol.java.sampler">JUnitSampler</a>, <a href="../../../../org/apache/jmeter/protocol/ldap/sampler/LDAPExtSampler.html" title="class in org.apache.jmeter.protocol.ldap.sampler">LDAPExtSampler</a>, <a href="../../../../org/apache/jmeter/protocol/ldap/sampler/LDAPSampler.html" title="class in org.apache.jmeter.protocol.ldap.sampler">LDAPSampler</a>, <a href="../../../../org/apache/jmeter/protocol/mail/sampler/MailReaderSampler.html" title="class in org.apache.jmeter.protocol.mail.sampler">MailReaderSampler</a>, <a href="../../../../org/apache/jmeter/protocol/mongodb/sampler/MongoScriptSampler.html" title="class in org.apache.jmeter.protocol.mongodb.sampler">MongoScriptSampler</a>, <a href="../../../../org/apache/jmeter/protocol/smtp/sampler/SmtpSampler.html" title="class in org.apache.jmeter.protocol.smtp.sampler">SmtpSampler</a>, <a href="../../../../org/apache/jmeter/protocol/system/SystemSampler.html" title="class in org.apache.jmeter.protocol.system">SystemSampler</a>, <a href="../../../../org/apache/jmeter/protocol/tcp/sampler/TCPSampler.html" title="class in org.apache.jmeter.protocol.tcp.sampler">TCPSampler</a>, <a href="../../../../org/apache/jmeter/sampler/TestAction.html" title="class in org.apache.jmeter.sampler">TestAction</a>, <a href="../../../../org/apache/jmeter/control/TransactionSampler.html" title="class in org.apache.jmeter.control">TransactionSampler</a></dd>
</dl>
<hr>
<br>
<pre>public abstract class <span class="typeNameLabel">AbstractSampler</span>
extends <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html" title="class in org.apache.jmeter.testelement">AbstractTestElement</a>
implements <a href="../../../../org/apache/jmeter/samplers/Sampler.html" title="interface in org.apache.jmeter.samplers">Sampler</a>, <a href="../../../../org/apache/jmeter/engine/util/ConfigMergabilityIndicator.html" title="interface in org.apache.jmeter.engine.util">ConfigMergabilityIndicator</a></pre>
<dl>
<dt><span class="seeLabel">See Also:</span></dt>
<dd><a href="../../../../serialized-form.html#org.apache.jmeter.samplers.AbstractSampler">Serialized Form</a></dd>
</dl>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<ul class="blockList">
<li class="blockList"><a name="fields.inherited.from.class.org.apache.jmeter.testelement.TestElement">
<!--   -->
</a>
<h3>Fields inherited from interface&nbsp;org.apache.jmeter.testelement.<a href="../../../../org/apache/jmeter/testelement/TestElement.html" title="interface in org.apache.jmeter.testelement">TestElement</a></h3>
<code><a href="../../../../org/apache/jmeter/testelement/TestElement.html#COMMENTS">COMMENTS</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#ENABLED">ENABLED</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#GUI_CLASS">GUI_CLASS</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#NAME">NAME</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#TEST_CLASS">TEST_CLASS</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/jmeter/samplers/AbstractSampler.html#AbstractSampler--">AbstractSampler</a></span>()</code>&nbsp;</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/jmeter/samplers/AbstractSampler.html#applies-org.apache.jmeter.config.ConfigTestElement-">applies</a></span>(<a href="../../../../org/apache/jmeter/config/ConfigTestElement.html" title="class in org.apache.jmeter.config">ConfigTestElement</a>&nbsp;configElement)</code>
<div class="block">Does configElement apply to Sampler</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.jmeter.testelement.AbstractTestElement">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;org.apache.jmeter.testelement.<a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html" title="class in org.apache.jmeter.testelement">AbstractTestElement</a></h3>
<code><a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#addPropertiesValues-java.util.List-java.util.Set-">addPropertiesValues</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#addProperty-org.apache.jmeter.testelement.property.JMeterProperty-">addProperty</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#addProperty-org.apache.jmeter.testelement.property.JMeterProperty-boolean-">addProperty</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#addTestElement-org.apache.jmeter.testelement.TestElement-">addTestElement</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#canRemove--">canRemove</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#clear--">clear</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#clearTemporary-org.apache.jmeter.testelement.property.JMeterProperty-">clearTemporary</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#clearTestElementChildren--">clearTestElementChildren</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#clone--">clone</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#emptyTemporary--">emptyTemporary</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#equals-java.lang.Object-">equals</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#getComment--">getComment</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#getName--">getName</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#getProperty-java.lang.String-">getProperty</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#getPropertyAsBoolean-java.lang.String-">getPropertyAsBoolean</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#getPropertyAsBoolean-java.lang.String-boolean-">getPropertyAsBoolean</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#getPropertyAsDouble-java.lang.String-">getPropertyAsDouble</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#getPropertyAsFloat-java.lang.String-">getPropertyAsFloat</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#getPropertyAsInt-java.lang.String-">getPropertyAsInt</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#getPropertyAsInt-java.lang.String-int-">getPropertyAsInt</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#getPropertyAsLong-java.lang.String-">getPropertyAsLong</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#getPropertyAsLong-java.lang.String-long-">getPropertyAsLong</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#getPropertyAsString-java.lang.String-">getPropertyAsString</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#getPropertyAsString-java.lang.String-java.lang.String-">getPropertyAsString</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#getSearchableTokens--">getSearchableTokens</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#getThreadContext--">getThreadContext</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#getThreadName--">getThreadName</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#hashCode--">hashCode</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#isEnabled--">isEnabled</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#isRunningVersion--">isRunningVersion</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#isTemporary-org.apache.jmeter.testelement.property.JMeterProperty-">isTemporary</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#logProperties--">logProperties</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#mergeIn-org.apache.jmeter.testelement.TestElement-">mergeIn</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#propertyIterator--">propertyIterator</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#recoverRunningVersion--">recoverRunningVersion</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#removeProperty-java.lang.String-">removeProperty</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#setComment-java.lang.String-">setComment</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#setEnabled-boolean-">setEnabled</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#setName-java.lang.String-">setName</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#setProperty-org.apache.jmeter.testelement.property.JMeterProperty-">setProperty</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#setProperty-java.lang.String-boolean-">setProperty</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#setProperty-java.lang.String-boolean-boolean-">setProperty</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#setProperty-java.lang.String-int-">setProperty</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#setProperty-java.lang.String-int-int-">setProperty</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#setProperty-java.lang.String-long-">setProperty</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#setProperty-java.lang.String-long-long-">setProperty</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#setProperty-java.lang.String-java.lang.String-">setProperty</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#setProperty-java.lang.String-java.lang.String-java.lang.String-">setProperty</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#setRunningVersion-boolean-">setRunningVersion</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#setTemporary-org.apache.jmeter.testelement.property.JMeterProperty-">setTemporary</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#setThreadContext-org.apache.jmeter.threads.JMeterContext-">setThreadContext</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#setThreadName-java.lang.String-">setThreadName</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#traverse-org.apache.jmeter.testelement.TestElementTraverser-">traverse</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#traverseCollection-org.apache.jmeter.testelement.property.CollectionProperty-org.apache.jmeter.testelement.TestElementTraverser-">traverseCollection</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#traverseMap-org.apache.jmeter.testelement.property.MapProperty-org.apache.jmeter.testelement.TestElementTraverser-">traverseMap</a>, <a href="../../../../org/apache/jmeter/testelement/AbstractTestElement.html#traverseProperty-org.apache.jmeter.testelement.TestElementTraverser-org.apache.jmeter.testelement.property.JMeterProperty-">traverseProperty</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.jmeter.samplers.Sampler">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.jmeter.samplers.<a href="../../../../org/apache/jmeter/samplers/Sampler.html" title="interface in org.apache.jmeter.samplers">Sampler</a></h3>
<code><a href="../../../../org/apache/jmeter/samplers/Sampler.html#sample-org.apache.jmeter.samplers.Entry-">sample</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.org.apache.jmeter.testelement.TestElement">
<!--   -->
</a>
<h3>Methods inherited from interface&nbsp;org.apache.jmeter.testelement.<a href="../../../../org/apache/jmeter/testelement/TestElement.html" title="interface in org.apache.jmeter.testelement">TestElement</a></h3>
<code><a href="../../../../org/apache/jmeter/testelement/TestElement.html#addTestElement-org.apache.jmeter.testelement.TestElement-">addTestElement</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#canRemove--">canRemove</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#clear--">clear</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#clearTestElementChildren--">clearTestElementChildren</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#clone--">clone</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#getComment--">getComment</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#getName--">getName</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#getProperty-java.lang.String-">getProperty</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#getPropertyAsBoolean-java.lang.String-">getPropertyAsBoolean</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#getPropertyAsBoolean-java.lang.String-boolean-">getPropertyAsBoolean</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#getPropertyAsDouble-java.lang.String-">getPropertyAsDouble</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#getPropertyAsFloat-java.lang.String-">getPropertyAsFloat</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#getPropertyAsInt-java.lang.String-">getPropertyAsInt</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#getPropertyAsInt-java.lang.String-int-">getPropertyAsInt</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#getPropertyAsLong-java.lang.String-">getPropertyAsLong</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#getPropertyAsLong-java.lang.String-long-">getPropertyAsLong</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#getPropertyAsString-java.lang.String-">getPropertyAsString</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#getPropertyAsString-java.lang.String-java.lang.String-">getPropertyAsString</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#getThreadContext--">getThreadContext</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#getThreadName--">getThreadName</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#isEnabled--">isEnabled</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#isRunningVersion--">isRunningVersion</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#isTemporary-org.apache.jmeter.testelement.property.JMeterProperty-">isTemporary</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#propertyIterator--">propertyIterator</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#recoverRunningVersion--">recoverRunningVersion</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#removed--">removed</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#removeProperty-java.lang.String-">removeProperty</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#setComment-java.lang.String-">setComment</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#setEnabled-boolean-">setEnabled</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#setName-java.lang.String-">setName</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#setProperty-org.apache.jmeter.testelement.property.JMeterProperty-">setProperty</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#setProperty-java.lang.String-boolean-">setProperty</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#setProperty-java.lang.String-boolean-boolean-">setProperty</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#setProperty-java.lang.String-int-">setProperty</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#setProperty-java.lang.String-int-int-">setProperty</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#setProperty-java.lang.String-long-">setProperty</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#setProperty-java.lang.String-long-long-">setProperty</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#setProperty-java.lang.String-java.lang.String-">setProperty</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#setProperty-java.lang.String-java.lang.String-java.lang.String-">setProperty</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#setRunningVersion-boolean-">setRunningVersion</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#setTemporary-org.apache.jmeter.testelement.property.JMeterProperty-">setTemporary</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#setThreadContext-org.apache.jmeter.threads.JMeterContext-">setThreadContext</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#setThreadName-java.lang.String-">setThreadName</a>, <a href="../../../../org/apache/jmeter/testelement/TestElement.html#traverse-org.apache.jmeter.testelement.TestElementTraverser-">traverse</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="AbstractSampler--">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>AbstractSampler</h4>
<pre>public&nbsp;AbstractSampler()</pre>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="applies-org.apache.jmeter.config.ConfigTestElement-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>applies</h4>
<pre>public&nbsp;boolean&nbsp;applies(<a href="../../../../org/apache/jmeter/config/ConfigTestElement.html" title="class in org.apache.jmeter.config">ConfigTestElement</a>&nbsp;configElement)</pre>
<div class="block">Does configElement apply to Sampler</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../../../org/apache/jmeter/engine/util/ConfigMergabilityIndicator.html#applies-org.apache.jmeter.config.ConfigTestElement-">applies</a></code>&nbsp;in interface&nbsp;<code><a href="../../../../org/apache/jmeter/engine/util/ConfigMergabilityIndicator.html" title="interface in org.apache.jmeter.engine.util">ConfigMergabilityIndicator</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>configElement</code> - <a href="../../../../org/apache/jmeter/config/ConfigTestElement.html" title="class in org.apache.jmeter.config"><code>ConfigTestElement</code></a></dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>boolean</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../index-all.html">Index</a></li>
<li><a href="../../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><b>Apache JMeter</b></div>
</div>
<div class="subNav">
<ul class="navList">
<li>Prev&nbsp;Class</li>
<li><a href="../../../../org/apache/jmeter/samplers/AbstractSampleSender.html" title="class in org.apache.jmeter.samplers"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../../index.html?org/apache/jmeter/samplers/AbstractSampler.html" target="_top">Frames</a></li>
<li><a href="AbstractSampler.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li>Field&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small>Copyright © 1998-2020 Apache Software Foundation. All Rights Reserved.</small></p>
</body>
</html>
