@Override
  public void setDefault() {
    mqttServer = "";
    topic = "";
    fieldTopic = "";
    qos = "0";
    username = "";
    password = "";

    sslKeys = DEFAULT_SSL_OPTS
      .keySet().stream()
      .sorted()
      .collect( toList() );
    sslValues = sslKeys.stream()
      .map( DEFAULT_SSL_OPTS::get )
      .collect( toList() );

    keepAliveInterval = "";
    maxInflight = "";
    connectionTimeout = "";
    cleanSession = "";
    storageLevel = "";
    serverUris = "";
    mqttVersion = "";
    automaticReconnect = "";
  }
@Test
  public void testSaveDefaultEmpty() throws KettleException {
    MQTTProducerMeta defaultMeta = new MQTTProducerMeta();
    defaultMeta.setDefault();

    MQTTProducerMeta toMeta = new MQTTProducerMeta();
    toMeta.mqttServer = "something that's not default";

    // loadXML into toMeta should overwrite the non-default val.
    toMeta.loadXML( getNode( defaultMeta.getXML() ), emptyList(), metaStore );
    assertEquals( toMeta, defaultMeta );
    assertThat( toMeta.mqttServer, is( "" ) );
  }