From 4faa740c9d288894a758b5e4c58c18a2b170ab19 Mon Sep 17 00:00:00 2001 From: inosh-perera Date: Tue, 10 Nov 2015 17:36:30 +0530 Subject: [PATCH 1/2] Fixing JIRA EMM-947 - only the registered device types are returned to UI --- .../DeviceManagementPluginRepository.java | 4 ++ .../DeviceManagementProviderServiceImpl.java | 45 ++++++++++++------- 2 files changed, 34 insertions(+), 15 deletions(-) diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/DeviceManagementPluginRepository.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/DeviceManagementPluginRepository.java index ae94f52811..58263e2b25 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/DeviceManagementPluginRepository.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/DeviceManagementPluginRepository.java @@ -65,6 +65,10 @@ public class DeviceManagementPluginRepository implements DeviceManagerStartupLis return providers.get(type); } + public Map getAllDeviceManagementServices() { + return providers; + } + @Override public void notifyObserver() { synchronized (providers) { diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderServiceImpl.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderServiceImpl.java index 8eed2efc67..3caaf9585a 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderServiceImpl.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderServiceImpl.java @@ -47,6 +47,7 @@ import java.sql.SQLException; import java.util.ArrayList; import java.util.Date; import java.util.List; +import java.util.Map; public class DeviceManagementProviderServiceImpl implements DeviceManagementProviderService, PluginInitializationListener { @@ -635,21 +636,35 @@ public class DeviceManagementProviderServiceImpl implements DeviceManagementProv return device; } - @Override - public List getAvailableDeviceTypes() throws DeviceManagementException { - List deviceTypes; - try { - DeviceManagementDAOFactory.openConnection(); - deviceTypes = deviceDAO.getDeviceTypes(); - } catch (DeviceManagementDAOException e) { - throw new DeviceManagementException("Error occurred while obtaining the device types.", e); - } catch (SQLException e) { - throw new DeviceManagementException("Error occurred while opening a connection to the data source", e); - } finally { - DeviceManagementDAOFactory.closeConnection(); - } - return deviceTypes; - } + @Override + public List getAvailableDeviceTypes() throws DeviceManagementException { + List deviceTypesInDatabase; + List deviceTypesResponse = new ArrayList<>(); + try { + DeviceManagementDAOFactory.openConnection(); + deviceTypesInDatabase = deviceDAO.getDeviceTypes(); + Map registeredTypes = pluginRepository.getAllDeviceManagementServices(); + DeviceType deviceType; + + if (registeredTypes != null && deviceTypesInDatabase != null) { + for (int x = 0; x < deviceTypesInDatabase.size(); x++) { + if (registeredTypes.get(deviceTypesInDatabase.get(x).getName()) != null) { + deviceType = new DeviceType(); + deviceType.setId(deviceTypesInDatabase.get(x).getId()); + deviceType.setName(deviceTypesInDatabase.get(x).getName()); + deviceTypesResponse.add(deviceType); + } + } + } + } catch (DeviceManagementDAOException e) { + throw new DeviceManagementException("Error occurred while obtaining the device types.", e); + } catch (SQLException e) { + throw new DeviceManagementException("Error occurred while opening a connection to the data source", e); + } finally { + DeviceManagementDAOFactory.closeConnection(); + } + return deviceTypesResponse; + } @Override public boolean updateDeviceInfo(DeviceIdentifier deviceId, Device device) throws DeviceManagementException { From 2fd0101ed30ca77b2817a97f753911d529c50dec Mon Sep 17 00:00:00 2001 From: geethkokila Date: Tue, 10 Nov 2015 18:08:57 +0530 Subject: [PATCH 2/2] Fixing the identity version and kernel version --- pom.xml | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/pom.xml b/pom.xml index 18edc0b79c..e52c77573e 100644 --- a/pom.xml +++ b/pom.xml @@ -501,6 +501,10 @@ org.wso2.carbon org.wso2.carbon.user.api + + xerces.wso2 + xercesImpl + @@ -597,6 +601,10 @@ commons-collections.wso2 commons-collections + + xerces.wso2 + xercesImpl + @@ -825,6 +833,10 @@ javax.servlet servlet-api + + xerces + xercesImpl + @@ -1427,7 +1439,7 @@ 6.1.1 - 4.4.1 + 4.4.2 1.5.4 1.3 @@ -1471,7 +1483,7 @@ 5.0.2 - 4.5.0-m1 + 4.5.0 4.4.8