Lines 31-36
Link Here
|
31 |
import javax.jms.QueueSender; |
31 |
import javax.jms.QueueSender; |
32 |
import javax.jms.QueueSession; |
32 |
import javax.jms.QueueSession; |
33 |
import javax.jms.Session; |
33 |
import javax.jms.Session; |
|
|
34 |
import javax.jms.DeliveryMode; |
34 |
import javax.jms.StreamMessage; |
35 |
import javax.jms.StreamMessage; |
35 |
import javax.jms.TextMessage; |
36 |
import javax.jms.TextMessage; |
36 |
import javax.naming.Context; |
37 |
import javax.naming.Context; |
Lines 45-50
Link Here
|
45 |
import org.apache.jmeter.testelement.ThreadListener; |
46 |
import org.apache.jmeter.testelement.ThreadListener; |
46 |
import org.apache.jmeter.testelement.property.BooleanProperty; |
47 |
import org.apache.jmeter.testelement.property.BooleanProperty; |
47 |
import org.apache.jmeter.testelement.property.TestElementProperty; |
48 |
import org.apache.jmeter.testelement.property.TestElementProperty; |
|
|
49 |
import org.apache.jmeter.util.JMeterUtils; |
48 |
import org.apache.jorphan.logging.LoggingManager; |
50 |
import org.apache.jorphan.logging.LoggingManager; |
49 |
import org.apache.log.Logger; |
51 |
import org.apache.log.Logger; |
50 |
|
52 |
|
Lines 79-84
Link Here
|
79 |
|
81 |
|
80 |
public final static String QUEUE_CONNECTION_FACTORY_JNDI = "JMSSampler.queueconnectionfactory"; |
82 |
public final static String QUEUE_CONNECTION_FACTORY_JNDI = "JMSSampler.queueconnectionfactory"; |
81 |
|
83 |
|
|
|
84 |
public final static String DELIVERY_MODE = "JMSSampler.DeliveryMode"; |
85 |
|
82 |
private static final Logger LOGGER = LoggingManager.getLoggerForClass(); |
86 |
private static final Logger LOGGER = LoggingManager.getLoggerForClass(); |
83 |
|
87 |
|
84 |
// |
88 |
// |
Lines 141-147
Link Here
|
141 |
} else { |
145 |
} else { |
142 |
if (replyMsg instanceof TextMessage) { |
146 |
if (replyMsg instanceof TextMessage) { |
143 |
res.setResponseData(((TextMessage) replyMsg).getText().getBytes()); |
147 |
res.setResponseData(((TextMessage) replyMsg).getText().getBytes()); |
144 |
res.setContentLength(((TextMessage) replyMsg).getText().getBytes().length); |
148 |
res.setContentLength(((TextMessage) replyMsg).getText().getBytes().length); |
145 |
} else { |
149 |
} else { |
146 |
res.setResponseData(replyMsg.toString().getBytes()); |
150 |
res.setResponseData(replyMsg.toString().getBytes()); |
147 |
} |
151 |
} |
Lines 283-303
Link Here
|
283 |
|
287 |
|
284 |
session = connection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE); |
288 |
session = connection.createQueueSession(false, Session.AUTO_ACKNOWLEDGE); |
285 |
|
289 |
|
|
|
290 |
|
291 |
|
286 |
if (LOGGER.isDebugEnabled()) { |
292 |
if (LOGGER.isDebugEnabled()) { |
287 |
LOGGER.debug("Session created"); |
293 |
LOGGER.debug("Session created"); |
288 |
} |
294 |
} |
289 |
|
295 |
|
|
|
296 |
|
290 |
if (getPropertyAsBoolean(IS_ONE_WAY)) { |
297 |
if (getPropertyAsBoolean(IS_ONE_WAY)) { |
291 |
producer = session.createSender(sendQueue); |
298 |
producer = session.createSender(sendQueue); |
|
|
299 |
if(getDeliveryMode().equals(JMeterUtils.getResString("jms_non_persistent"))) { |
300 |
producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT); |
301 |
} |
292 |
} else { |
302 |
} else { |
293 |
|
303 |
|
294 |
if (useTemporyQueue()) { |
304 |
if (useTemporyQueue()) { |
295 |
executor = new TemporaryQueueExecutor(session, sendQueue); |
305 |
executor = new TemporaryQueueExecutor(session, sendQueue); |
296 |
} else { |
306 |
} else { |
297 |
producer = session.createSender(sendQueue); |
307 |
producer = session.createSender(sendQueue); |
|
|
308 |
if(getDeliveryMode().equals(JMeterUtils.getResString("jms_non_persistent"))) { |
309 |
producer.setDeliveryMode(DeliveryMode.NON_PERSISTENT); |
310 |
} |
298 |
executor = new FixedQueueExecutor(producer, getTimeout()); |
311 |
executor = new FixedQueueExecutor(producer, getTimeout()); |
299 |
} |
312 |
} |
300 |
} |
313 |
} |
|
|
314 |
System.out.println("producer.getDeliveryMode() : " + producer.getDeliveryMode()); |
301 |
if (LOGGER.isDebugEnabled()) { |
315 |
if (LOGGER.isDebugEnabled()) { |
302 |
LOGGER.debug("Starting connection"); |
316 |
LOGGER.debug("Starting connection"); |
303 |
} |
317 |
} |
Lines 449-452
Link Here
|
449 |
|
463 |
|
450 |
} |
464 |
} |
451 |
|
465 |
|
|
|
466 |
|
467 |
public String getDeliveryMode() { |
468 |
return getPropertyAsString(DELIVERY_MODE); |
469 |
|
470 |
} |
471 |
|
472 |
public void setDeliveryMode(String string) { |
473 |
setProperty(DELIVERY_MODE, string); |
474 |
|
475 |
} |
476 |
|
452 |
} |
477 |
} |