Class ITER_MQTTSubscribe

java.lang.Object
fr.mines_stetienne.ci.sparql_generate.iterator.IteratorStreamFunctionBase
fr.mines_stetienne.ci.sparql_generate.mqtt.ITER_MQTTSubscribe
All Implemented Interfaces:
fr.mines_stetienne.ci.sparql_generate.iterator.IteratorFunction

public class ITER_MQTTSubscribe extends fr.mines_stetienne.ci.sparql_generate.iterator.IteratorStreamFunctionBase
Iterator function iter:MQTTSubscribe connects to a MQTT server, subscribes to some topics, and issues bindings for the topic (first variable) and the message (second variable) when they are received.

See Live example

  • Param 1: (a String or URL) the MQTT server. Two types of connection are supported tcp:// for a TCP connection and ssl:// for a TCP connection secured by SSL/TLS;
  • Param 2 .. n (optional, Strings): topics to subscribe to.

For SSL configuration (programmatic or using JVM arguments), see the constructor of MqttClient.

Additional connection OPTIONS configuration can be programmatically set using the MqttConnectOptions returned by getOptions().

The MQTT message (byte[]) is assumed to be a UTF-8 string. This behaviour may may changed using setParser(java.util.function.Function<byte[], org.apache.jena.sparql.expr.NodeValue>) static method.

Since:
2018-10-02
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static org.eclipse.paho.client.mqttv3.MqttConnectOptions
     
    static Function<byte[],​org.apache.jena.sparql.expr.NodeValue>
     
    static String
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    checkBuild​(org.apache.jena.sparql.expr.ExprList args)
     
    void
    exec​(List<org.apache.jena.sparql.expr.NodeValue> args, Consumer<List<List<org.apache.jena.sparql.expr.NodeValue>>> listListNodeValue)
     
    static org.eclipse.paho.client.mqttv3.MqttConnectOptions
     
    static void
    setParser​(Function<byte[],​org.apache.jena.sparql.expr.NodeValue> parser)
     

    Methods inherited from class fr.mines_stetienne.ci.sparql_generate.iterator.IteratorStreamFunctionBase

    build, exec, getContext

    Methods inherited from class java.lang.Object

    equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • URI

      public static final String URI
      See Also:
      Constant Field Values
    • OPTIONS

      public static final org.eclipse.paho.client.mqttv3.MqttConnectOptions OPTIONS
    • PARSER

      public static Function<byte[],​org.apache.jena.sparql.expr.NodeValue> PARSER
  • Constructor Details

    • ITER_MQTTSubscribe

      public ITER_MQTTSubscribe()
  • Method Details

    • setParser

      public static void setParser(Function<byte[],​org.apache.jena.sparql.expr.NodeValue> parser)
    • getOptions

      public static org.eclipse.paho.client.mqttv3.MqttConnectOptions getOptions()
    • checkBuild

      public void checkBuild(org.apache.jena.sparql.expr.ExprList args)
      Specified by:
      checkBuild in class fr.mines_stetienne.ci.sparql_generate.iterator.IteratorStreamFunctionBase
    • exec

      public void exec(List<org.apache.jena.sparql.expr.NodeValue> args, Consumer<List<List<org.apache.jena.sparql.expr.NodeValue>>> listListNodeValue)
      Specified by:
      exec in class fr.mines_stetienne.ci.sparql_generate.iterator.IteratorStreamFunctionBase