Class InboundDataSource
java.lang.Object
energy.eddie.aiida.models.datasource.DataSource
energy.eddie.aiida.models.datasource.mqtt.MqttDataSource
energy.eddie.aiida.models.datasource.mqtt.inbound.InboundDataSource
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected Stringprotected Permissionprotected static final StringFields inherited from class energy.eddie.aiida.models.datasource.mqtt.MqttDataSource
accessControlEntry, mqttConnection, TOPIC_PREFIXFields inherited from class energy.eddie.aiida.models.datasource.DataSource
asset, countryCode, enabled, icon, id, image, meterId, name, operatorId, permissions, type, userId -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedInboundDataSource(InboundDataSourceDto dto, UUID userId, Permission permission) InboundDataSource(InboundDataSourceDto dto, UUID userId, Permission permission, String accessCode) -
Method Summary
Modifier and TypeMethodDescriptionvoidchangeInboundProvisioningType(InboundProvisioningType inboundProvisioningType) Changes the inbound provisioning type.protected voidThis method creates the Access Control Entry for a MQTT data source using the ID of the data source.protected voidestablishClientModeConnection(String host, String username, String password, String topic) Configures MQTT client-mode provisioning with externally supplied broker credentials and activates that mode.establishServerModeConnection(MqttConfiguration mqttConfig, org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder encoder, String plaintextPassword) Configures MQTT server-mode provisioning using the local broker configuration and activates that mode.protected voidresetServerModePassword(org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder encoder, String plaintextPassword) schemas()voidupdateAccessCode(String accessCode) Methods inherited from class energy.eddie.aiida.models.datasource.mqtt.MqttDataSource
configure, internalHost, password, topic, topicFormattedForUi, updatePassword, updatePassword, usernameMethods inherited from class energy.eddie.aiida.models.datasource.DataSource
asset, countryCode, createFromDto, enabled, icon, id, image, meterId, name, operatorId, permissions, setEnabled, setImage, type, update, userId
-
Field Details
-
TABLE_NAME
- See Also:
-
accessCode
-
permission
-
-
Constructor Details
-
InboundDataSource
protected InboundDataSource() -
InboundDataSource
public InboundDataSource(InboundDataSourceDto dto, UUID userId, Permission permission) throws MissingMqttStreamingConfigException -
InboundDataSource
public InboundDataSource(InboundDataSourceDto dto, UUID userId, Permission permission, String accessCode) throws MissingMqttStreamingConfigException
-
-
Method Details
-
establishServerModeConnection
public MqttProvisioningConnectionDto establishServerModeConnection(MqttConfiguration mqttConfig, org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder encoder, String plaintextPassword) Configures MQTT server-mode provisioning using the local broker configuration and activates that mode. A unique username is created and the supplied plaintext password is encoded before it is stored.- Parameters:
mqttConfig- Local MQTT broker configuration.encoder- Encoder used to protect the generated credential before storage.plaintextPassword- Plaintext password generated for the provisioning connection.- Returns:
- The connection details stored for server-mode provisioning.
-
accessCode
-
updateAccessCode
-
permission
-
schemas
-
acknowledgementTopic
-
inboundProvisioningType
-
provisioningConnection
-
provisioningTopic
-
changeInboundProvisioningType
Changes the inbound provisioning type. Switching to a REST type also removes any stored MQTT provisioning connection and access-control entry. -
establishClientModeConnection
public MqttProvisioningConnectionDto establishClientModeConnection(String host, String username, String password, String topic) Configures MQTT client-mode provisioning with externally supplied broker credentials and activates that mode.- Returns:
- The connection details stored for client-mode provisioning.
-
resetServerModePassword
public MqttProvisioningConnectionDto resetServerModePassword(org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder encoder, String plaintextPassword) throws ProvisioningConfigurationException -
postPersist
- Overrides:
postPersistin classMqttDataSource- Throws:
MissingMqttStreamingConfigException
-
createMqttUser
- Overrides:
createMqttUserin classMqttDataSource- Throws:
MissingMqttStreamingConfigException
-
createAccessControlEntry
Description copied from class:MqttDataSourceThis method creates the Access Control Entry for a MQTT data source using the ID of the data source. This is the default behaviour of a MQTT data source.- Overrides:
createAccessControlEntryin classMqttDataSource- Throws:
MissingMqttStreamingConfigException
-