本文整理汇总了Java中org.apache.jmeter.threads.JMeterVariables.putObject方法的典型用法代码示例。如果您正苦于以下问题:Java JMeterVariables.putObject方法的具体用法?Java JMeterVariables.putObject怎么用?Java JMeterVariables.putObject使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类org.apache.jmeter.threads.JMeterVariables
的用法示例。
在下文中一共展示了JMeterVariables.putObject方法的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: iterationStart
import org.apache.jmeter.threads.JMeterVariables; //导入方法依赖的package包/类
/**
* For every JMeter sample, iterationStart method gets invoked, it initializes load generator and for each iteration sets new message as JMeter variable
*
* @param loopIterationEvent
*/
@Override
public void iterationStart(LoopIterationEvent loopIterationEvent) {
//Check if load generator is instantiated
if (generator == null) {
try {
//instantiate plaintext load generator
generator = new PlaintTextLoadGenerator(getJsonSchema());
} catch (Exception e) {
log.error("Failed to create PlaintTextLoadGenerator instance", e);
}
}
//For ever iteration put message in jmeter variables
JMeterVariables variables = JMeterContextService.getContext().getVariables();
variables.putObject(placeHolder, generator.nextMessage());
}
示例2: iterationStart
import org.apache.jmeter.threads.JMeterVariables; //导入方法依赖的package包/类
/**
* For every JMeter sample, iterationStart method gets invoked, it initializes load generator and for each iteration sets new message as JMeter variable
*
* @param loopIterationEvent
*/
@Override
public void iterationStart(LoopIterationEvent loopIterationEvent) {
try {
//Check if load generator is instantiated
if (generator == null) {
//instantiate serialized load generator
generator = new SerializedLoadGenerator(className, objProperties);
}
//For ever iteration put message in jmeter variables
JMeterVariables variables = JMeterContextService.getContext().getVariables();
variables.putObject(placeHolder, generator.nextMessage());
} catch (Exception e) {
log.error("Failed to create PlaintTextLoadGenerator instance", e);
}
}
示例3: isDone
import org.apache.jmeter.threads.JMeterVariables; //导入方法依赖的package包/类
/**
* {@inheritDoc}
*/
@Override
public boolean isDone() {
if (loopCount >= getEndIndex()) {
return true;
}
JMeterContext context = getThreadContext();
StringBuilder builder = new StringBuilder(
getInputVal().length()+getSeparator().length()+3);
String inputVariable =
builder.append(getInputVal())
.append(getSeparator())
.append(Integer.toString(loopCount+1)).toString();
final JMeterVariables variables = context.getVariables();
final Object currentVariable = variables.getObject(inputVariable);
if (currentVariable != null) {
variables.putObject(getReturnVal(), currentVariable);
if (log.isDebugEnabled()) {
log.debug("ForEach resultstring isDone=" + variables.get(getReturnVal()));
}
return false;
}
return super.isDone();
}
示例4: testStarted
import org.apache.jmeter.threads.JMeterVariables; //导入方法依赖的package包/类
@Override
public void testStarted() {
this.setRunningVersion(true);
TestBeanHelper.prepare(this);
JMeterVariables variables = getThreadContext().getVariables();
String poolName = getDataSource();
if(JOrphanUtils.isBlank(poolName)) {
throw new IllegalArgumentException("Variable Name must not be empty for element:"+getName());
} else if (variables.getObject(poolName) != null) {
log.error("JDBC data source already defined for: "+poolName);
} else {
String maxPool = getPoolMax();
perThreadPoolSet = Collections.synchronizedSet(new HashSet<BasicDataSource>());
if (maxPool.equals("0")){ // i.e. if we want per thread pooling
variables.putObject(poolName, new DataSourceComponentImpl()); // pool will be created later
} else {
BasicDataSource src = initPool(maxPool);
synchronized(this){
dbcpDataSource = src;
variables.putObject(poolName, new DataSourceComponentImpl(dbcpDataSource));
}
}
}
}
示例5: testStarted
import org.apache.jmeter.threads.JMeterVariables; //导入方法依赖的package包/类
@Override
@SuppressWarnings("deprecation") // call to TestBeanHelper.prepare() is intentional
public void testStarted() {
this.setRunningVersion(true);
TestBeanHelper.prepare(this);
JMeterVariables variables = getThreadContext().getVariables();
String poolName = getDataSource();
if(JOrphanUtils.isBlank(poolName)) {
throw new IllegalArgumentException("Variable Name must not be empty for element:"+getName());
} else if (variables.getObject(poolName) != null) {
log.error("JDBC data source already defined for: "+poolName);
} else {
String maxPool = getPoolMax();
perThreadPoolSet = Collections.synchronizedSet(new HashSet<ResourceLimitingJdbcDataSource>());
if (maxPool.equals("0")){ // i.e. if we want per thread pooling
variables.putObject(poolName, new DataSourceComponentImpl()); // pool will be created later
} else {
ResourceLimitingJdbcDataSource src=initPool(maxPool);
synchronized(this){
excaliburSource = src;
variables.putObject(poolName, new DataSourceComponentImpl(excaliburSource));
}
}
}
}
示例6: iterationStart
import org.apache.jmeter.threads.JMeterVariables; //导入方法依赖的package包/类
/**
* Initialize the clients for each thread during iteration start
*/
@Override
public void iterationStart(LoopIterationEvent loopIterationEvent) {
if (clients == null) {
clients = new ConcurrentHashMap<>();
}
JMeterVariables variables = JMeterContextService.getContext().getVariables();
variables.putObject("lwm2mClients", clients);
getThreadClient();
}
示例7: iterationStart
import org.apache.jmeter.threads.JMeterVariables; //导入方法依赖的package包/类
@Override
public void iterationStart(LoopIterationEvent loopIterationEvent) {
JMeterContext context = JMeterContextService.getContext();
MartiniResult result;
Martini next = getNext();
JMeterVariables variables = context.getVariables();
if (null == next) {
variables.remove(VARIABLE);
}
else {
variables.putObject(VARIABLE, next);
}
}
示例8: extractClientContextAfterSample
import org.apache.jmeter.threads.JMeterVariables; //导入方法依赖的package包/类
/**
* Store in JMeter Variables the UserToken so that the SSL context is reused
* See <a href="https://bz.apache.org/bugzilla/show_bug.cgi?id=57804">Bug 57804</a>
* @param localContext {@link HttpContext}
*/
private void extractClientContextAfterSample(HttpContext localContext) {
Object userToken = localContext.getAttribute(HttpClientContext.USER_TOKEN);
if(userToken != null) {
if(log.isDebugEnabled()) {
log.debug("Extracted from HttpContext user token:"+userToken+", storing it as JMeter variable:"+USER_TOKEN);
}
// During recording JMeterContextService.getContext().getVariables() is null
JMeterVariables jMeterVariables = JMeterContextService.getContext().getVariables();
if (jMeterVariables != null) {
jMeterVariables.putObject(USER_TOKEN, userToken);
}
}
}
示例9: process
import org.apache.jmeter.threads.JMeterVariables; //导入方法依赖的package包/类
@Override
public void process() {
List<Request> requests = new ArrayList<Request>();
//int capacity = 0;
int num_requests = Integer.parseInt(getNumberOfRequests());
final JMeterVariables vars = JMeterContextService.getContext().getVariables();
vars.put("num_requests", String.valueOf(num_requests));
for(int i=0; i<num_requests; i++)
{
Request request = new Request(getMethod(getCode()), getType(getType()));
request.setMID(this.nextMid());
request.setToken(this.nextToken());
OptionSet options = getOptions();
request.setOptions(options);
request.setPayload(getPayload());
byte[] bytes = new DataSerializer().serializeRequest(request);
request.setBytes(bytes);
requests.add(request);
if (vars != null) {
vars.putObject("request" + i, request);
}
//capacity += request.getBytes().length;
}
/*ByteBuffer buf = ByteBuffer.allocateDirect(capacity);
byte[] dst = new byte[capacity];
for(RawData r : requests)
buf.put(r.getBytes());
buf.flip();
buf.get(dst);
String data = JOrphanUtils.baToHexString(dst);*/
}
示例10: testStarted
import org.apache.jmeter.threads.JMeterVariables; //导入方法依赖的package包/类
@SuppressWarnings("deprecation") // call to TestBeanHelper.prepare() is intentional
public void testStarted() {
this.setRunningVersion(true);
TestBeanHelper.prepare(this);
JMeterVariables variables = getThreadContext().getVariables();
LoadBalancingPolicy loadBalancingPolicy = null;
if (loadBalancer.contentEquals(DC_AWARE_ROUND_ROBIN)) {
// in driver v2.0.2+, we can use the default constructor on
// dcawareroundrobinpolicy
if (localDataCenter.isEmpty()) {
loadBalancingPolicy = new DCAwareRoundRobinPolicy();
} else {
loadBalancingPolicy = new DCAwareRoundRobinPolicy(localDataCenter);
}
} else if (loadBalancer.contentEquals(WHITELIST)) {
loadBalancingPolicy = new WhiteListPolicy(new RoundRobinPolicy(), contactPointsIS);
} else if (loadBalancer.contentEquals(ROUND_ROBIN)) {
loadBalancingPolicy = new RoundRobinPolicy();
} else if (loadBalancer.contentEquals(DC_TOKEN_AWARE)) {
loadBalancingPolicy = new TokenAwarePolicy(new DCAwareRoundRobinPolicy());
} else if (loadBalancer.contentEquals(DEFAULTLOADBALANCER)) {
loadBalancingPolicy = null;
}
Session session = CassandraSessionFactory.createSession(sessionName, contactPointsI, keyspace, username, password, loadBalancingPolicy);
variables.putObject(sessionName, session);
}
示例11: iterationStart
import org.apache.jmeter.threads.JMeterVariables; //导入方法依赖的package包/类
private void iterationStart(JMeterVariables variables) {
Object object = variables.getObject(VARIABLE);
if (null == object) {
variables.putObject(VARIABLE, ref.get());
}
}