From 683914584dbf6d555d15bf31be8e0d6da4260e84 Mon Sep 17 00:00:00 2001 From: Alberto Codutti Date: Tue, 18 Jun 2024 15:02:21 +0200 Subject: [PATCH] :sparkles: [Messaging] Introduced configuration to optionally skip Device.id resolution for KapuaDataMessage Signed-off-by: Alberto Codutti --- .../kura/kapua/TranslatorDataKuraKapua.java | 17 +++++- .../TranslatorKapuaKuraSettingKeys.java | 56 ++++++++++++++++++ .../setting/TranslatorKapuaKuraSettings.java | 57 +++++++++++++++++++ .../translator-kapua-kura-settings.properties | 14 +++++ 4 files changed, 141 insertions(+), 3 deletions(-) create mode 100644 translator/kapua/kura/src/main/java/org/eclipse/kapua/translator/setting/TranslatorKapuaKuraSettingKeys.java create mode 100644 translator/kapua/kura/src/main/java/org/eclipse/kapua/translator/setting/TranslatorKapuaKuraSettings.java create mode 100644 translator/kapua/kura/src/main/resources/translator-kapua-kura-settings.properties diff --git a/translator/kapua/kura/src/main/java/org/eclipse/kapua/translator/kura/kapua/TranslatorDataKuraKapua.java b/translator/kapua/kura/src/main/java/org/eclipse/kapua/translator/kura/kapua/TranslatorDataKuraKapua.java index f4ec4763e4d..89b43d93228 100644 --- a/translator/kapua/kura/src/main/java/org/eclipse/kapua/translator/kura/kapua/TranslatorDataKuraKapua.java +++ b/translator/kapua/kura/src/main/java/org/eclipse/kapua/translator/kura/kapua/TranslatorDataKuraKapua.java @@ -30,6 +30,8 @@ import org.eclipse.kapua.translator.exception.InvalidMessageException; import org.eclipse.kapua.translator.exception.InvalidPayloadException; import org.eclipse.kapua.translator.exception.TranslateException; +import org.eclipse.kapua.translator.setting.TranslatorKapuaKuraSettingKeys; +import org.eclipse.kapua.translator.setting.TranslatorKapuaKuraSettings; /** * {@link Translator} implementation from {@link KuraDataMessage} to {@link KapuaDataMessage} @@ -45,6 +47,12 @@ public class TranslatorDataKuraKapua extends Translator { + + /** + * Setting filename. + * + * @since 2.1.0 + */ + private static final String TRANSLATOR_KAPUA_KURA_SETTING_RESOURCE = "translator-kapua-kura-settings.properties"; + + /** + * The singleton instance of {@link TranslatorKapuaKuraSettings} + * + * @since 2.1.0 + */ + private static final TranslatorKapuaKuraSettings INSTANCE = new TranslatorKapuaKuraSettings(); + + /** + * Constructor. + * + * @since 2.1.0 + */ + public TranslatorKapuaKuraSettings() { + super(TRANSLATOR_KAPUA_KURA_SETTING_RESOURCE); + } + + /** + * Gets the singleton instance of {@link TranslatorKapuaKuraSettings} + * @return The singleton instance of {@link TranslatorKapuaKuraSettings} + * + * @since 2.1.0 + */ + public static TranslatorKapuaKuraSettings getInstance() { + return INSTANCE; + } +} diff --git a/translator/kapua/kura/src/main/resources/translator-kapua-kura-settings.properties b/translator/kapua/kura/src/main/resources/translator-kapua-kura-settings.properties new file mode 100644 index 00000000000..036714020fe --- /dev/null +++ b/translator/kapua/kura/src/main/resources/translator-kapua-kura-settings.properties @@ -0,0 +1,14 @@ +############################################################################### +# Copyright (c) 2024, 2022 Eurotech and/or its affiliates and others +# +# This program and the accompanying materials are made +# available under the terms of the Eclipse Public License 2.0 +# which is available at https://www.eclipse.org/legal/epl-2.0/ +# +# SPDX-License-Identifier: EPL-2.0 +# +# Contributors: +# Eurotech - initial API and implementation +# +############################################################################### +translator.kura.kapua.data.deviceId.resolve=true