/** * */ package frame.mqtt.client.service.impl; import java.util.Date; import org.eclipse.paho.client.mqttv3.IMqttAsyncClient; import org.eclipse.paho.client.mqttv3.IMqttMessageListener; import org.eclipse.paho.client.mqttv3.MqttMessage; import org.junit.After; import org.junit.Before; import org.junit.Ignore; import org.junit.Test; import jframe.mqtt.client.service.impl.Mqttv3ClientImpl; /** * @author dzh * @date Jul 26, 2016 2:02:01 PM * @since 1.0 */ @Ignore public class TestMqttv3ClientImpl { static String ID = "clnt1"; private Mqttv3ClientImpl client; @Before public void start() { client = new Mqttv3ClientImpl(); try { client.init(this.getClass().getResourceAsStream("/mqttclient.properties")); } catch (Exception e) { e.printStackTrace(); } } @Test public void testPublish() { String content = "2222"; MqttMessage message = new MqttMessage(content.getBytes()); message.setQos(1); message.setRetained(true); client.publish(ID, "test/x/y", message); IMqttAsyncClient subClient = null; try { subClient = client.borrowMqttClient(ID); subClient.subscribe("test/+/y", 1, new IMqttMessageListener() { @Override public void messageArrived(String topic, MqttMessage message) throws Exception { System.out.println(topic + "-" + message.toString() + "-" + new Date()); } }); Thread.sleep(2000); } catch (Exception e) { e.printStackTrace(); } finally { client.returnMqttClient(ID, subClient); } } @Test public void testPublish2() { String ID = "clnt2"; String content = "3333"; MqttMessage message = new MqttMessage(content.getBytes()); message.setQos(1); message.setRetained(true); client.publish(ID, "test/x/y", message); IMqttAsyncClient subClient = null; try { subClient = client.borrowMqttClient(ID); subClient.subscribe("test/+/y", 1, new IMqttMessageListener() { @Override public void messageArrived(String topic, MqttMessage message) throws Exception { System.out.println(topic + "-" + message.toString() + "-" + new Date()); } }); Thread.sleep(2000); } catch (Exception e) { e.printStackTrace(); } finally { if (subClient != null) client.returnMqttClient(ID, subClient); } } @After public void stop() { client.stop(); } }