From be99ca571b7b780239c1709801466a287b84c972 Mon Sep 17 00:00:00 2001 From: Rasika Perera Date: Mon, 1 May 2017 18:54:01 +0530 Subject: [PATCH] #665 : Fixing java.lang.IllegalStateException: Tenant ID cannot be -1 issue --- .../device/mgt/input/adapter/mqtt/MQTTEventAdapter.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/components/extensions/cdmf-transport-adapters/input/org.wso2.carbon.device.mgt.input.adapter.mqtt/src/main/java/org/wso2/carbon/device/mgt/input/adapter/mqtt/MQTTEventAdapter.java b/components/extensions/cdmf-transport-adapters/input/org.wso2.carbon.device.mgt.input.adapter.mqtt/src/main/java/org/wso2/carbon/device/mgt/input/adapter/mqtt/MQTTEventAdapter.java index 68f515a3cd..af5cb0c283 100644 --- a/components/extensions/cdmf-transport-adapters/input/org.wso2.carbon.device.mgt.input.adapter.mqtt/src/main/java/org/wso2/carbon/device/mgt/input/adapter/mqtt/MQTTEventAdapter.java +++ b/components/extensions/cdmf-transport-adapters/input/org.wso2.carbon.device.mgt.input.adapter.mqtt/src/main/java/org/wso2/carbon/device/mgt/input/adapter/mqtt/MQTTEventAdapter.java @@ -18,10 +18,9 @@ package org.wso2.carbon.device.mgt.input.adapter.mqtt; import org.wso2.carbon.context.PrivilegedCarbonContext; -import org.wso2.carbon.device.mgt.input.adapter.mqtt.internal.InputAdapterServiceDataHolder; import org.wso2.carbon.device.mgt.input.adapter.mqtt.util.MQTTAdapterListener; -import org.wso2.carbon.device.mgt.input.adapter.mqtt.util.MQTTEventAdapterConstants; import org.wso2.carbon.device.mgt.input.adapter.mqtt.util.MQTTBrokerConnectionConfiguration; +import org.wso2.carbon.device.mgt.input.adapter.mqtt.util.MQTTEventAdapterConstants; import org.wso2.carbon.event.input.adapter.core.InputEventAdapter; import org.wso2.carbon.event.input.adapter.core.InputEventAdapterConfiguration; import org.wso2.carbon.event.input.adapter.core.InputEventAdapterListener; @@ -58,6 +57,10 @@ public class MQTTEventAdapter implements InputEventAdapter { ,globalProperties); String topic = eventAdapterConfiguration.getProperties().get(MQTTEventAdapterConstants.ADAPTER_MESSAGE_TOPIC); String tenantDomain = topic.split("/")[0]; + if (tenantDomain.equals("${tenant-domain}")) { + tenantDomain = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantDomain(); + topic = topic.replaceAll("\\$\\{tenant-domain\\}", tenantDomain); + } mqttAdapterListener = new MQTTAdapterListener(mqttBrokerConnectionConfiguration ,topic ,eventAdapterConfiguration