From 1736d5db3e9260dfc84ed21ca78b5f7c0db36733 Mon Sep 17 00:00:00 2001 From: harshanL Date: Thu, 12 Feb 2015 18:32:06 +0530 Subject: [PATCH] CDMF-8 fixes --- .../carbon/device/mgt/core/DeviceManager.java | 24 +- .../device/mgt/core/DeviceManagerImpl.java | 310 ++++++++++-------- .../config/DeviceConfigurationManager.java | 61 ++-- .../config/DeviceManagementRepository.java | 2 +- .../config/LicenseConfigurationManager.java | 60 ++-- .../config/datasource/DataSourceConfig.java | 3 +- .../datasource/JNDILookupDefinition.java | 2 +- .../carbon/device/mgt/core/dao/DeviceDAO.java | 5 +- .../dao/DeviceManagementDAOException.java | 2 +- .../core/dao/DeviceManagementDAOFactory.java | 101 +++--- .../device/mgt/core/dao/DeviceTypeDAO.java | 15 +- .../mgt/core/dao/impl/DeviceDAOImpl.java | 39 ++- .../dao/util/DeviceManagementDAOUtil.java | 223 ++++++------- .../DeviceManagementServiceComponent.java | 215 ++++++------ .../core/service/DeviceManagementService.java | 125 +++---- .../service/LicenseManagementService.java | 10 +- .../DeviceManagementSchemaInitializer.java | 31 +- .../mgt/core/util/DeviceManagerUtil.java | 20 +- 18 files changed, 658 insertions(+), 590 deletions(-) diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/DeviceManager.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/DeviceManager.java index ad95758d32..1f2c4df376 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/DeviceManager.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/DeviceManager.java @@ -31,26 +31,28 @@ import java.util.List; */ public interface DeviceManager { - public boolean enrollDevice(Device device) throws DeviceManagementException; + public boolean enrollDevice(Device device) throws DeviceManagementException; - public boolean modifyEnrollment(Device device) throws DeviceManagementException; + public boolean modifyEnrollment(Device device) throws DeviceManagementException; - public boolean disenrollDevice(DeviceIdentifier deviceId) throws DeviceManagementException; + public boolean disenrollDevice(DeviceIdentifier deviceId) throws DeviceManagementException; - public boolean isEnrolled(DeviceIdentifier deviceId) throws DeviceManagementException; + public boolean isEnrolled(DeviceIdentifier deviceId) throws DeviceManagementException; - public boolean isActive(DeviceIdentifier deviceId) throws DeviceManagementException; + public boolean isActive(DeviceIdentifier deviceId) throws DeviceManagementException; - public boolean setActive(DeviceIdentifier deviceId, boolean status) throws DeviceManagementException; + public boolean setActive(DeviceIdentifier deviceId, boolean status) + throws DeviceManagementException; - public List getAllDevices(String type) throws DeviceManagementException; + public List getAllDevices(String type) throws DeviceManagementException; - public Device getDevice(DeviceIdentifier deviceId) throws DeviceManagementException; + public Device getDevice(DeviceIdentifier deviceId) throws DeviceManagementException; - public boolean updateDeviceInfo(Device device) throws DeviceManagementException; + public boolean updateDeviceInfo(Device device) throws DeviceManagementException; - public boolean setOwnership(DeviceIdentifier deviceId, String ownershipType) throws DeviceManagementException; + public boolean setOwnership(DeviceIdentifier deviceId, String ownershipType) + throws DeviceManagementException; - public OperationManager getOperationManager(String type) throws DeviceManagementException; + public OperationManager getOperationManager(String type) throws DeviceManagementException; } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/DeviceManagerImpl.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/DeviceManagerImpl.java index 99a56fb8fb..64ebbf0e46 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/DeviceManagerImpl.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/DeviceManagerImpl.java @@ -38,149 +38,169 @@ import java.util.List; public class DeviceManagerImpl implements DeviceManager { - private static Log log = LogFactory.getLog(DeviceManagerImpl.class); - private DeviceDAO deviceDAO; - private DeviceTypeDAO deviceTypeDAO; - private DeviceManagementConfig config; - private DeviceManagementRepository pluginRepository; - - public DeviceManagerImpl(DeviceManagementConfig config, DeviceManagementRepository pluginRepository) { - this.config = config; - this.pluginRepository = pluginRepository; - this.deviceDAO = DeviceManagementDAOFactory.getDeviceDAO(); - this.deviceTypeDAO = DeviceManagementDAOFactory.getDeviceTypeDAO(); - } - - @Override - public boolean enrollDevice(Device device) throws DeviceManagementException { - DeviceManagerService dms = this.getPluginRepository().getDeviceManagementProvider(device.getType()); - boolean status = dms.enrollDevice(device); - try { - org.wso2.carbon.device.mgt.core.dto.Device deviceDto = DeviceManagementDAOUtil.convertDevice(device); - Integer deviceTypeId = this.getDeviceTypeDAO().getDeviceTypeIdByDeviceTypeName(device.getType()); - deviceDto.setStatus(Status.ACTIVE); - deviceDto.setDeviceTypeId(deviceTypeId); - this.getDeviceDAO().addDevice(deviceDto); - } catch (DeviceManagementDAOException e) { - throw new DeviceManagementException("Error occurred while enrolling the device '" + device.getId() + "'", - e); - } - return status; - } - - @Override - public boolean modifyEnrollment(Device device) throws DeviceManagementException { - DeviceManagerService dms = this.getPluginRepository().getDeviceManagementProvider(device.getType()); - boolean status = dms.modifyEnrollment(device); - try { - this.getDeviceDAO().updateDevice(DeviceManagementDAOUtil.convertDevice(device)); - } catch (DeviceManagementDAOException e) { - throw new DeviceManagementException("Error occurred while modifying the device '" + device.getId() + "'", - e); - } - return status; - } - - @Override - public boolean disenrollDevice(DeviceIdentifier deviceId) throws DeviceManagementException { - DeviceManagerService dms = this.getPluginRepository().getDeviceManagementProvider(deviceId.getType()); - return dms.disenrollDevice(deviceId); - } - - @Override - public boolean isEnrolled(DeviceIdentifier deviceId) throws DeviceManagementException { - DeviceManagerService dms = this.getPluginRepository().getDeviceManagementProvider(deviceId.getType()); - return dms.isEnrolled(deviceId); - } - - @Override - public boolean isActive(DeviceIdentifier deviceId) throws DeviceManagementException { - DeviceManagerService dms = this.getPluginRepository().getDeviceManagementProvider(deviceId.getType()); - return dms.isActive(deviceId); - } - - @Override - public boolean setActive(DeviceIdentifier deviceId, boolean status) throws DeviceManagementException { - DeviceManagerService dms = this.getPluginRepository().getDeviceManagementProvider(deviceId.getType()); - return dms.setActive(deviceId, status); - } - - @Override - public List getAllDevices(String type) throws DeviceManagementException { - DeviceManagerService dms = this.getPluginRepository().getDeviceManagementProvider(type); - List devicesList = new ArrayList(); - try { - Integer deviceTypeId = this.getDeviceTypeDAO().getDeviceTypeIdByDeviceTypeName(type); - List devices = this.getDeviceDAO().getDevices(deviceTypeId); - - for (org.wso2.carbon.device.mgt.core.dto.Device device : devices) { - DeviceType deviceType = this.deviceTypeDAO.getDeviceType(device.getDeviceTypeId()); - Device convertedDevice = DeviceManagementDAOUtil.convertDevice(device, deviceType); - DeviceIdentifier deviceIdentifier = DeviceManagementDAOUtil.createDeviceIdentifier(device, deviceType); - Device dmsDevice = dms.getDevice(deviceIdentifier); - if (dmsDevice != null) { - convertedDevice.setProperties(dmsDevice.getProperties()); - convertedDevice.setFeatures(dmsDevice.getFeatures()); - } - devicesList.add(convertedDevice); - } - } catch (DeviceManagementDAOException e) { - throw new DeviceManagementException("Error occurred while obtaining the device for type '" + type + "'", e); - } - return devicesList; - } - - @Override - public Device getDevice(DeviceIdentifier deviceId) throws DeviceManagementException { - DeviceManagerService dms = this.getPluginRepository().getDeviceManagementProvider(deviceId.getType()); - Device convertedDevice = null; - try { - Integer deviceTypeId = this.getDeviceTypeDAO().getDeviceTypeIdByDeviceTypeName(deviceId.getType()); - org.wso2.carbon.device.mgt.core.dto.Device device = - this.getDeviceDAO().getDeviceByDeviceIdentifier(deviceTypeId, deviceId.getId()); - if (device != null) { - convertedDevice = DeviceManagementDAOUtil - .convertDevice(device, this.getDeviceTypeDAO().getDeviceType(deviceTypeId)); - Device dmsDevice = dms.getDevice(deviceId); - if (dmsDevice != null) { - convertedDevice.setProperties(dmsDevice.getProperties()); - convertedDevice.setFeatures(dmsDevice.getFeatures()); - } - } - } catch (DeviceManagementDAOException e) { - throw new DeviceManagementException( - "Error occurred while obtaining the device for id '" + deviceId.getId() + "'", e); - } - return convertedDevice; - } - - @Override - public boolean updateDeviceInfo(Device device) throws DeviceManagementException { - DeviceManagerService dms = this.getPluginRepository().getDeviceManagementProvider(device.getType()); - return dms.updateDeviceInfo(device); - } - - @Override - public boolean setOwnership(DeviceIdentifier deviceId, String ownershipType) - throws DeviceManagementException { - DeviceManagerService dms = this.getPluginRepository().getDeviceManagementProvider(deviceId.getType()); - return dms.setOwnership(deviceId, ownershipType); - } - - public OperationManager getOperationManager(String type) throws DeviceManagementException { - DeviceManagerService dms = this.getPluginRepository().getDeviceManagementProvider(type); - return dms.getOperationManager(); - } - - public DeviceDAO getDeviceDAO() { - return deviceDAO; - } - - public DeviceTypeDAO getDeviceTypeDAO() { - return deviceTypeDAO; - } - - public DeviceManagementRepository getPluginRepository() { - return pluginRepository; - } + private static Log log = LogFactory.getLog(DeviceManagerImpl.class); + private DeviceDAO deviceDAO; + private DeviceTypeDAO deviceTypeDAO; + private DeviceManagementConfig config; + private DeviceManagementRepository pluginRepository; + + public DeviceManagerImpl(DeviceManagementConfig config, + DeviceManagementRepository pluginRepository) { + this.config = config; + this.pluginRepository = pluginRepository; + this.deviceDAO = DeviceManagementDAOFactory.getDeviceDAO(); + this.deviceTypeDAO = DeviceManagementDAOFactory.getDeviceTypeDAO(); + } + + @Override + public boolean enrollDevice(Device device) throws DeviceManagementException { + DeviceManagerService dms = + this.getPluginRepository().getDeviceManagementProvider(device.getType()); + boolean status = dms.enrollDevice(device); + try { + org.wso2.carbon.device.mgt.core.dto.Device deviceDto = + DeviceManagementDAOUtil.convertDevice(device); + Integer deviceTypeId = + this.getDeviceTypeDAO().getDeviceTypeIdByDeviceTypeName(device.getType()); + deviceDto.setStatus(Status.ACTIVE); + deviceDto.setDeviceTypeId(deviceTypeId); + this.getDeviceDAO().addDevice(deviceDto); + } catch (DeviceManagementDAOException e) { + throw new DeviceManagementException( + "Error occurred while enrolling the device '" + device.getId() + "'", + e); + } + return status; + } + + @Override + public boolean modifyEnrollment(Device device) throws DeviceManagementException { + DeviceManagerService dms = + this.getPluginRepository().getDeviceManagementProvider(device.getType()); + boolean status = dms.modifyEnrollment(device); + try { + this.getDeviceDAO().updateDevice(DeviceManagementDAOUtil.convertDevice(device)); + } catch (DeviceManagementDAOException e) { + throw new DeviceManagementException( + "Error occurred while modifying the device '" + device.getId() + "'", + e); + } + return status; + } + + @Override + public boolean disenrollDevice(DeviceIdentifier deviceId) throws DeviceManagementException { + DeviceManagerService dms = + this.getPluginRepository().getDeviceManagementProvider(deviceId.getType()); + return dms.disenrollDevice(deviceId); + } + + @Override + public boolean isEnrolled(DeviceIdentifier deviceId) throws DeviceManagementException { + DeviceManagerService dms = + this.getPluginRepository().getDeviceManagementProvider(deviceId.getType()); + return dms.isEnrolled(deviceId); + } + + @Override + public boolean isActive(DeviceIdentifier deviceId) throws DeviceManagementException { + DeviceManagerService dms = + this.getPluginRepository().getDeviceManagementProvider(deviceId.getType()); + return dms.isActive(deviceId); + } + + @Override + public boolean setActive(DeviceIdentifier deviceId, boolean status) + throws DeviceManagementException { + DeviceManagerService dms = + this.getPluginRepository().getDeviceManagementProvider(deviceId.getType()); + return dms.setActive(deviceId, status); + } + + @Override + public List getAllDevices(String type) throws DeviceManagementException { + DeviceManagerService dms = this.getPluginRepository().getDeviceManagementProvider(type); + List devicesList = new ArrayList(); + try { + Integer deviceTypeId = this.getDeviceTypeDAO().getDeviceTypeIdByDeviceTypeName(type); + List devices = + this.getDeviceDAO().getDevices(deviceTypeId); + + for (org.wso2.carbon.device.mgt.core.dto.Device device : devices) { + DeviceType deviceType = this.deviceTypeDAO.getDeviceType(device.getDeviceTypeId()); + Device convertedDevice = DeviceManagementDAOUtil.convertDevice(device, deviceType); + DeviceIdentifier deviceIdentifier = + DeviceManagementDAOUtil.createDeviceIdentifier(device, deviceType); + Device dmsDevice = dms.getDevice(deviceIdentifier); + if (dmsDevice != null) { + convertedDevice.setProperties(dmsDevice.getProperties()); + convertedDevice.setFeatures(dmsDevice.getFeatures()); + } + devicesList.add(convertedDevice); + } + } catch (DeviceManagementDAOException e) { + throw new DeviceManagementException( + "Error occurred while obtaining the device for type '" + type + "'", e); + } + return devicesList; + } + + @Override + public Device getDevice(DeviceIdentifier deviceId) throws DeviceManagementException { + DeviceManagerService dms = + this.getPluginRepository().getDeviceManagementProvider(deviceId.getType()); + Device convertedDevice = null; + try { + Integer deviceTypeId = + this.getDeviceTypeDAO().getDeviceTypeIdByDeviceTypeName(deviceId.getType()); + org.wso2.carbon.device.mgt.core.dto.Device device = + this.getDeviceDAO().getDeviceByDeviceIdentifier(deviceTypeId, deviceId.getId()); + if (device != null) { + convertedDevice = DeviceManagementDAOUtil + .convertDevice(device, this.getDeviceTypeDAO().getDeviceType(deviceTypeId)); + Device dmsDevice = dms.getDevice(deviceId); + if (dmsDevice != null) { + convertedDevice.setProperties(dmsDevice.getProperties()); + convertedDevice.setFeatures(dmsDevice.getFeatures()); + } + } + } catch (DeviceManagementDAOException e) { + throw new DeviceManagementException( + "Error occurred while obtaining the device for id '" + deviceId.getId() + "'", + e); + } + return convertedDevice; + } + + @Override + public boolean updateDeviceInfo(Device device) throws DeviceManagementException { + DeviceManagerService dms = + this.getPluginRepository().getDeviceManagementProvider(device.getType()); + return dms.updateDeviceInfo(device); + } + + @Override + public boolean setOwnership(DeviceIdentifier deviceId, String ownershipType) + throws DeviceManagementException { + DeviceManagerService dms = + this.getPluginRepository().getDeviceManagementProvider(deviceId.getType()); + return dms.setOwnership(deviceId, ownershipType); + } + + public OperationManager getOperationManager(String type) throws DeviceManagementException { + DeviceManagerService dms = this.getPluginRepository().getDeviceManagementProvider(type); + return dms.getOperationManager(); + } + + public DeviceDAO getDeviceDAO() { + return deviceDAO; + } + + public DeviceTypeDAO getDeviceTypeDAO() { + return deviceTypeDAO; + } + + public DeviceManagementRepository getPluginRepository() { + return pluginRepository; + } } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/DeviceConfigurationManager.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/DeviceConfigurationManager.java index f9f99ffba9..3f26d2ae6e 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/DeviceConfigurationManager.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/DeviceConfigurationManager.java @@ -30,45 +30,46 @@ import javax.xml.bind.Unmarshaller; import java.io.File; /** - * Class responsible for the cdm manager configuration initialization + * Class responsible for the cdm manager configuration initialization. */ public class DeviceConfigurationManager { - private DeviceManagementConfig currentDeviceConfig; - private static DeviceConfigurationManager deviceConfigManager; + private DeviceManagementConfig currentDeviceConfig; + private static DeviceConfigurationManager deviceConfigManager; - private static final String deviceMgtConfigXMLPath = CarbonUtils.getCarbonConfigDirPath() + File.separator + - DeviceManagementConstants.DataSourceProperties.DEVICE_CONFIG_XML_NAME; + private static final String deviceMgtConfigXMLPath = + CarbonUtils.getCarbonConfigDirPath() + File.separator + + DeviceManagementConstants.DataSourceProperties.DEVICE_CONFIG_XML_NAME; - public static DeviceConfigurationManager getInstance() { - if (deviceConfigManager == null) { - synchronized (DeviceConfigurationManager.class) { - if (deviceConfigManager == null) { - deviceConfigManager = new DeviceConfigurationManager(); - } - } - } - return deviceConfigManager; - } + public static DeviceConfigurationManager getInstance() { + if (deviceConfigManager == null) { + synchronized (DeviceConfigurationManager.class) { + if (deviceConfigManager == null) { + deviceConfigManager = new DeviceConfigurationManager(); + } + } + } + return deviceConfigManager; + } - public synchronized void initConfig() throws DeviceManagementException { + public synchronized void initConfig() throws DeviceManagementException { - //catch generic exception.if any exception occurs wrap and throw DeviceManagementException - try { - File deviceMgtConfig = new File(deviceMgtConfigXMLPath); - Document doc = DeviceManagerUtil.convertToDocument(deviceMgtConfig); + //catch generic exception.if any exception occurs wrap and throw DeviceManagementException + try { + File deviceMgtConfig = new File(deviceMgtConfigXMLPath); + Document doc = DeviceManagerUtil.convertToDocument(deviceMgtConfig); /* Un-marshaling Device Management configuration */ - JAXBContext cdmContext = JAXBContext.newInstance(DeviceManagementConfig.class); - Unmarshaller unmarshaller = cdmContext.createUnmarshaller(); - this.currentDeviceConfig = (DeviceManagementConfig) unmarshaller.unmarshal(doc); - } catch (Exception e) { - throw new DeviceManagementException("Error occurred while initializing RSS config", e); - } - } + JAXBContext cdmContext = JAXBContext.newInstance(DeviceManagementConfig.class); + Unmarshaller unmarshaller = cdmContext.createUnmarshaller(); + this.currentDeviceConfig = (DeviceManagementConfig) unmarshaller.unmarshal(doc); + } catch (Exception e) { + throw new DeviceManagementException("Error occurred while initializing RSS config", e); + } + } - public DeviceManagementConfig getDeviceManagementConfig() { - return currentDeviceConfig; - } + public DeviceManagementConfig getDeviceManagementConfig() { + return currentDeviceConfig; + } } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/DeviceManagementRepository.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/DeviceManagementRepository.java index 134eec6969..3547c4f333 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/DeviceManagementRepository.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/DeviceManagementRepository.java @@ -22,7 +22,7 @@ import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; /** - * Class for holding management repository data + * Class for holding management repository data. */ @XmlRootElement(name = "ManagementRepository") public class DeviceManagementRepository { diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/LicenseConfigurationManager.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/LicenseConfigurationManager.java index 2995c6b14f..798f6870a6 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/LicenseConfigurationManager.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/LicenseConfigurationManager.java @@ -32,42 +32,42 @@ import java.io.File; public class LicenseConfigurationManager { - private LicenseManagementConfig licenseMgtConfig; - private static LicenseConfigurationManager licenseConfigManager; + private LicenseManagementConfig licenseMgtConfig; + private static LicenseConfigurationManager licenseConfigManager; - private static final String licenseMgtConfigXMLPath = CarbonUtils.getCarbonConfigDirPath() + File.separator + - DeviceManagementConstants.Common.DEFAULT_LICENSE_CONFIG_XML_NAME; + private static final String licenseMgtConfigXMLPath = + CarbonUtils.getCarbonConfigDirPath() + File.separator + + DeviceManagementConstants.Common.DEFAULT_LICENSE_CONFIG_XML_NAME; - public static LicenseConfigurationManager getInstance() { - if (licenseConfigManager == null) { - synchronized (LicenseConfigurationManager.class) { - if (licenseConfigManager == null) { - licenseConfigManager = new LicenseConfigurationManager(); - } - } - } - return licenseConfigManager; - } + public static LicenseConfigurationManager getInstance() { + if (licenseConfigManager == null) { + synchronized (LicenseConfigurationManager.class) { + if (licenseConfigManager == null) { + licenseConfigManager = new LicenseConfigurationManager(); + } + } + } + return licenseConfigManager; + } - public synchronized void initConfig() throws LicenseManagementException { + public synchronized void initConfig() throws LicenseManagementException { - //catch generic exception.if any exception occurs wrap and throw LicenseManagementException - try { - File licenseMgtConfig = new File(licenseMgtConfigXMLPath); - Document doc = DeviceManagerUtil.convertToDocument(licenseMgtConfig); + //catch generic exception.if any exception occurs wrap and throw LicenseManagementException + try { + File licenseMgtConfig = new File(licenseMgtConfigXMLPath); + Document doc = DeviceManagerUtil.convertToDocument(licenseMgtConfig); /* Un-marshaling License Management configuration */ - JAXBContext cdmContext = JAXBContext.newInstance(LicenseManagementConfig.class); - Unmarshaller unmarshaller = cdmContext.createUnmarshaller(); - this.licenseMgtConfig = (LicenseManagementConfig) unmarshaller.unmarshal(doc); - } catch (Exception e) { - throw new LicenseManagementException("Error occurred while initializing RSS config", e); - } - } - - public LicenseManagementConfig getLicenseMgtConfig() { - return licenseMgtConfig; - } + JAXBContext cdmContext = JAXBContext.newInstance(LicenseManagementConfig.class); + Unmarshaller unmarshaller = cdmContext.createUnmarshaller(); + this.licenseMgtConfig = (LicenseManagementConfig) unmarshaller.unmarshal(doc); + } catch (Exception e) { + throw new LicenseManagementException("Error occurred while initializing RSS config", e); + } + } + public LicenseManagementConfig getLicenseMgtConfig() { + return licenseMgtConfig; + } } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/datasource/DataSourceConfig.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/datasource/DataSourceConfig.java index bb1c06ab1a..c7dfd4fa20 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/datasource/DataSourceConfig.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/datasource/DataSourceConfig.java @@ -21,7 +21,8 @@ import javax.xml.bind.annotation.XmlElement; import javax.xml.bind.annotation.XmlRootElement; /** - * Class for holding data source configuration in malformed-cdm-config-no-mgt-repo.xml at parsing with JAXB + * Class for holding data source configuration in malformed-cdm-config-no-mgt-repo.xml at parsing + * with JAXB. */ @XmlRootElement(name = "DataSourceConfiguration") public class DataSourceConfig { diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/datasource/JNDILookupDefinition.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/datasource/JNDILookupDefinition.java index 1946ae90cb..cb57709222 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/datasource/JNDILookupDefinition.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/config/datasource/JNDILookupDefinition.java @@ -22,7 +22,7 @@ import javax.xml.bind.annotation.*; import java.util.List; /** - * Class for hold JndiLookupDefinition of rss-manager.xml at parsing with JAXB + * Class for hold JndiLookupDefinition of rss-manager.xml at parsing with JAXB. */ @XmlRootElement(name = "JndiLookupDefinition") public class JNDILookupDefinition { diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/DeviceDAO.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/DeviceDAO.java index 12d0e757e1..4e3a7f86ca 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/DeviceDAO.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/DeviceDAO.java @@ -24,7 +24,7 @@ import org.wso2.carbon.device.mgt.core.dto.Status; import java.util.List; /** - * This class represents the key operations associated with persisting device related information + * This class represents the key operations associated with persisting device related information. */ public interface DeviceDAO { @@ -44,7 +44,8 @@ public interface DeviceDAO { * @return the Device object which matches given data * @throws DeviceManagementDAOException */ - Device getDeviceByDeviceIdentifier(Integer type, String identifier) throws DeviceManagementDAOException; + Device getDeviceByDeviceIdentifier(Integer type, String identifier) + throws DeviceManagementDAOException; List getDevices() throws DeviceManagementDAOException; diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/DeviceManagementDAOException.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/DeviceManagementDAOException.java index cb48c3320c..6558acc6e6 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/DeviceManagementDAOException.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/DeviceManagementDAOException.java @@ -19,7 +19,7 @@ package org.wso2.carbon.device.mgt.core.dao; /** - * Custom exception class for data access related exceptions + * Custom exception class for data access related exceptions. */ public class DeviceManagementDAOException extends Exception { diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/DeviceManagementDAOFactory.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/DeviceManagementDAOFactory.java index 53b9fd119e..df6ee073a7 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/DeviceManagementDAOFactory.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/DeviceManagementDAOFactory.java @@ -25,64 +25,69 @@ import org.wso2.carbon.device.mgt.core.config.datasource.JNDILookupDefinition; import org.wso2.carbon.device.mgt.core.dao.impl.DeviceDAOImpl; import org.wso2.carbon.device.mgt.core.dao.impl.DeviceTypeDAOImpl; import org.wso2.carbon.device.mgt.core.dao.util.DeviceManagementDAOUtil; + import javax.sql.DataSource; import java.util.Hashtable; import java.util.List; public class DeviceManagementDAOFactory { - private static DataSource dataSource; - private static final Log log = LogFactory.getLog(DeviceManagementDAOFactory.class); + private static DataSource dataSource; + private static final Log log = LogFactory.getLog(DeviceManagementDAOFactory.class); - public static DeviceDAO getDeviceDAO() { - return new DeviceDAOImpl(dataSource); - } + public static DeviceDAO getDeviceDAO() { + return new DeviceDAOImpl(dataSource); + } - public static DeviceTypeDAO getDeviceTypeDAO() { - return new DeviceTypeDAOImpl(dataSource); - } + public static DeviceTypeDAO getDeviceTypeDAO() { + return new DeviceTypeDAOImpl(dataSource); + } - public static void init(DataSourceConfig config) { - dataSource = resolveDataSource(config); - } + public static void init(DataSourceConfig config) { + dataSource = resolveDataSource(config); + } - public static void init(DataSource dtSource) { - dataSource = dtSource; - } + public static void init(DataSource dtSource) { + dataSource = dtSource; + } - /** - * Resolve data source from the data source definition - * - * @param config data source configuration - * @return data source resolved from the data source definition - */ - private static DataSource resolveDataSource(DataSourceConfig config) { - DataSource dataSource = null; - if (config == null) { - throw new RuntimeException("Device Management Repository data source configuration " + "is null and " + - "thus, is not initialized"); - } - JNDILookupDefinition jndiConfig = config.getJndiLookupDefinition(); - if (jndiConfig != null) { - if (log.isDebugEnabled()) { - log.debug("Initializing Device Management Repository data source using the JNDI " + - "Lookup Definition"); - } - List jndiPropertyList = jndiConfig.getJndiProperties(); - if (jndiPropertyList != null) { - Hashtable jndiProperties = new Hashtable(); - for (JNDILookupDefinition.JNDIProperty prop : jndiPropertyList) { - jndiProperties.put(prop.getName(), prop.getValue()); - } - dataSource = DeviceManagementDAOUtil.lookupDataSource(jndiConfig.getJndiName(), jndiProperties); - } else { - dataSource = DeviceManagementDAOUtil.lookupDataSource(jndiConfig.getJndiName(), null); - } - } - return dataSource; - } + /** + * Resolve data source from the data source definition + * + * @param config data source configuration + * @return data source resolved from the data source definition + */ + private static DataSource resolveDataSource(DataSourceConfig config) { + DataSource dataSource = null; + if (config == null) { + throw new RuntimeException( + "Device Management Repository data source configuration " + "is null and " + + "thus, is not initialized"); + } + JNDILookupDefinition jndiConfig = config.getJndiLookupDefinition(); + if (jndiConfig != null) { + if (log.isDebugEnabled()) { + log.debug("Initializing Device Management Repository data source using the JNDI " + + "Lookup Definition"); + } + List jndiPropertyList = + jndiConfig.getJndiProperties(); + if (jndiPropertyList != null) { + Hashtable jndiProperties = new Hashtable(); + for (JNDILookupDefinition.JNDIProperty prop : jndiPropertyList) { + jndiProperties.put(prop.getName(), prop.getValue()); + } + dataSource = DeviceManagementDAOUtil + .lookupDataSource(jndiConfig.getJndiName(), jndiProperties); + } else { + dataSource = + DeviceManagementDAOUtil.lookupDataSource(jndiConfig.getJndiName(), null); + } + } + return dataSource; + } - public static DataSource getDataSource() { - return dataSource; - } + public static DataSource getDataSource() { + return dataSource; + } } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/DeviceTypeDAO.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/DeviceTypeDAO.java index f2666bab9d..bed0d07ddd 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/DeviceTypeDAO.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/DeviceTypeDAO.java @@ -22,20 +22,21 @@ import org.wso2.carbon.device.mgt.core.dto.DeviceType; import java.util.List; /** - * This class represents the key operations associated with persisting device type related information + * This class represents the key operations associated with persisting device type related + * information. */ public interface DeviceTypeDAO { - void addDeviceType(DeviceType deviceType) throws DeviceManagementDAOException; + void addDeviceType(DeviceType deviceType) throws DeviceManagementDAOException; - void updateDeviceType(DeviceType deviceType) throws DeviceManagementDAOException; + void updateDeviceType(DeviceType deviceType) throws DeviceManagementDAOException; - List getDeviceTypes() throws DeviceManagementDAOException; + List getDeviceTypes() throws DeviceManagementDAOException; - DeviceType getDeviceType(Integer id) throws DeviceManagementDAOException; + DeviceType getDeviceType(Integer id) throws DeviceManagementDAOException; - Integer getDeviceTypeIdByDeviceTypeName(String type) throws DeviceManagementDAOException; + Integer getDeviceTypeIdByDeviceTypeName(String type) throws DeviceManagementDAOException; - void removeDeviceType(DeviceType deviceType) throws DeviceManagementDAOException; + void removeDeviceType(DeviceType deviceType) throws DeviceManagementDAOException; } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/impl/DeviceDAOImpl.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/impl/DeviceDAOImpl.java index e47fbcc17e..54010a8554 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/impl/DeviceDAOImpl.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/impl/DeviceDAOImpl.java @@ -44,15 +44,16 @@ public class DeviceDAOImpl implements DeviceDAO { this.dataSource = dataSource; } - @Override public void addDevice(Device device) throws DeviceManagementDAOException { + @Override + public void addDevice(Device device) throws DeviceManagementDAOException { Connection conn = null; PreparedStatement stmt = null; try { conn = this.getConnection(); String createDBQuery = - "INSERT INTO DM_DEVICE(DESCRIPTION, NAME, DATE_OF_ENROLLMENT, DATE_OF_LAST_UPDATE, OWNERSHIP," + - "STATUS, DEVICE_TYPE_ID, DEVICE_IDENTIFICATION, OWNER, TENANT_ID) VALUES " + - "(?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; + "INSERT INTO DM_DEVICE(DESCRIPTION, NAME, DATE_OF_ENROLLMENT, DATE_OF_LAST_UPDATE, " + + "OWNERSHIP, STATUS, DEVICE_TYPE_ID, DEVICE_IDENTIFICATION, OWNER, TENANT_ID) " + + "VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)"; stmt = conn.prepareStatement(createDBQuery); stmt.setString(1, device.getDescription()); @@ -75,23 +76,29 @@ public class DeviceDAOImpl implements DeviceDAO { } } - @Override public void updateDevice(Device device) throws DeviceManagementDAOException { + @Override + public void updateDevice(Device device) throws DeviceManagementDAOException { } - @Override public void updateDeviceStatus(Long deviceId, Status status) throws DeviceManagementDAOException { + @Override + public void updateDeviceStatus(Long deviceId, Status status) + throws DeviceManagementDAOException { } - @Override public void deleteDevice(Long deviceId) throws DeviceManagementDAOException { + @Override + public void deleteDevice(Long deviceId) throws DeviceManagementDAOException { } - @Override public Device getDeviceByDeviceId(Long deviceId) throws DeviceManagementDAOException { + @Override + public Device getDeviceByDeviceId(Long deviceId) throws DeviceManagementDAOException { return null; } - @Override public Device getDeviceByDeviceIdentifier(Integer type, String identifier) + @Override + public Device getDeviceByDeviceIdentifier(Integer type, String identifier) throws DeviceManagementDAOException { Connection conn = null; PreparedStatement stmt = null; @@ -102,7 +109,8 @@ public class DeviceDAOImpl implements DeviceDAO { String selectDBQueryForType = "SELECT ID, DESCRIPTION, NAME, DATE_OF_ENROLLMENT, " + "DATE_OF_LAST_UPDATE, OWNERSHIP, STATUS, DEVICE_TYPE_ID, " + "DEVICE_IDENTIFICATION, OWNER, TENANT_ID FROM DM_DEVICE " + - "WHERE DM_DEVICE.DEVICE_TYPE_ID=? AND DM_DEVICE.DEVICE_IDENTIFICATION=?"; + "WHERE DM_DEVICE.DEVICE_TYPE_ID=? AND " + + "DM_DEVICE.DEVICE_IDENTIFICATION=?"; stmt = conn.prepareStatement(selectDBQueryForType); stmt.setInt(1, type); stmt.setString(2, identifier); @@ -132,11 +140,13 @@ public class DeviceDAOImpl implements DeviceDAO { return device; } - @Override public List getDevices() throws DeviceManagementDAOException { + @Override + public List getDevices() throws DeviceManagementDAOException { return null; } - @Override public List getDevices(Integer type) throws DeviceManagementDAOException { + @Override + public List getDevices(Integer type) throws DeviceManagementDAOException { Connection conn = null; PreparedStatement stmt = null; ResultSet resultSet = null; @@ -181,8 +191,9 @@ public class DeviceDAOImpl implements DeviceDAO { try { return dataSource.getConnection(); } catch (SQLException e) { - throw new DeviceManagementDAOException("Error occurred while obtaining a connection from the device " + - "management metadata repository datasource", e); + throw new DeviceManagementDAOException( + "Error occurred while obtaining a connection from the device " + + "management metadata repository datasource", e); } } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/util/DeviceManagementDAOUtil.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/util/DeviceManagementDAOUtil.java index 7c684993c9..03b1be93e5 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/util/DeviceManagementDAOUtil.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/util/DeviceManagementDAOUtil.java @@ -40,121 +40,124 @@ import java.util.Hashtable; public final class DeviceManagementDAOUtil { - private static final Log log = LogFactory.getLog(DeviceManagementDAOUtil.class); + private static final Log log = LogFactory.getLog(DeviceManagementDAOUtil.class); - public static void cleanupResources(Connection conn, PreparedStatement stmt, ResultSet rs) { - if (rs != null) { - try { - rs.close(); - } catch (SQLException e) { - log.warn("Error occurred while closing result set", e); - } - } - if (stmt != null) { - try { - stmt.close(); - } catch (SQLException e) { - log.warn("Error occurred while closing prepared statement", e); - } - } - if (conn != null) { - try { - conn.close(); - } catch (SQLException e) { - log.warn("Error occurred while closing database connection", e); - } - } - } + public static void cleanupResources(Connection conn, PreparedStatement stmt, ResultSet rs) { + if (rs != null) { + try { + rs.close(); + } catch (SQLException e) { + log.warn("Error occurred while closing result set", e); + } + } + if (stmt != null) { + try { + stmt.close(); + } catch (SQLException e) { + log.warn("Error occurred while closing prepared statement", e); + } + } + if (conn != null) { + try { + conn.close(); + } catch (SQLException e) { + log.warn("Error occurred while closing database connection", e); + } + } + } - /** - * Get id of the current tenant. - * - * @return tenant id - * @throws DeviceManagementDAOException if an error is observed when getting tenant id - */ - public static int getTenantId() throws DeviceManagementDAOException { - CarbonContext context = CarbonContext.getThreadLocalCarbonContext(); - int tenantId = context.getTenantId(); - if (tenantId != MultitenantConstants.INVALID_TENANT_ID) { - return tenantId; - } - String tenantDomain = context.getTenantDomain(); - if (tenantDomain == null) { - String msg = "Tenant domain is not properly set and thus, is null"; - throw new DeviceManagementDAOException(msg); - } - TenantManager tenantManager = DeviceManagementDataHolder.getInstance().getTenantManager(); - try { - tenantId = tenantManager.getTenantId(tenantDomain); - } catch (UserStoreException e) { - String msg = "Error occurred while retrieving id from the domain of tenant " + tenantDomain; - throw new DeviceManagementDAOException(msg); - } - return tenantId; - } + /** + * Get id of the current tenant. + * + * @return tenant id + * @throws DeviceManagementDAOException if an error is observed when getting tenant id + */ + public static int getTenantId() throws DeviceManagementDAOException { + CarbonContext context = CarbonContext.getThreadLocalCarbonContext(); + int tenantId = context.getTenantId(); + if (tenantId != MultitenantConstants.INVALID_TENANT_ID) { + return tenantId; + } + String tenantDomain = context.getTenantDomain(); + if (tenantDomain == null) { + String msg = "Tenant domain is not properly set and thus, is null"; + throw new DeviceManagementDAOException(msg); + } + TenantManager tenantManager = DeviceManagementDataHolder.getInstance().getTenantManager(); + try { + tenantId = tenantManager.getTenantId(tenantDomain); + } catch (UserStoreException e) { + String msg = + "Error occurred while retrieving id from the domain of tenant " + tenantDomain; + throw new DeviceManagementDAOException(msg); + } + return tenantId; + } - public static DataSource lookupDataSource(String dataSourceName, final Hashtable jndiProperties) { - try { - if (jndiProperties == null || jndiProperties.isEmpty()) { - return (DataSource) InitialContext.doLookup(dataSourceName); - } - final InitialContext context = new InitialContext(jndiProperties); - return (DataSource) context.lookup(dataSourceName); - } catch (Exception e) { - throw new RuntimeException("Error in looking up data source: " + e.getMessage(), e); - } - } + public static DataSource lookupDataSource(String dataSourceName, + final Hashtable jndiProperties) { + try { + if (jndiProperties == null || jndiProperties.isEmpty()) { + return (DataSource) InitialContext.doLookup(dataSourceName); + } + final InitialContext context = new InitialContext(jndiProperties); + return (DataSource) context.lookup(dataSourceName); + } catch (Exception e) { + throw new RuntimeException("Error in looking up data source: " + e.getMessage(), e); + } + } - /** - * @param device - The DTO device object. - * @param deviceType - The DeviceType object associated with the device - * @return A Business Object. - */ - public static org.wso2.carbon.device.mgt.common.Device convertDevice(Device device, DeviceType deviceType){ - org.wso2.carbon.device.mgt.common.Device deviceBO = - new org.wso2.carbon.device.mgt.common.Device(); - deviceBO.setDateOfEnrolment(device.getDateOfEnrollment()); - deviceBO.setDateOfLastUpdate(device.getDateOfLastUpdate()); - deviceBO.setDescription(device.getDescription()); - deviceBO.setDeviceIdentifier(device.getDeviceIdentificationId()); - deviceBO.setDeviceTypeId(device.getDeviceTypeId()); - deviceBO.setType(deviceType.getName()); - deviceBO.setName(device.getName()); - deviceBO.setId(device.getId()); - deviceBO.setOwner(device.getOwnerId()); - deviceBO.setOwnership(device.getOwnerShip()); - if (device.getStatus() == Status.ACTIVE) { - deviceBO.setStatus(true); - } else if (device.getStatus() == Status.INACTIVE) { - deviceBO.setStatus(false); - } - return deviceBO; - } + /** + * @param device - The DTO device object. + * @param deviceType - The DeviceType object associated with the device + * @return A Business Object. + */ + public static org.wso2.carbon.device.mgt.common.Device convertDevice(Device device, + DeviceType deviceType) { + org.wso2.carbon.device.mgt.common.Device deviceBO = + new org.wso2.carbon.device.mgt.common.Device(); + deviceBO.setDateOfEnrolment(device.getDateOfEnrollment()); + deviceBO.setDateOfLastUpdate(device.getDateOfLastUpdate()); + deviceBO.setDescription(device.getDescription()); + deviceBO.setDeviceIdentifier(device.getDeviceIdentificationId()); + deviceBO.setDeviceTypeId(device.getDeviceTypeId()); + deviceBO.setType(deviceType.getName()); + deviceBO.setName(device.getName()); + deviceBO.setId(device.getId()); + deviceBO.setOwner(device.getOwnerId()); + deviceBO.setOwnership(device.getOwnerShip()); + if (device.getStatus() == Status.ACTIVE) { + deviceBO.setStatus(true); + } else if (device.getStatus() == Status.INACTIVE) { + deviceBO.setStatus(false); + } + return deviceBO; + } - public static Device convertDevice(org.wso2.carbon.device.mgt.common.Device - device) throws DeviceManagementDAOException { - Device deviceBO = new Device(); - deviceBO.setDescription(device.getDescription()); - deviceBO.setName(device.getName()); - deviceBO.setDateOfEnrollment(device.getDateOfEnrolment()); - deviceBO.setDateOfLastUpdate(device.getDateOfLastUpdate()); + public static Device convertDevice(org.wso2.carbon.device.mgt.common.Device + device) throws DeviceManagementDAOException { + Device deviceBO = new Device(); + deviceBO.setDescription(device.getDescription()); + deviceBO.setName(device.getName()); + deviceBO.setDateOfEnrollment(device.getDateOfEnrolment()); + deviceBO.setDateOfLastUpdate(device.getDateOfLastUpdate()); - if (!device.isStatus()){ - deviceBO.setStatus(Status.INACTIVE); - }else{ - deviceBO.setStatus(Status.ACTIVE); - } - deviceBO.setOwnerId(device.getOwner()); - deviceBO.setOwnerShip(device.getOwnership()); - deviceBO.setTenantId(DeviceManagementDAOUtil.getTenantId()); - deviceBO.setDeviceIdentificationId(device.getDeviceIdentifier()); - return deviceBO; - } + if (!device.isStatus()) { + deviceBO.setStatus(Status.INACTIVE); + } else { + deviceBO.setStatus(Status.ACTIVE); + } + deviceBO.setOwnerId(device.getOwner()); + deviceBO.setOwnerShip(device.getOwnership()); + deviceBO.setTenantId(DeviceManagementDAOUtil.getTenantId()); + deviceBO.setDeviceIdentificationId(device.getDeviceIdentifier()); + return deviceBO; + } - public static DeviceIdentifier createDeviceIdentifier(Device device, DeviceType deviceType) { - DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); - deviceIdentifier.setType(deviceType.getName()); - deviceIdentifier.setId(device.getDeviceIdentificationId()); - return deviceIdentifier; - } + public static DeviceIdentifier createDeviceIdentifier(Device device, DeviceType deviceType) { + DeviceIdentifier deviceIdentifier = new DeviceIdentifier(); + deviceIdentifier.setType(deviceType.getName()); + deviceIdentifier.setId(device.getDeviceIdentificationId()); + return deviceIdentifier; + } } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/internal/DeviceManagementServiceComponent.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/internal/DeviceManagementServiceComponent.java index 96a591ef75..f97d232226 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/internal/DeviceManagementServiceComponent.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/internal/DeviceManagementServiceComponent.java @@ -52,112 +52,123 @@ import org.wso2.carbon.user.core.service.RealmService; */ public class DeviceManagementServiceComponent { - private static Log log = LogFactory.getLog(DeviceManagementServiceComponent.class); - private DeviceManagementRepository pluginRepository = new DeviceManagementRepository(); + private static Log log = LogFactory.getLog(DeviceManagementServiceComponent.class); + private DeviceManagementRepository pluginRepository = new DeviceManagementRepository(); - protected void activate(ComponentContext componentContext) { - try { - if (log.isDebugEnabled()) { - log.debug("Initializing device management core bundle"); - } - /* Initializing Device Management Configuration */ - DeviceConfigurationManager.getInstance().initConfig(); - DeviceManagementConfig config = DeviceConfigurationManager.getInstance().getDeviceManagementConfig(); + protected void activate(ComponentContext componentContext) { + try { + if (log.isDebugEnabled()) { + log.debug("Initializing device management core bundle"); + } + /* Initializing Device Management Configuration */ + DeviceConfigurationManager.getInstance().initConfig(); + DeviceManagementConfig config = + DeviceConfigurationManager.getInstance().getDeviceManagementConfig(); - DataSourceConfig dsConfig = config.getDeviceMgtRepository().getDataSourceConfig(); - DeviceManagementDAOFactory.init(dsConfig); + DataSourceConfig dsConfig = config.getDeviceMgtRepository().getDataSourceConfig(); + DeviceManagementDAOFactory.init(dsConfig); - DeviceManager deviceManager = new DeviceManagerImpl(config, this.getPluginRepository()); - DeviceManagementDataHolder.getInstance().setDeviceManager(deviceManager); + DeviceManager deviceManager = new DeviceManagerImpl(config, this.getPluginRepository()); + DeviceManagementDataHolder.getInstance().setDeviceManager(deviceManager); /* If -Dsetup option enabled then create device management database schema */ - String setupOption = System.getProperty(DeviceManagementConstants.Common.PROPERTY_SETUP); - if (setupOption != null) { - if (log.isDebugEnabled()) { - log.debug("-Dsetup is enabled. Device management repository schema initialization is about " + - "to begin"); - } - this.setupDeviceManagementSchema(dsConfig); - } - - if (log.isDebugEnabled()) { - log.debug("Registering OSGi service DeviceManagementService"); - } - BundleContext bundleContext = componentContext.getBundleContext(); - bundleContext.registerService(DeviceManagementService.class.getName(), - new DeviceManagementService(), null); - if (log.isDebugEnabled()) { - log.debug("Device management core bundle has been successfully initialized"); - } - } catch (Throwable e) { - String msg = "Error occurred while initializing device management core bundle"; - log.error(msg, e); - } - } - - private void setupDeviceManagementSchema(DataSourceConfig config) throws DeviceManagementException { - DeviceManagementSchemaInitializer initializer = new DeviceManagementSchemaInitializer(config); - log.info("Initializing device management repository database schema"); - - try { - initializer.createRegistryDatabase(); - } catch (Exception e) { - throw new DeviceManagementException("Error occurred while initializing Device Management " + - "database schema", e); - } - if (log.isDebugEnabled()) { - log.debug("Device management metadata repository schema has been successfully initialized"); - } - } - - /** - * Sets Device Manager service. - * @param deviceManagerService An instance of DeviceManagerService - */ - protected void setDeviceManagerService(DeviceManagerService deviceManagerService) { - if (log.isDebugEnabled()) { - log.debug("Setting Device Management Service Provider : '" + - deviceManagerService.getProviderType() + "'"); - } - this.getPluginRepository().addDeviceManagementProvider(deviceManagerService); - } - - /** - * Unsets Device Management service. - * @param deviceManagerService An Instance of DeviceManagerService - */ - protected void unsetDeviceManagerService(DeviceManagerService deviceManagerService) { - if (log.isDebugEnabled()) { - log.debug("Unsetting Device Management Service Provider : '" + - deviceManagerService.getProviderType() + "'"); - } - this.getPluginRepository().removeDeviceManagementProvider(deviceManagerService); - } - - /** - * Sets Realm Service. - * @param realmService An instance of RealmService - */ - protected void setRealmService(RealmService realmService) { - if (log.isDebugEnabled()) { - log.debug("Setting Realm Service"); - } - DeviceManagementDataHolder.getInstance().setRealmService(realmService); - } - - /** - * Unsets Realm Service. - * @param realmService An instance of RealmService - */ - protected void unsetRealmService(RealmService realmService) { - if (log.isDebugEnabled()) { - log.debug("Unsetting Realm Service"); - } - DeviceManagementDataHolder.getInstance().setRealmService(null); - } - - private DeviceManagementRepository getPluginRepository() { - return pluginRepository; - } + String setupOption = + System.getProperty(DeviceManagementConstants.Common.PROPERTY_SETUP); + if (setupOption != null) { + if (log.isDebugEnabled()) { + log.debug( + "-Dsetup is enabled. Device management repository schema initialization " + + "is about to begin"); + } + this.setupDeviceManagementSchema(dsConfig); + } + + if (log.isDebugEnabled()) { + log.debug("Registering OSGi service DeviceManagementService"); + } + BundleContext bundleContext = componentContext.getBundleContext(); + bundleContext.registerService(DeviceManagementService.class.getName(), + new DeviceManagementService(), null); + if (log.isDebugEnabled()) { + log.debug("Device management core bundle has been successfully initialized"); + } + } catch (Throwable e) { + String msg = "Error occurred while initializing device management core bundle"; + log.error(msg, e); + } + } + + private void setupDeviceManagementSchema(DataSourceConfig config) + throws DeviceManagementException { + DeviceManagementSchemaInitializer initializer = + new DeviceManagementSchemaInitializer(config); + log.info("Initializing device management repository database schema"); + + try { + initializer.createRegistryDatabase(); + } catch (Exception e) { + throw new DeviceManagementException( + "Error occurred while initializing Device Management " + + "database schema", e); + } + if (log.isDebugEnabled()) { + log.debug( + "Device management metadata repository schema has been successfully initialized"); + } + } + + /** + * Sets Device Manager service. + * + * @param deviceManagerService An instance of DeviceManagerService + */ + protected void setDeviceManagerService(DeviceManagerService deviceManagerService) { + if (log.isDebugEnabled()) { + log.debug("Setting Device Management Service Provider : '" + + deviceManagerService.getProviderType() + "'"); + } + this.getPluginRepository().addDeviceManagementProvider(deviceManagerService); + } + + /** + * Unsets Device Management service. + * + * @param deviceManagerService An Instance of DeviceManagerService + */ + protected void unsetDeviceManagerService(DeviceManagerService deviceManagerService) { + if (log.isDebugEnabled()) { + log.debug("Unsetting Device Management Service Provider : '" + + deviceManagerService.getProviderType() + "'"); + } + this.getPluginRepository().removeDeviceManagementProvider(deviceManagerService); + } + + /** + * Sets Realm Service. + * + * @param realmService An instance of RealmService + */ + protected void setRealmService(RealmService realmService) { + if (log.isDebugEnabled()) { + log.debug("Setting Realm Service"); + } + DeviceManagementDataHolder.getInstance().setRealmService(realmService); + } + + /** + * Unsets Realm Service. + * + * @param realmService An instance of RealmService + */ + protected void unsetRealmService(RealmService realmService) { + if (log.isDebugEnabled()) { + log.debug("Unsetting Realm Service"); + } + DeviceManagementDataHolder.getInstance().setRealmService(null); + } + + private DeviceManagementRepository getPluginRepository() { + return pluginRepository; + } } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementService.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementService.java index 9deed355f1..cb908edd7e 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementService.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementService.java @@ -28,66 +28,69 @@ import java.util.List; public class DeviceManagementService implements DeviceManager { - @Override - public boolean enrollDevice(Device device) throws DeviceManagementException { - return DeviceManagementDataHolder.getInstance().getDeviceManager().enrollDevice(device); - } - - @Override - public boolean modifyEnrollment(Device device) throws DeviceManagementException { - return DeviceManagementDataHolder.getInstance().getDeviceManager().modifyEnrollment(device); - } - - @Override - public boolean disenrollDevice(DeviceIdentifier deviceId) throws DeviceManagementException { - return DeviceManagementDataHolder.getInstance().getDeviceManager() - .disenrollDevice(deviceId); - } - - @Override - public boolean isEnrolled(DeviceIdentifier deviceId) throws DeviceManagementException { - return DeviceManagementDataHolder.getInstance().getDeviceManager().isEnrolled(deviceId); - } - - @Override - public boolean isActive(DeviceIdentifier deviceId) throws DeviceManagementException { - return DeviceManagementDataHolder.getInstance().getDeviceManager().isActive(deviceId); - } - - @Override - public boolean setActive(DeviceIdentifier deviceId, boolean status) throws DeviceManagementException { - return DeviceManagementDataHolder.getInstance().getDeviceManager().setActive(deviceId, status); - } - - @Override - public List getAllDevices(String type) throws DeviceManagementException { - return DeviceManagementDataHolder.getInstance().getDeviceManager().getAllDevices(type); - } - - @Override - public org.wso2.carbon.device.mgt.common.Device getDevice(DeviceIdentifier deviceId) - throws DeviceManagementException { - - Device device = DeviceManagementDataHolder.getInstance().getDeviceManager().getDevice(deviceId); - return device; - } - - @Override - public boolean updateDeviceInfo(Device device) throws DeviceManagementException { - return DeviceManagementDataHolder.getInstance().getDeviceManager().updateDeviceInfo(device); - } - - @Override - public boolean setOwnership(DeviceIdentifier deviceId, String ownershipType) - throws DeviceManagementException { - return DeviceManagementDataHolder.getInstance().getDeviceManager() - .setOwnership(deviceId, ownershipType); - } - - @Override - public OperationManager getOperationManager(String type) throws DeviceManagementException { - return DeviceManagementDataHolder.getInstance().getDeviceManager(). - getOperationManager(type); - } + @Override + public boolean enrollDevice(Device device) throws DeviceManagementException { + return DeviceManagementDataHolder.getInstance().getDeviceManager().enrollDevice(device); + } + + @Override + public boolean modifyEnrollment(Device device) throws DeviceManagementException { + return DeviceManagementDataHolder.getInstance().getDeviceManager().modifyEnrollment(device); + } + + @Override + public boolean disenrollDevice(DeviceIdentifier deviceId) throws DeviceManagementException { + return DeviceManagementDataHolder.getInstance().getDeviceManager() + .disenrollDevice(deviceId); + } + + @Override + public boolean isEnrolled(DeviceIdentifier deviceId) throws DeviceManagementException { + return DeviceManagementDataHolder.getInstance().getDeviceManager().isEnrolled(deviceId); + } + + @Override + public boolean isActive(DeviceIdentifier deviceId) throws DeviceManagementException { + return DeviceManagementDataHolder.getInstance().getDeviceManager().isActive(deviceId); + } + + @Override + public boolean setActive(DeviceIdentifier deviceId, boolean status) + throws DeviceManagementException { + return DeviceManagementDataHolder.getInstance().getDeviceManager() + .setActive(deviceId, status); + } + + @Override + public List getAllDevices(String type) throws DeviceManagementException { + return DeviceManagementDataHolder.getInstance().getDeviceManager().getAllDevices(type); + } + + @Override + public org.wso2.carbon.device.mgt.common.Device getDevice(DeviceIdentifier deviceId) + throws DeviceManagementException { + + Device device = + DeviceManagementDataHolder.getInstance().getDeviceManager().getDevice(deviceId); + return device; + } + + @Override + public boolean updateDeviceInfo(Device device) throws DeviceManagementException { + return DeviceManagementDataHolder.getInstance().getDeviceManager().updateDeviceInfo(device); + } + + @Override + public boolean setOwnership(DeviceIdentifier deviceId, String ownershipType) + throws DeviceManagementException { + return DeviceManagementDataHolder.getInstance().getDeviceManager() + .setOwnership(deviceId, ownershipType); + } + + @Override + public OperationManager getOperationManager(String type) throws DeviceManagementException { + return DeviceManagementDataHolder.getInstance().getDeviceManager(). + getOperationManager(type); + } } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/LicenseManagementService.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/LicenseManagementService.java index bccbcea3c7..7358c52596 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/LicenseManagementService.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/LicenseManagementService.java @@ -27,8 +27,10 @@ import org.wso2.carbon.device.mgt.core.internal.LicenseManagementDataHolder; public class LicenseManagementService implements LicenseManager { - @Override - public License getLicense(String deviceType, String languageCode) throws LicenseManagementException { - return LicenseManagementDataHolder.getInstance().getLicenseManager().getLicense(deviceType, languageCode); - } + @Override + public License getLicense(String deviceType, String languageCode) + throws LicenseManagementException { + return LicenseManagementDataHolder.getInstance().getLicenseManager() + .getLicense(deviceType, languageCode); + } } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/util/DeviceManagementSchemaInitializer.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/util/DeviceManagementSchemaInitializer.java index b7d6a7b2a7..57880cbd03 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/util/DeviceManagementSchemaInitializer.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/util/DeviceManagementSchemaInitializer.java @@ -29,20 +29,21 @@ import java.io.File; public final class DeviceManagementSchemaInitializer extends DatabaseCreator { - private static final Log log = LogFactory.getLog(DeviceManagementSchemaInitializer.class); - private static final String setupSQLScriptBaseLocation = - CarbonUtils.getCarbonHome() + File.separator + "dbscripts" + File.separator + "cdm" + File.separator; - - public DeviceManagementSchemaInitializer(DataSourceConfig config) { - super(DeviceManagerUtil.resolveDataSource(config)); - } - - protected String getDbScriptLocation(String databaseType) { - String scriptName = databaseType + ".sql"; - if (log.isDebugEnabled()) { - log.debug("Loading database script from :" + scriptName); - } - return setupSQLScriptBaseLocation.replaceFirst("DBTYPE", databaseType) + scriptName; - } + private static final Log log = LogFactory.getLog(DeviceManagementSchemaInitializer.class); + private static final String setupSQLScriptBaseLocation = + CarbonUtils.getCarbonHome() + File.separator + "dbscripts" + File.separator + "cdm" + + File.separator; + + public DeviceManagementSchemaInitializer(DataSourceConfig config) { + super(DeviceManagerUtil.resolveDataSource(config)); + } + + protected String getDbScriptLocation(String databaseType) { + String scriptName = databaseType + ".sql"; + if (log.isDebugEnabled()) { + log.debug("Loading database script from :" + scriptName); + } + return setupSQLScriptBaseLocation.replaceFirst("DBTYPE", databaseType) + scriptName; + } } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/util/DeviceManagerUtil.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/util/DeviceManagerUtil.java index cfeb39c153..fd4a442164 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/util/DeviceManagerUtil.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/util/DeviceManagerUtil.java @@ -50,8 +50,9 @@ public final class DeviceManagerUtil { DocumentBuilder docBuilder = factory.newDocumentBuilder(); return docBuilder.parse(file); } catch (Exception e) { - throw new DeviceManagementException("Error occurred while parsing file, while converting " + - "to a org.w3c.dom.Document : " + e.getMessage(), e); + throw new DeviceManagementException( + "Error occurred while parsing file, while converting " + + "to a org.w3c.dom.Document : " + e.getMessage(), e); } } @@ -65,23 +66,28 @@ public final class DeviceManagerUtil { DataSource dataSource = null; if (config == null) { throw new RuntimeException( - "Device Management Repository data source configuration " + "is null and thus, is not initialized"); + "Device Management Repository data source configuration " + + "is null and thus, is not initialized"); } JNDILookupDefinition jndiConfig = config.getJndiLookupDefinition(); if (jndiConfig != null) { if (log.isDebugEnabled()) { log.debug( - "Initializing Device Management Repository data source using the JNDI " + "Lookup Definition"); + "Initializing Device Management Repository data source using the JNDI " + + "Lookup Definition"); } - List jndiPropertyList = jndiConfig.getJndiProperties(); + List jndiPropertyList = + jndiConfig.getJndiProperties(); if (jndiPropertyList != null) { Hashtable jndiProperties = new Hashtable(); for (JNDILookupDefinition.JNDIProperty prop : jndiPropertyList) { jndiProperties.put(prop.getName(), prop.getValue()); } - dataSource = DeviceManagementDAOUtil.lookupDataSource(jndiConfig.getJndiName(), jndiProperties); + dataSource = DeviceManagementDAOUtil + .lookupDataSource(jndiConfig.getJndiName(), jndiProperties); } else { - dataSource = DeviceManagementDAOUtil.lookupDataSource(jndiConfig.getJndiName(), null); + dataSource = + DeviceManagementDAOUtil.lookupDataSource(jndiConfig.getJndiName(), null); } } return dataSource;