diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.extensions/src/main/java/org/wso2/carbon/device/mgt/extensions/license/mgt/file/FileSystemBasedLicenseManager.java b/components/device-mgt/org.wso2.carbon.device.mgt.extensions/src/main/java/org/wso2/carbon/device/mgt/extensions/license/mgt/file/FileSystemBasedLicenseManager.java
deleted file mode 100644
index 30878f924cf..00000000000
--- a/components/device-mgt/org.wso2.carbon.device.mgt.extensions/src/main/java/org/wso2/carbon/device/mgt/extensions/license/mgt/file/FileSystemBasedLicenseManager.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
- *
- * WSO2 Inc. licenses this file to you under the Apache License,
- * Version 2.0 (the "License"); you may not use this file except
- * in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.wso2.carbon.device.mgt.extensions.license.mgt.file;
-
-import org.wso2.carbon.device.mgt.common.license.mgt.License;
-import org.wso2.carbon.device.mgt.common.license.mgt.LicenseManagementException;
-import org.wso2.carbon.device.mgt.common.license.mgt.LicenseManager;
-import org.wso2.carbon.utils.CarbonUtils;
-
-import javax.xml.bind.JAXBContext;
-import javax.xml.bind.JAXBException;
-import javax.xml.bind.Unmarshaller;
-import java.io.File;
-
-public class FileSystemBasedLicenseManager implements LicenseManager {
-
- private static final String PATH_MOBILE_PLUGIN_CONF_DIR =
- CarbonUtils.getEtcCarbonConfigDirPath() + File.separator + "device-mgt-plugins";
-
- @Override
- public License getLicense(String deviceType, String languageCode) throws LicenseManagementException {
- try {
- String licenseConfigPath =
- PATH_MOBILE_PLUGIN_CONF_DIR + File.separator + deviceType + File.separator + "license.xml";
- File licenseConfig = new File(licenseConfigPath);
- JAXBContext context = JAXBContext.newInstance(License.class);
- Unmarshaller unmarshaller = context.createUnmarshaller();
- return (License) unmarshaller.unmarshal(licenseConfig);
- } catch (JAXBException e) {
- throw new LicenseManagementException("Error occurred while un-marshalling license configuration " +
- "used for '" + deviceType + "' platform from file system", e);
- }
- }
-
- @Override
- public void addLicense(String deviceType, License license) throws LicenseManagementException {
- throw new UnsupportedOperationException("'addLicense' method is not supported in " +
- "FileSystemBasedLicenseManager");
- }
-
-}
diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.extensions/src/test/java/org/wso2/carbon/device/mgt/extensions/device/type/template/DeviceTypeManagerServiceTest.java b/components/device-mgt/org.wso2.carbon.device.mgt.extensions/src/test/java/org/wso2/carbon/device/mgt/extensions/device/type/template/DeviceTypeManagerServiceTest.java
index 9fc7c37096c..2e1b1a52ac8 100644
--- a/components/device-mgt/org.wso2.carbon.device.mgt.extensions/src/test/java/org/wso2/carbon/device/mgt/extensions/device/type/template/DeviceTypeManagerServiceTest.java
+++ b/components/device-mgt/org.wso2.carbon.device.mgt.extensions/src/test/java/org/wso2/carbon/device/mgt/extensions/device/type/template/DeviceTypeManagerServiceTest.java
@@ -166,7 +166,7 @@ public class DeviceTypeManagerServiceTest {
ProvisioningConfig provisioningConfig = androidDeviceTypeManagerService.getProvisioningConfig();
Assert.assertEquals(provisioningConfig.isSharedWithAllTenants(),
androidDeviceConfiguration.getProvisioningConfig().isSharedWithAllTenants(),
- "Provisioning configs " + "are not correctly set as per the configuration file provided");
+ "Provisioning configs are not correctly set as per the configuration file provided");
setProvisioningConfig.invoke(rasberrypiDeviceTypeManagerService, MultitenantConstants.SUPER_TENANT_DOMAIN_NAME,
rasberrypiDeviceConfiguration);
diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.extensions/src/test/java/org/wso2/carbon/device/mgt/extensions/device/type/template/HttpDeviceTypeManagerServiceTest.java b/components/device-mgt/org.wso2.carbon.device.mgt.extensions/src/test/java/org/wso2/carbon/device/mgt/extensions/device/type/template/HttpDeviceTypeManagerServiceAndDeviceTypeGeneratorServceTest.java
similarity index 80%
rename from components/device-mgt/org.wso2.carbon.device.mgt.extensions/src/test/java/org/wso2/carbon/device/mgt/extensions/device/type/template/HttpDeviceTypeManagerServiceTest.java
rename to components/device-mgt/org.wso2.carbon.device.mgt.extensions/src/test/java/org/wso2/carbon/device/mgt/extensions/device/type/template/HttpDeviceTypeManagerServiceAndDeviceTypeGeneratorServceTest.java
index 36c1a0b4799..1ba7f30113e 100644
--- a/components/device-mgt/org.wso2.carbon.device.mgt.extensions/src/test/java/org/wso2/carbon/device/mgt/extensions/device/type/template/HttpDeviceTypeManagerServiceTest.java
+++ b/components/device-mgt/org.wso2.carbon.device.mgt.extensions/src/test/java/org/wso2/carbon/device/mgt/extensions/device/type/template/HttpDeviceTypeManagerServiceAndDeviceTypeGeneratorServceTest.java
@@ -14,6 +14,7 @@ import org.wso2.carbon.device.mgt.common.DeviceManagementException;
import org.wso2.carbon.device.mgt.common.configuration.mgt.PlatformConfiguration;
import org.wso2.carbon.device.mgt.common.license.mgt.License;
import org.wso2.carbon.device.mgt.common.push.notification.PushNotificationConfig;
+import org.wso2.carbon.device.mgt.common.spi.DeviceManagementService;
import org.wso2.carbon.device.mgt.common.type.mgt.DeviceTypeMetaDefinition;
import org.wso2.carbon.device.mgt.extensions.device.type.template.config.DeviceTypeConfiguration;
import org.wso2.carbon.device.mgt.extensions.device.type.template.config.Feature;
@@ -43,12 +44,14 @@ import java.util.List;
import static org.wso2.carbon.governance.api.util.GovernanceUtils.getGovernanceArtifactConfiguration;
/**
- * This test case contains the tests for {@link HTTPDeviceTypeManagerService}
+ * This test case contains the tests for {@link HTTPDeviceTypeManagerService} and {@link DeviceTypeGeneratorServiceImpl}
*/
-public class HttpDeviceTypeManagerServiceTest {
+public class HttpDeviceTypeManagerServiceAndDeviceTypeGeneratorServceTest {
private DeviceTypeMetaDefinition deviceTypeMetaDefinition;
private HTTPDeviceTypeManagerService httpDeviceTypeManagerService;
+ private DeviceTypeGeneratorServiceImpl deviceTypeGeneratorService;
private String androidSenseDeviceType = "androidsense";
+ private String sampleDeviceType = "sample";
@BeforeTest
public void setup() throws RegistryException, IOException, SAXException, ParserConfigurationException,
@@ -56,9 +59,44 @@ public class HttpDeviceTypeManagerServiceTest {
createSampleDeviceTypeMetaDefinition();
httpDeviceTypeManagerService = new HTTPDeviceTypeManagerService(androidSenseDeviceType,
deviceTypeMetaDefinition);
+ deviceTypeGeneratorService = new DeviceTypeGeneratorServiceImpl();
}
+ @Test(description = "This test case tests the get type method of the device type manager")
+ public void testGetType() {
+ Assert.assertEquals(httpDeviceTypeManagerService.getType(), androidSenseDeviceType,
+ "HttpDeviceTypeManagerService returns" + " a different device type than initially provided");
+ }
+
+ @Test(description = "This test case tests the enrollment of newly added device type")
+ public void testEnrollDevice() throws DeviceManagementException {
+ String deviceId = "testdevice1";
+ Device sampleDevice1 = new Device(deviceId, androidSenseDeviceType, "test", "testdevice",
+ null, null, null);
+ Assert.assertTrue(httpDeviceTypeManagerService.getDeviceManager().enrollDevice(sampleDevice1),
+ "Enrollment of " + androidSenseDeviceType + " device failed");
+ Assert.assertTrue(httpDeviceTypeManagerService.getDeviceManager()
+ .isEnrolled(new DeviceIdentifier(deviceId, androidSenseDeviceType)),
+ "Enrollment of " + androidSenseDeviceType + " device " + "failed");
+ }
+
+ @Test(description = "This test case tests the populate device management service method")
+ public void testPopulateDeviceManagementService() {
+ DeviceManagementService deviceManagementService = deviceTypeGeneratorService.populateDeviceManagementService
+ (sampleDeviceType, deviceTypeMetaDefinition);
+ Assert.assertEquals(deviceManagementService.getType(), sampleDeviceType, "DeviceTypeGeneration for the "
+ + "sample device type failed");
+ }
+
+ /**
+ * To create a sample device type meta defintion.
+ * @throws SAXException SAX Exception.
+ * @throws JAXBException JAXB Exception.
+ * @throws ParserConfigurationException ParserConfiguration Exception.
+ * @throws DeviceTypeConfigurationException DeviceTypeConfiguration Exception.
+ * @throws IOException IO Exception.
+ */
private void createSampleDeviceTypeMetaDefinition()
throws SAXException, JAXBException, ParserConfigurationException, DeviceTypeConfigurationException,
IOException {
@@ -73,9 +111,10 @@ public class HttpDeviceTypeManagerServiceTest {
.getDeviceTypeConfiguration(androidSenseConfiguration);
PushNotificationProvider pushNotificationProvider = androidSenseDeviceTypeConfiguration
.getPushNotificationProvider();
- PushNotificationConfig pushNotificationConfig = new PushNotificationConfig(pushNotificationProvider.getType()
- , pushNotificationProvider.isScheduled(), null);
- org.wso2.carbon.device.mgt.extensions.device.type.template.config.License license = androidSenseDeviceTypeConfiguration.getLicense();
+ PushNotificationConfig pushNotificationConfig = new PushNotificationConfig(pushNotificationProvider.getType(),
+ pushNotificationProvider.isScheduled(), null);
+ org.wso2.carbon.device.mgt.extensions.device.type.template.config.License license = androidSenseDeviceTypeConfiguration
+ .getLicense();
License androidSenseLicense = new License();
androidSenseLicense.setText(license.getText());
androidSenseLicense.setLanguage(license.getLanguage());
@@ -98,22 +137,5 @@ public class HttpDeviceTypeManagerServiceTest {
deviceTypeMetaDefinition.setLicense(androidSenseLicense);
deviceTypeMetaDefinition.setFeatures(features);
}
-
- @Test(description = "This test case tests the get type method of the device type manager")
- public void testGetType() {
- Assert.assertEquals(httpDeviceTypeManagerService.getType(), androidSenseDeviceType,
- "HttpDeviceTypeManagerService returns" + " a different device type than initially provided");
- }
-
- @Test(description = "This test case tests the enrollment of newly added device type")
- public void testEnrollDevice() throws DeviceManagementException {
- String deviceId = "testdevice1";
- Device sampleDevice1 = new Device(deviceId, androidSenseDeviceType, "test", "testdevice", null, null, null);
- Assert.assertTrue(httpDeviceTypeManagerService.getDeviceManager().enrollDevice(sampleDevice1),
- "Enrollment of " + androidSenseDeviceType + " device failed");
- Assert.assertTrue(httpDeviceTypeManagerService.getDeviceManager()
- .isEnrolled(new DeviceIdentifier(deviceId, androidSenseDeviceType)),
- "Enrollment of " + androidSenseDeviceType + " device " + "failed");
- }
}
diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.extensions/src/test/resources/testng.xml b/components/device-mgt/org.wso2.carbon.device.mgt.extensions/src/test/resources/testng.xml
index ec78403575d..bad5807be53 100644
--- a/components/device-mgt/org.wso2.carbon.device.mgt.extensions/src/test/resources/testng.xml
+++ b/components/device-mgt/org.wso2.carbon.device.mgt.extensions/src/test/resources/testng.xml
@@ -26,7 +26,7 @@
-
+