KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > apache > activemq > tool > Producer


1 /**
2  *
3  * Licensed to the Apache Software Foundation (ASF) under one or more
4  * contributor license agreements. See the NOTICE file distributed with
5  * this work for additional information regarding copyright ownership.
6  * The ASF licenses this file to You under the Apache License, Version 2.0
7  * (the "License"); you may not use this file except in compliance with
8  * the License. You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software
13  * distributed under the License is distributed on an "AS IS" BASIS,
14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15  * See the License for the specific language governing permissions and
16  * limitations under the License.
17  */

18 package org.apache.activemq.tool;
19
20 import javax.jms.Connection JavaDoc;
21 import javax.jms.ConnectionFactory JavaDoc;
22 import javax.jms.DeliveryMode JavaDoc;
23 import javax.jms.Destination JavaDoc;
24 import javax.jms.JMSException JavaDoc;
25 import javax.jms.Message JavaDoc;
26 import javax.jms.MessageProducer JavaDoc;
27 import javax.jms.Session JavaDoc;
28 /**
29  * @version $Revision: 1.3 $
30  */

31 public class Producer{
32     protected Connection JavaDoc connection;
33     protected MessageProducer JavaDoc producer;
34     public Producer(ConnectionFactory JavaDoc fac,Destination JavaDoc dest) throws JMSException JavaDoc{
35         connection=fac.createConnection();
36         Session JavaDoc s=connection.createSession(false,Session.AUTO_ACKNOWLEDGE);
37         producer=s.createProducer(dest);
38     }
39     public void setDeliveryMode(int mode) throws JMSException JavaDoc{
40         producer.setDeliveryMode(mode);
41     }
42     public void start() throws JMSException JavaDoc{
43         connection.start();
44     }
45     public void stop() throws JMSException JavaDoc{
46         connection.stop();
47     }
48     public void shutDown() throws JMSException JavaDoc{
49         connection.close();
50     }
51
52     public void sendMessage(Message JavaDoc msg) throws JMSException JavaDoc {
53         sendMessage(msg, null,0);
54     }
55
56     /*
57     * allow producer to attach message counter on its header. This will be used to verify message order
58     *
59     */

60     public void sendMessage(Message JavaDoc msg, String JavaDoc headerName, long headerValue) throws JMSException JavaDoc{
61         if(headerName != null) {
62             msg.setLongProperty(headerName, headerValue);
63         }
64
65         producer.send(msg);
66
67     }
68
69 }
70
Popular Tags