diff --git a/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/pom.xml b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/pom.xml
new file mode 100644
index 0000000000..9d27465fac
--- /dev/null
+++ b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/pom.xml
@@ -0,0 +1,163 @@
+
+
+
+
+
+
+
+ org.wso2.carbon.devicemgt-plugins
+ androidsense-plugin-feature
+ 3.0.32-SNAPSHOT
+ ../pom.xml
+
+
+ 4.0.0
+ org.wso2.carbon.device.mgt.iot.androidsense.ui.feature
+ 3.0.32-SNAPSHOT
+ pom
+ WSO2 Carbon - IoT Server Android Sense UI Feature
+ http://wso2.org
+ This feature contains the Android Sense Device type UI specific implementations for the IoT Server
+
+
+
+
+
+
+ maven-resources-plugin
+
+
+ copy-resources
+ generate-resources
+
+ copy-resources
+
+
+ src/main/resources
+
+
+ resources
+
+ build.properties
+ p2.inf
+
+
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+
+
+ unpack
+ package
+
+ unpack
+
+
+
+
+ org.wso2.carbon.devicemgt-plugins
+ org.wso2.carbon.device.mgt.iot.androidsense.ui
+
+ ${project.version}
+ zip
+ true
+
+ ${project.build.directory}/maven-shared-archive-resources/jaggeryapps/devicemgt
+
+ **/*
+
+
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-antrun-plugin
+
+
+
+ create-android-sense-plugin-mgt-schema
+ package
+
+ run
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ org.wso2.maven
+ carbon-p2-plugin
+ ${carbon.p2.plugin.version}
+
+
+ p2-feature-generation
+ package
+
+ p2-feature-gen
+
+
+ org.wso2.carbon.device.mgt.iot.androidsense
+ ../../../features/etc/feature.properties
+
+
+ org.wso2.carbon.p2.category.type:server
+ org.eclipse.equinox.p2.type.group:true
+
+
+
+ org.wso2.carbon.core.server:${carbon.kernel.version}
+ org.wso2.carbon.device.mgt.server:${carbon.devicemgt.version}
+
+
+
+
+
+
+
+
+
diff --git a/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/build.properties b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/build.properties
new file mode 100644
index 0000000000..93c4b10701
--- /dev/null
+++ b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/build.properties
@@ -0,0 +1 @@
+custom = true
\ No newline at end of file
diff --git a/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/datasources/androidsense-datasources.xml b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/datasources/androidsense-datasources.xml
new file mode 100644
index 0000000000..9a1374b09e
--- /dev/null
+++ b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/datasources/androidsense-datasources.xml
@@ -0,0 +1,46 @@
+
+
+
+
+ org.wso2.carbon.ndatasource.rdbms.RDBMSDataSourceReader
+
+
+
+ AndroidSenseDM_DB
+ The datasource used for the Android Sense database
+
+ jdbc/AndroidSenseDM_DB
+
+
+
+ jdbc:h2:repository/database/AndroidSenseDM_DB;DB_CLOSE_ON_EXIT=FALSE
+
+ wso2carbon
+ wso2carbon
+ org.h2.Driver
+ 50
+ 60000
+ true
+ SELECT 1
+ 30000
+
+
+
+
+
diff --git a/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/dbscripts/h2.sql b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/dbscripts/h2.sql
new file mode 100644
index 0000000000..ee3bfa73a4
--- /dev/null
+++ b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/dbscripts/h2.sql
@@ -0,0 +1,8 @@
+
+-- -----------------------------------------------------
+-- Table `ANDROID_DEVICE`
+-- -----------------------------------------------------
+CREATE TABLE IF NOT EXISTS `ANDROID_SENSE_DEVICE` (
+ `ANDROID_DEVICE_ID` VARCHAR(45) NOT NULL ,
+ `DEVICE_NAME` VARCHAR(100) NULL DEFAULT NULL,
+ PRIMARY KEY (`ANDROID_DEVICE_ID`) );
diff --git a/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/dbscripts/mssql.sql b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/dbscripts/mssql.sql
new file mode 100644
index 0000000000..cf677ff074
--- /dev/null
+++ b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/dbscripts/mssql.sql
@@ -0,0 +1,8 @@
+
+-- -----------------------------------------------------
+-- Table `ANDROID_DEVICE`
+-- -----------------------------------------------------
+CREATE TABLE IF NOT EXISTS ANDROID_SENSE_DEVICE (
+ ANDROID_DEVICE_ID VARCHAR(45) NOT NULL ,
+ DEVICE_NAME VARCHAR(100) NULL DEFAULT NULL,
+ PRIMARY KEY (ANDROID_DEVICE_ID) );
diff --git a/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/dbscripts/mysql.sql b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/dbscripts/mysql.sql
new file mode 100644
index 0000000000..4637b4daf2
--- /dev/null
+++ b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/dbscripts/mysql.sql
@@ -0,0 +1,12 @@
+-- -----------------------------------------------------
+-- Table `ANDROID_DEVICE`
+-- -----------------------------------------------------
+CREATE TABLE IF NOT EXISTS `ANDROID_SENSE_DEVICE` (
+ `ANDROID_DEVICE_ID` VARCHAR(45) NOT NULL ,
+ `DEVICE_NAME` VARCHAR(100) NULL DEFAULT NULL,
+ PRIMARY KEY (`ANDROID_DEVICE_ID`) )
+ENGINE = InnoDB;
+
+
+
+
diff --git a/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/dbscripts/oracle.sql b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/dbscripts/oracle.sql
new file mode 100644
index 0000000000..6f8537eb82
--- /dev/null
+++ b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/dbscripts/oracle.sql
@@ -0,0 +1,8 @@
+
+-- -----------------------------------------------------
+-- Table `ANDROID_DEVICE`
+-- -----------------------------------------------------
+CREATE TABLE ANDROID_SENSE_DEVICE (
+ ANDROID_DEVICE_ID VARCHAR(45) NOT NULL ,
+ DEVICE_NAME VARCHAR(100) NULL DEFAULT NULL,
+ PRIMARY KEY (ANDROID_DEVICE_ID) );
diff --git a/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/dbscripts/postgresql.sql b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/dbscripts/postgresql.sql
new file mode 100644
index 0000000000..987f4992b3
--- /dev/null
+++ b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/dbscripts/postgresql.sql
@@ -0,0 +1,8 @@
+
+-- -----------------------------------------------------
+-- Table `ANDROID_DEVICE`
+-- -----------------------------------------------------
+CREATE TABLE IF NOT EXISTS ANDROID_SENSE_DEVICE (
+ ANDROID_DEVICE_ID VARCHAR(45) NOT NULL ,
+ DEVICE_NAME VARCHAR(100) NULL DEFAULT NULL,
+ PRIMARY KEY (ANDROID_DEVICE_ID));
diff --git a/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/devicetypes/android_sense.xml b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/devicetypes/android_sense.xml
new file mode 100644
index 0000000000..764aa311a5
--- /dev/null
+++ b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/devicetypes/android_sense.xml
@@ -0,0 +1,71 @@
+
+
+
+
+
+
+ Add Keywords
+ Send keywords to the device
+
+
+
+
+
+
+
+ Add Threshold
+ Send Threshold to the device
+
+
+
+
+
+
+
+ Remove words
+ Remove Threshold from the device
+
+
+
+
+
+
+
+
+
+ true
+
+
+
+ true
+
+
+ androidsense.mqtt.adapter
+ 0
+ true
+
+
+
+
+ en_US
+ 1.0.0
+ This is license text
+
+
+
\ No newline at end of file
diff --git a/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/p2.inf b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/p2.inf
new file mode 100644
index 0000000000..90429a5c26
--- /dev/null
+++ b/features/device-types-feature/androidsense-plugin-feature/org.wso2.carbon.device.mgt.iot.androidsense.ui.feature/src/main/resources/p2.inf
@@ -0,0 +1,22 @@
+instructions.configure = \
+org.eclipse.equinox.p2.touchpoint.natives.mkdir(path:${installFolder}/../../../resources/);\
+org.eclipse.equinox.p2.touchpoint.natives.mkdir(path:${installFolder}/../../../resources/devicetypes/);\
+org.eclipse.equinox.p2.touchpoint.natives.mkdir(path:${installFolder}/../../../resources/devicetypes/android_sense/);\
+org.eclipse.equinox.p2.touchpoint.natives.copy(source:${installFolder}/../features/org.wso2.carbon.device.mgt.iot.androidsense_${feature.version}/dbscripts/,target:${installFolder}/../../../dbscripts/cdm/plugins/android_sense,overwrite:true);\
+org.eclipse.equinox.p2.touchpoint.natives.copy(source:${installFolder}/../features/org.wso2.carbon.device.mgt.iot.androidsense_${feature.version}/datasources/,target:${installFolder}/../../../repository/conf/datasources/,overwrite:true);\
+org.eclipse.equinox.p2.touchpoint.natives.mkdir(path:${installFolder}/../../../repository/deployment/server/jaggeryapps/);\
+org.eclipse.equinox.p2.touchpoint.natives.copy(source:${installFolder}/../features/org.wso2.carbon.device.mgt.iot.androidsense_${feature.version}/jaggeryapps/,target:${installFolder}/../../../repository/deployment/server/jaggeryapps/,overwrite:true);\
+org.eclipse.equinox.p2.touchpoint.natives.mkdir(path:${installFolder}/../../../repository/deployment/server/devicetypes/);\
+org.eclipse.equinox.p2.touchpoint.natives.copy(source:${installFolder}/../features/org.wso2.carbon.device.mgt.iot.androidsense_${feature.version}/devicetypes/,target:${installFolder}/../../../repository/deployment/server/devicetypes/,overwrite:true);\
+
+instructions.unconfigure = \
+org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/../../../dbscripts/cdm/plugins/android_sense);\
+org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/../../../repository/resources/sketches/android_sense);\
+org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/../../../repository/conf/datasources/androidsense-datasources.xml);\
+org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/../../../repository/database/AndroidSenseDM_DB.h2.db);\
+org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/../../../repository/deployment/server/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.android_sense.device-view);\
+org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/../../../repository/deployment/server/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.android_sense.type-view);\
+org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/../../../repository/deployment/server/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.android_sense.analytics-view);\
+org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/../../../repository/deployment/server/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.android_sense.platform.configuration);\
+org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/../../../repository/deployment/server/jaggeryapps/devicemgt/app/units/cdmf.unit.device.type.android_sense.realtime.analytics-view);\
+org.eclipse.equinox.p2.touchpoint.natives.remove(path:${installFolder}/../../../repository/deployment/server/devicetypes/android_sense.xml);\
\ No newline at end of file
diff --git a/features/device-types-feature/androidsense-plugin-feature/pom.xml b/features/device-types-feature/androidsense-plugin-feature/pom.xml
index 4e5ea1be05..bd59256e21 100644
--- a/features/device-types-feature/androidsense-plugin-feature/pom.xml
+++ b/features/device-types-feature/androidsense-plugin-feature/pom.xml
@@ -33,7 +33,7 @@
http://wso2.org
- org.wso2.carbon.device.mgt.iot.androidsense.feature
+ org.wso2.carbon.device.mgt.iot.androidsense.ui.feature