Files
IM-server-new/tools_scripts/integration/issue88_reconnect_after_bad_credentials.groovy
T

58 lines
2.0 KiB
Groovy

//@Grab(group='org.fusesource.mqtt-client', module='mqtt-client', version='1.10')
@GrabResolver(name='Paho', root="https://repo.eclipse.org/content/repositories/paho-releases/")
@Grab(group='org.eclipse.paho', module='org.eclipse.paho.client.mqttv3', version='1.0.2')
import org.eclipse.paho.client.mqttv3.MqttClient
import org.eclipse.paho.client.mqttv3.MqttConnectOptions
import org.eclipse.paho.client.mqttv3.persist.MqttDefaultFilePersistence
import org.eclipse.paho.client.mqttv3.MqttException
MqttDefaultFilePersistence subDataStore = new MqttDefaultFilePersistence("/tmp/sub")
MqttClient subClient = new MqttClient("tcp://localhost:1883", "ConnectTestCLI", subDataStore)
MqttConnectOptions connectOptions = new MqttConnectOptions()
connectOptions.setUserName("gino")
connectOptions.setPassword("fake".toCharArray())
connectOptions.setKeepAliveInterval(5)
println "Before connect with bad"
try {
subClient.connect(connectOptions)
} catch (MqttException mex) {
println "OK, catched connect with bad credentials, wait 4x keepalive"
sleep(20 * 1000)
}
println "Before connect with ok credentials"
connectOptions = new MqttConnectOptions()
connectOptions.setUserName("testuser")
connectOptions.setPassword("passwd".toCharArray())
subClient.connect(connectOptions)
println "Successfull connected"
subClient.disconnect()
println "Finished!"
//import org.fusesource.mqtt.client.BlockingConnection
//import org.fusesource.mqtt.client.MQTT
//"Usage: groovy issue88_reconnect_after_bad_credentials.groovy"
//MQTT mqtt = new MQTT()
//def host = "localhost"
//mqtt.setCleanSession(true)
//mqtt.setHost(host, 1883)
//mqtt.setUserName("gino")
//mqtt.setPassword("fake")
//
//mqtt.setClientId("BadConnecter_client")
//BlockingConnection connection = mqtt.blockingConnection()
//connection.connect()
//
////try a valid conn
//mqtt.setUserName("testuser")
//mqtt.setPassword("passwd")
//connection = mqtt.blockingConnection()
//connection.connect()
//
//connection.disconnect()
//println "exited"