[DMAAP-CLIENT] First sonar issues review part2
[dmaap/messagerouter/dmaapclient.git] / src / test / java / org / onap / dmaap / mr / test / clients / SimpleExamplePublisherWithResponse.java
1 /*******************************************************************************
2  *  ============LICENSE_START=======================================================
3  *  org.onap.dmaap
4  *  ================================================================================
5  *  Copyright © 2017 AT&T Intellectual Property. All rights reserved.
6  *  ================================================================================
7  *  Modifications Copyright © 2021 Orange.
8  *  ================================================================================
9  *  Licensed under the Apache License, Version 2.0 (the "License");
10  *  you may not use this file except in compliance with the License.
11  *  You may obtain a copy of the License at
12  *        http://www.apache.org/licenses/LICENSE-2.0
13  *
14  *  Unless required by applicable law or agreed to in writing, software
15  *  distributed under the License is distributed on an "AS IS" BASIS,
16  *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17  *  See the License for the specific language governing permissions and
18  *  limitations under the License.
19  *  ============LICENSE_END=========================================================
20  *
21  *  ECOMP is a trademark and service mark of AT&T Intellectual Property.
22  *
23  *******************************************************************************/
24
25 package org.onap.dmaap.mr.test.clients;
26
27 import org.json.JSONObject;
28 import org.onap.dmaap.mr.client.MRBatchingPublisher;
29 import org.onap.dmaap.mr.client.MRClientFactory;
30 import org.onap.dmaap.mr.client.response.MRPublisherResponse;
31
32 import java.io.File;
33 import java.io.FileReader;
34 import java.io.FileWriter;
35 import java.io.IOException;
36 import java.util.Properties;
37
38 /**
39  * An example of how to use the Java publisher.
40  *
41  * @author author
42  */
43 public class SimpleExamplePublisherWithResponse {
44     static FileWriter routeWriter = null;
45     static Properties props = null;
46     static FileReader routeReader = null;
47
48     public static void main(String[] args) throws InterruptedException, Exception {
49
50         String routeFilePath = "src/main/resources/dme2/preferredRoute.txt";
51         String msgCount = args[0];
52         SimpleExamplePublisherWithResponse publisher = new SimpleExamplePublisherWithResponse();
53         File fo = new File(routeFilePath);
54         if (!fo.exists()) {
55             routeWriter = new FileWriter(new File(routeFilePath));
56         }
57         routeReader = new FileReader(new File(routeFilePath));
58         props = new Properties();
59         int i = 0;
60         while (i < Integer.valueOf(msgCount)) {
61             publisher.publishMessage("src/main/resources/dme2/producer.properties", Integer.valueOf(msgCount));
62             i++;
63         }
64     }
65
66     public void publishMessage(String producerFilePath, int count) throws IOException, InterruptedException {
67         // create our publisher
68         final MRBatchingPublisher pub = MRClientFactory.createBatchingPublisher(producerFilePath, true);
69         // publish some messages
70         final JSONObject msg1 = new JSONObject();
71
72         msg1.put("Partition:1", "Message:" + count);
73         msg1.put("greeting", "Hello  ..");
74
75
76         pub.send("1", msg1.toString());
77         pub.send("1", msg1.toString());
78
79         MRPublisherResponse res = pub.sendBatchWithResponse();
80
81         System.out.println("Pub response->" + res.toString());
82     }
83
84
85 }