summaryrefslogtreecommitdiff
path: root/java/client/src/main/java/org/apache/qpid/nclient/JMSTestCase.java
blob: 4e1b9058e657682768f5f88a86ae471548ecf3e3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
 package org.apache.qpid.nclient;

import java.util.Enumeration;

import javax.jms.ExceptionListener;
import javax.jms.JMSException;
import javax.jms.Message;
import javax.jms.MessageListener;
import javax.jms.Queue;
import javax.jms.QueueBrowser;

import org.apache.qpid.client.AMQConnection;
import org.apache.qpid.client.AMQQueue;
import org.apache.qpid.client.AMQTopic;
import org.apache.qpid.framing.AMQShortString;

public class JMSTestCase
{

    public static void main(String[] args)
    {

        try
        {
            javax.jms.Connection con = new AMQConnection("qpid:password=pass;username=name@tcp:localhost:5672");
            con.start();

            javax.jms.Session ssn = con.createSession(false, 1);

            javax.jms.Destination dest = new AMQQueue(new AMQShortString("direct"),"test");
            javax.jms.MessageProducer prod = ssn.createProducer(dest);
            QueueBrowser browser = ssn.createBrowser((Queue)dest, "Test = 'test'");

            javax.jms.TextMessage msg = ssn.createTextMessage();
            msg.setStringProperty("TEST", "test");
            msg.setText("Should get this");
            prod.send(msg);

            javax.jms.TextMessage msg2 = ssn.createTextMessage();
            msg2.setStringProperty("TEST", "test2");
            msg2.setText("Shouldn't get this");
            prod.send(msg2);


           Enumeration enu = browser.getEnumeration();
           for (;enu.hasMoreElements();)
           {
               System.out.println(enu.nextElement());
               System.out.println("\n");
           }

           javax.jms.MessageConsumer cons = ssn.createConsumer(dest, "Test = 'test'");
           javax.jms.TextMessage m = null; // (javax.jms.TextMessage)cons.receive();
           cons.setMessageListener(new MessageListener()
            {
                public void onMessage(Message m)
                {
                    javax.jms.TextMessage m2 = (javax.jms.TextMessage)m;
                    try
                    {
                        System.out.println("headers : " + m2.toString());
                        System.out.println("m : " + m2.getText());
                        System.out.println("\n\n");
                    }
                    catch(Exception e)
                    {
                        e.printStackTrace();
                    }
                }

            });

           con.setExceptionListener(new ExceptionListener()
           {
               public void onException(JMSException e)
               {
                   e.printStackTrace();
               }
           });

           System.out.println("Waiting");
           while (m == null)
           {

           }

           System.out.println("Exiting");

            /*javax.jms.TextMessage msg = ssn.createTextMessage();
            msg.setText("This is a test message");
            msg.setBooleanProperty("targetMessage", false);
            prod.send(msg);

            msg.setBooleanProperty("targetMessage", true);
            prod.send(msg);

            javax.jms.TextMessage m = (javax.jms.TextMessage)cons.receiveNoWait();

            if (m == null)
            {
               System.out.println("message is null");
            }
            else
            {
               System.out.println("message is not null"  + m);
            }*/

        }
        catch(Exception e)
        {
            e.printStackTrace();
        }
    }

}