Example usage for org.springframework.jms.core JmsTemplate receiveAndConvert

List of usage examples for org.springframework.jms.core JmsTemplate receiveAndConvert

Introduction

In this page you can find the example usage for org.springframework.jms.core JmsTemplate receiveAndConvert.

Prototype

@Override
    @Nullable
    public Object receiveAndConvert() throws JmsException 

Source Link

Usage

From source file:siia.jms.JmsTemplateDemo.java

public static void main(String[] args) {
    ConnectionFactory connectionFactory = new ActiveMQConnectionFactory("vm://localhost");
    JmsTemplate jmsTemplate = new JmsTemplate(connectionFactory);
    jmsTemplate.setDefaultDestination(new ActiveMQQueue("siia.queue"));
    jmsTemplate.convertAndSend("hello world");
    System.out.println("received: " + jmsTemplate.receiveAndConvert());
}

From source file:org.addsimplicity.anicetus.hibernate.HibernateTest.java

@Test
public void testEventCycles() throws Exception {
    TelemetryContext ctx = (TelemetryContext) m_context.getBean("telemetryContext");
    TelemetrySession tsess = ctx.getSession();
    tsess.setOperationName("testSimpleTransaction");

    SessionFactory fact = (SessionFactory) m_context.getBean("sessionFactory");

    m_sess = fact.openSession();//  w ww .  j av  a  2s . c  o  m

    SimpleBean b = new SimpleBean();
    b.setText("xyzzy");

    Transaction t = m_sess.beginTransaction();

    m_sess.save(b);

    t.commit();

    ctx.endSession();

    JmsTemplate tmpl = (JmsTemplate) m_context.getBean("consumeTempl");
    Object obj = tmpl.receiveAndConvert();
    assertNotNull("Object received", obj);
    assertTrue("Type", obj instanceof TelemetrySession);

    TelemetrySession rsess = (TelemetrySession) obj;

    Collection<GlobalInfo> childs = rsess.getChildren();
    assertEquals("Child count", 1, childs.size());

    GlobalInfo c1 = childs.iterator().next();
    assertTrue("Child Type", c1 instanceof HibernateTelemetry);

    HibernateTelemetry telem = (HibernateTelemetry) c1;
    Collection<String> sqls = telem.getSQLStatements();
    assertEquals("SQL Statements", 2, sqls.size());

    for (String sql : sqls) {
        System.out.println(sql);
    }

    Collection<HibernateEntity> ents = telem.getHibernateEntities();
    assertEquals("Entities", 1, ents.size());

    HibernateEntity e = ents.iterator().next();

    assertEquals("Operation", HibernateOperation.Create, e.getOperation());

    System.out.println("Exec ms " + rsess.getDuration());
}

From source file:org.addsimplicity.anicetus.hibernate.HibernateTest.java

@Test
public void testOtherOps() throws Exception {
    TelemetryContext ctx = (TelemetryContext) m_context.getBean("telemetryContext");
    TelemetrySession tsess = ctx.getSession();
    tsess.setOperationName("testSimpleTransaction");

    SessionFactory fact = (SessionFactory) m_context.getBean("sessionFactory");

    m_sess = fact.openSession();//  w  w w. j  a va 2  s  . com

    SimpleBean b = new SimpleBean();
    b.setText("xyzzy");

    Transaction t = m_sess.beginTransaction();

    m_sess.save(b);

    t.commit();

    t = m_sess.beginTransaction();

    b = (SimpleBean) m_sess.load(SimpleBean.class, Long.valueOf(b.getId()));
    assertNotNull("Bean found", b);

    b.setText("abbc");
    b.setDate(new Date(System.currentTimeMillis()));

    m_sess.save(b);

    t.commit();

    t = m_sess.beginTransaction();

    m_sess.delete(b);

    t.commit();

    ctx.endSession();

    JmsTemplate tmpl = (JmsTemplate) m_context.getBean("consumeTempl");
    Object obj = tmpl.receiveAndConvert();
    assertNotNull("Object received", obj);
    assertTrue("Type", obj instanceof TelemetrySession);

    ExecInfo rsess = (ExecInfo) obj;

    Collection<GlobalInfo> childs = rsess.getChildren();
    assertEquals("Child count", 3, childs.size());

    Iterator<GlobalInfo> iter = childs.iterator();
    GlobalInfo gi = iter.next();
    assertTrue("Type", gi instanceof HibernateTelemetry);

    HibernateTelemetry ht = (HibernateTelemetry) gi;

    Collection<HibernateEntity> ents = ht.getHibernateEntities();
    assertEquals("Save 1 ents", 1, ents.size());
    assertEquals("Save 1 op", HibernateOperation.Create, ents.iterator().next().getOperation());

    for (String sql : ht.getSQLStatements()) {
        System.out.println(sql);
    }

    gi = iter.next();
    assertTrue("Type", gi instanceof HibernateTelemetry);

    ht = (HibernateTelemetry) gi;

    for (String sql : ht.getSQLStatements()) {
        System.out.println(sql);
    }

    ents = ht.getHibernateEntities();
    assertEquals("Save 2 ents", 1, ents.size());
    assertEquals("Save 2 op", HibernateOperation.Update, ents.iterator().next().getOperation());

    gi = iter.next();
    assertTrue("Type", gi instanceof HibernateTelemetry);

    ht = (HibernateTelemetry) gi;
    for (String sql : ht.getSQLStatements()) {
        System.out.println(sql);
    }

    ents = ht.getHibernateEntities();
    assertEquals("Delete ents", 1, ents.size());
    assertEquals("Delete op", HibernateOperation.Delete, ents.iterator().next().getOperation());

    Collection<String> tabs = ht.getTables();
    assertEquals("Tables", 1, tabs.size());
    assertEquals("Table Name", "BEANS", tabs.iterator().next());

}

From source file:com.atlantbh.jmeter.plugins.jmstools.JmsUtil.java

@Override
public SampleResult runTest(JavaSamplerContext ctx) {

    SampleResult result = new SampleResult();
    result.setContentType("plain/text");
    result.setDataType(SampleResult.TEXT);
    result.setDataEncoding(SampleResult.DEFAULT_HTTP_ENCODING);

    String connectionUrl = ctx.getParameter("connection.url");
    String bindingUrl = ctx.getParameter("binding.url");
    String message = ctx.getParameter("message");

    if (connectionUrl == null || "".equals(connectionUrl)) {
        result.setSuccessful(false);//from  w  w  w .  j a v a2  s.c o m
        result.setResponseMessage("Connection URL cannot be empty.");
        result.setResponseCode("0xDEAD");
    } else {
        if (bindingUrl == null || "".equals(bindingUrl)) {
            result.setSuccessful(false);
            result.setResponseMessage("Binding URL cannot be empty.");
            result.setResponseCode("0xDEAD");
        } else {
            try {
                ConnectionFactory connectionFactory = new AMQConnectionFactory(connectionUrl);
                AMQBindingURL burl = new AMQBindingURL(bindingUrl);

                Destination destinationProducer = new AMQAnyDestination(burl);
                JmsTemplate sender = new JmsTemplate();
                sender.setConnectionFactory(connectionFactory);
                sender.setDefaultDestination(destinationProducer);
                BinaryMessageConverter bmc = new BinaryMessageConverter();
                sender.setMessageConverter(bmc);

                BinaryMessagepostProcessor postProcessor = new BinaryMessagepostProcessor();

                sender.setDeliveryMode(2);
                int rt = 30000;
                try {
                    rt = Integer.valueOf(ctx.getParameter("receive.timeout"));
                } catch (Exception e) {
                }

                sender.setReceiveTimeout(rt);

                String direction = ctx.getParameter("direction");
                if (direction == null || "".equals(direction)) {
                    direction = "send";
                }
                if (direction.toLowerCase().equals("send")) {
                    Map<String, String> mp = getMessageProperties(ctx.getParameter("header.properties"));
                    postProcessor.setMessageProperties(mp);
                    sender.convertAndSend((Object) message, postProcessor);
                    result.setSuccessful(true);
                    result.setResponseMessage("Message sent.");
                } else {
                    if (direction.toLowerCase().equals("receive")) {

                        System.out.println("Receive");
                        String messageSelector = ctx.getParameter("message.selector");
                        System.out.println("Selector: " + messageSelector);
                        Object obj = null;
                        if (messageSelector != null && !"".equals(messageSelector)) {
                            obj = sender.receiveSelectedAndConvert(messageSelector);
                        } else {
                            obj = sender.receiveAndConvert();
                        }

                        if (obj != null) {
                            result.setSuccessful(true);
                            result.setResponseData(obj.toString().getBytes());
                            String paramName = ctx.getParameter("header.property.reference");
                            if (paramName != null && !"".equals(paramName))
                                JMeterUtils.setProperty(paramName,
                                        concatProperties(bmc.getMessageProperties()));
                        } else {
                            result.setSuccessful(false);
                            result.setResponseData("Conection timeout".getBytes());

                        }

                    } else {
                        result.setSuccessful(false);
                        result.setResponseMessage("Unknown direction.");

                    }
                }
            } catch (Exception e) {
                e.printStackTrace();
                result.setSuccessful(!true);
                result.setResponseMessage("Exception");
                result.setResponseData(e.getMessage().getBytes());
            }

        }

    }

    return result;
}