aboutsummaryrefslogtreecommitdiffstats
path: root/src/main/java/com/att/nsa/mr/test/clients/SimpleExamplePublisherWithResponse.java
blob: 4914688e9577214762f3be2555d574bb286fdc3b (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
/*******************************************************************************
 *  ============LICENSE_START=======================================================
 *  org.onap.dmaap
 *  ================================================================================
 *  Copyright © 2017 AT&T Intellectual Property. All rights reserved.
 *  ================================================================================
 *  Licensed under the Apache License, Version 2.0 (the "License");
 *  you may not use this file except in compliance with the License.
 *  You may obtain a copy of the License at
 *        http://www.apache.org/licenses/LICENSE-2.0
 *  
 *  Unless required by applicable law or agreed to in writing, software
 *  distributed under the License is distributed on an "AS IS" BASIS,
 *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 *  See the License for the specific language governing permissions and
 *  limitations under the License.
 *  ============LICENSE_END=========================================================
 *
 *  ECOMP is a trademark and service mark of AT&T Intellectual Property.
 *  
 *******************************************************************************/
package com.att.nsa.mr.test.clients;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.List;
import java.util.Properties;
import java.util.concurrent.TimeUnit;
import org.json.JSONObject;
import com.att.nsa.mr.client.MRBatchingPublisher;
import com.att.nsa.mr.client.MRClientFactory;
import com.att.nsa.mr.client.response.MRPublisherResponse;
	/**
	 *An example of how to use the Java publisher. 
	 * @author author
	 *
	 */
	public class SimpleExamplePublisherWithResponse
	{
		static FileWriter routeWriter= null;
		static Properties props=null;	
		static FileReader routeReader=null;
		
		public static void main(String []args) throws InterruptedException, Exception{
			
			String routeFilePath="src/main/resources/dme2/preferredRoute.txt";
			String msgCount = args[0];
			SimpleExamplePublisherWithResponse publisher = new SimpleExamplePublisherWithResponse();
			File fo= new File(routeFilePath);
			if(!fo.exists()){
					routeWriter=new FileWriter(new File (routeFilePath));
			}	
			routeReader= new FileReader(new File (routeFilePath));
			props= new Properties();
			int i=0;
			while (i< Integer.valueOf(msgCount))
			{
				publisher.publishMessage("src/main/resources/dme2/producer.properties",Integer.valueOf(msgCount));
				i++;
			}
		}
		
		public void publishMessage ( String producerFilePath , int count ) throws IOException, InterruptedException, Exception
		{
			// create our publisher
			final MRBatchingPublisher pub = MRClientFactory.createBatchingPublisher (producerFilePath,true);	
			// publish some messages
			final JSONObject msg1 = new JSONObject ();

			msg1.put ( "Partition:1", "Message:"+count);
			msg1.put ( "greeting", "Hello  .." );
			
			
			pub.send ( "1", msg1.toString());
			pub.send ( "1", msg1.toString());
			
			MRPublisherResponse res= pub.sendBatchWithResponse();
			
			System.out.println("Pub response->"+res.toString());
		}
		
		
	}