Class SinapsiAlfaAdapter
java.lang.Object
energy.eddie.aiida.adapters.datasource.DataSourceAdapter<SinapsiAlfaDataSource>
energy.eddie.aiida.adapters.datasource.MqttDataSourceAdapter<SinapsiAlfaDataSource>
energy.eddie.aiida.adapters.datasource.it.SinapsiAlfaAdapter
- All Implemented Interfaces:
AutoCloseable,org.eclipse.paho.mqttv5.client.MqttCallback,org.springframework.boot.actuate.health.HealthContributor,org.springframework.boot.actuate.health.HealthIndicator
-
Field Summary
Fields inherited from class energy.eddie.aiida.adapters.datasource.MqttDataSourceAdapter
asyncClientFields inherited from class energy.eddie.aiida.adapters.datasource.DataSourceAdapter
dataSource, healthSink, recordSink -
Constructor Summary
ConstructorsConstructorDescriptionSinapsiAlfaAdapter(SinapsiAlfaDataSource dataSource, com.fasterxml.jackson.databind.ObjectMapper mapper, MqttConfiguration mqttConfiguration) Creates the datasource for the Sinapsi ALFA adapter. -
Method Summary
Modifier and TypeMethodDescriptionprotected org.eclipse.paho.mqttv5.client.MqttConnectionOptionsvoidmessageArrived(String topic, org.eclipse.paho.mqttv5.common.MqttMessage message) MQTT callback function that is called when a new message from the broker is received.Methods inherited from class energy.eddie.aiida.adapters.datasource.MqttDataSourceAdapter
authPacketArrived, close, connectComplete, deliveryComplete, disconnected, health, mqttErrorOccurred, setKeepAliveInterval, start, subscribeToHealthTopicMethods inherited from class energy.eddie.aiida.adapters.datasource.DataSourceAdapter
create, dataSource, emitAiidaRecordMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.springframework.boot.actuate.health.HealthIndicator
getHealth
-
Constructor Details
-
SinapsiAlfaAdapter
public SinapsiAlfaAdapter(SinapsiAlfaDataSource dataSource, com.fasterxml.jackson.databind.ObjectMapper mapper, MqttConfiguration mqttConfiguration) Creates the datasource for the Sinapsi ALFA adapter. It connects to the specified MQTT broker and expects that the adapter publishes its JSON messages on the specified topic. Any OBIS code without a time field will be assigned a Unix timestamp of 0.- Parameters:
dataSource- The entity of the data source.mapper-ObjectMapperthat is used to deserialize the JSON messages.mqttConfiguration- The MQTT configuration that is used to connect to the MQTT broker.
-
-
Method Details
-
messageArrived
MQTT callback function that is called when a new message from the broker is received. Will convert the message toAiidaRecords and publish them on the Flux returned byMqttDataSourceAdapter.start().- Parameters:
topic- Name of the topic, the message was published to.message- The actual message.
-
createConnectOptions
protected org.eclipse.paho.mqttv5.client.MqttConnectionOptions createConnectOptions()- Overrides:
createConnectOptionsin classMqttDataSourceAdapter<SinapsiAlfaDataSource>
-