package org.sim0mq.demo; import org.djutils.serialization.SerializationException; import org.sim0mq.Sim0MQException; import org.sim0mq.message.Sim0MQMessage; import org.zeromq.SocketType; import org.zeromq.ZContext; import org.zeromq.ZMQ; /** * Client example for JeroMQ / ZeroMQ. *

* (c) copyright 2015-2020 Delft University of Technology.
* BSD-style license. See DSOL License.
* @author Alexander Verbraeck * @version Oct 21, 2016 */ public final class Client { /** */ private Client() { // Utility clss } /** * @param args command line arguments * @throws Sim0MQException on error * @throws SerializationException on serialization problem */ public static void main(final String[] args) throws Sim0MQException, SerializationException { ZContext context = new ZContext(1); // Socket to talk to server System.out.println("Connecting to server..."); ZMQ.Socket requester = context.createSocket(SocketType.REQ); requester.connect("tcp://localhost:5556"); // requester.connect("tcp://131.180.98.169:5556"); // requester.connect("tcp://130.161.3.179:5556"); // send a reply Object[] request = new Object[] { "test message", new Double(14.2), new Float(-28.4), new Short((short) 10) }; requester.send(Sim0MQMessage.encodeUTF8(true, "IDVV14.2", "MC.1", "MM1.4", "TEST.2", 1201L, request), 0); byte[] reply = requester.recv(0); Object[] replyMessage = Sim0MQMessage.decode(reply).createObjectArray(); System.out.println("Received\n" + Sim0MQMessage.print(replyMessage)); requester.close(); context.destroy(); context.close(); } }