diff --git a/components/application-mgt/org.wso2.carbon.device.application.mgt.core/src/main/java/org/wso2/carbon/device/application/mgt/core/impl/SubscriptionManagerImpl.java b/components/application-mgt/org.wso2.carbon.device.application.mgt.core/src/main/java/org/wso2/carbon/device/application/mgt/core/impl/SubscriptionManagerImpl.java index 2de1094c1f..7ddd76c6cd 100644 --- a/components/application-mgt/org.wso2.carbon.device.application.mgt.core/src/main/java/org/wso2/carbon/device/application/mgt/core/impl/SubscriptionManagerImpl.java +++ b/components/application-mgt/org.wso2.carbon.device.application.mgt.core/src/main/java/org/wso2/carbon/device/application/mgt/core/impl/SubscriptionManagerImpl.java @@ -97,9 +97,11 @@ import java.net.URL; import java.util.ArrayList; import java.util.Arrays; import java.util.HashMap; +import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Properties; +import java.util.Set; import java.util.concurrent.atomic.AtomicBoolean; import java.util.stream.Collectors; @@ -434,7 +436,7 @@ public class SubscriptionManagerImpl implements SubscriptionManager { DeviceManagementProviderService deviceManagementProviderService = HelperUtil .getDeviceManagementProviderService(); GroupManagementProviderService groupManagementProviderService = HelperUtil.getGroupManagementProviderService(); - List devices = new ArrayList<>(); + Set devices = new HashSet<>(); List subscribers = new ArrayList<>(); List errorDeviceIdentifiers = new ArrayList<>(); String deviceTypeName = null; @@ -511,8 +513,10 @@ public class SubscriptionManagerImpl implements SubscriptionManager { devices.removeIf(device -> !tmpDeviceTypeName.equals(device.getType())); } + List deviceList = new ArrayList<>(); + deviceList.addAll(devices); ApplicationSubscriptionInfo applicationSubscriptionInfo = new ApplicationSubscriptionInfo(); - applicationSubscriptionInfo.setDevices(devices); + applicationSubscriptionInfo.setDevices(deviceList); applicationSubscriptionInfo.setSubscribers(subscribers); applicationSubscriptionInfo.setErrorDeviceIdentifiers(errorDeviceIdentifiers); applicationSubscriptionInfo.setAppSupportingDeviceTypeName(deviceTypeName);