@ -35,8 +35,8 @@
<artifactId > h2</artifactId>
<artifactId > h2</artifactId>
</dependency>
</dependency>
<dependency >
<dependency >
<groupId > org.wso2.carbon.devicemgt </groupId>
<groupId > io.entgra.device.mgt.core </groupId>
<artifactId > org.wso2.carbon .device.mgt.oauth.extensions</artifactId>
<artifactId > io.entgra.device.mgt.core .device.mgt.oauth.extensions</artifactId>
</dependency>
</dependency>
<dependency >
<dependency >
<groupId > org.wso2.am</groupId>
<groupId > org.wso2.am</groupId>
@ -109,14 +109,40 @@
</goals>
</goals>
<configuration >
<configuration >
<target name= "increase IDN_OAUTH2_ACCESS_TOKEN_SCOPE -> TOKEN_SCOPE column size" >
<target name= "increase IDN_OAUTH2_ACCESS_TOKEN_SCOPE -> TOKEN_SCOPE column size" >
<replace file= "target/${wso2am}/dbscripts/apimgt/db2.sql" token= "TOKEN_SCOPE VARCHAR (60) NOT NULL," value= "TOKEN_SCOPE VARCHAR (255) NOT NULL," />
<replace file= "target/${wso2am}/dbscripts/apimgt/db2.sql" token= "TOKEN_SCOPE VARCHAR (60) NOT NULL," value= "TOKEN_SCOPE VARCHAR (1000) NOT NULL," />
<replace file= "target/${wso2am}/dbscripts/apimgt/h2.sql" token= "TOKEN_SCOPE VARCHAR (60)," value= "TOKEN_SCOPE VARCHAR (255)," />
<replace file= "target/${wso2am}/dbscripts/apimgt/h2.sql" token= "TOKEN_SCOPE VARCHAR (60)," value= "TOKEN_SCOPE VARCHAR (1000)," />
<replace file= "target/${wso2am}/dbscripts/apimgt/mssql.sql" token= "TOKEN_SCOPE VARCHAR (60)," value= "TOKEN_SCOPE VARCHAR (255)," />
<replace file= "target/${wso2am}/dbscripts/apimgt/mssql.sql" token= "TOKEN_SCOPE VARCHAR (60)," value= "TOKEN_SCOPE VARCHAR (1000)," />
<replace file= "target/${wso2am}/dbscripts/apimgt/mysql.sql" token= "TOKEN_SCOPE VARCHAR (60)," value= "TOKEN_SCOPE VARCHAR (255)," />
<replace file= "target/${wso2am}/dbscripts/apimgt/mysql.sql" token= "TOKEN_SCOPE VARCHAR (60)," value= "TOKEN_SCOPE VARCHAR (1000)," />
<replace file= "target/${wso2am}/dbscripts/apimgt/mysql_cluster.sql" token= "TOKEN_SCOPE VARCHAR(60)," value= "TOKEN_SCOPE VARCHAR(255)," />
<replace file= "target/${wso2am}/dbscripts/apimgt/mysql_cluster.sql" token= "TOKEN_SCOPE VARCHAR(60)," value= "TOKEN_SCOPE VARCHAR(1000)," />
<replace file= "target/${wso2am}/dbscripts/apimgt/oracle.sql" token= "TOKEN_SCOPE VARCHAR2 (60)," value= "TOKEN_SCOPE VARCHAR2 (255)," />
<replace file= "target/${wso2am}/dbscripts/apimgt/oracle.sql" token= "TOKEN_SCOPE VARCHAR2 (60)," value= "TOKEN_SCOPE VARCHAR2 (1000)," />
<replace file= "target/${wso2am}/dbscripts/apimgt/oracle_rac.sql" token= "TOKEN_SCOPE VARCHAR2 (60)," value= "TOKEN_SCOPE VARCHAR2 (60)," />
<replace file= "target/${wso2am}/dbscripts/apimgt/oracle_rac.sql" token= "TOKEN_SCOPE VARCHAR2 (60)," value= "TOKEN_SCOPE VARCHAR2 (1000)," />
<replace file= "target/${wso2am}/dbscripts/apimgt/postgresql.sql" token= "TOKEN_SCOPE VARCHAR (60)," value= "TOKEN_SCOPE VARCHAR (60)," />
<replace file= "target/${wso2am}/dbscripts/apimgt/postgresql.sql" token= "TOKEN_SCOPE VARCHAR (60)," value= "TOKEN_SCOPE VARCHAR (1000)," />
</target>
</configuration>
</execution>
<execution >
<!-- Alter Apimgt h2 db -->
<id > alter-apimgt-h2-db</id>
<phase > process-resources</phase>
<goals >
<goal > run</goal>
</goals>
<configuration >
<target >
<echo message= "########### Alter apimgt H2 Schema ###########" />
<property name= "db.dir" value= "target/${wso2am}/repository/database" />
<property name= "userid" value= "wso2carbon" />
<property name= "password" value= "wso2carbon" />
<property name= "dbURL" value= "jdbc:h2:file:${basedir}/${db.dir}/WSO2AM_DB;AUTO_SERVER=TRUE;DB_CLOSE_ON_EXIT=FALSE" />
<sql driver= "org.h2.Driver" url= "${dbURL}" userid= "${userid}" password= "${password}" autocommit= "true" onerror= "continue" >
<classpath refid= "maven.dependency.classpath" />
<classpath refid= "maven.compile.classpath" />
<classpath refid= "maven.runtime.classpath" />
<fileset file= "${basedir}/src/core/scripts/alter-apimgt-h2-db.sql" />
</sql>
<echo message= "##################### END ####################" />
</target>
</target>
</configuration>
</configuration>
</execution>
</execution>
@ -244,122 +270,122 @@
<featureArtifacts >
<featureArtifacts >
<!-- Device Management Features -->
<!-- Device Management Features -->
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:org.wso2.carbon.device.mgt.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.device.mgt.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:org.wso2.carbon.device.mgt.extensions.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.device.mgt.extensions.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:org.wso2.carbon.policy.mgt.server.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.policy.mgt.server.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:org.wso2.carbon.certificate.mgt.api.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.certificate.mgt.api.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:org.wso2.carbon.certificate.mgt.cert.admin.api.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.certificate.mgt.cert.admin.api.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:org.wso2.carbon.certificate.mgt.server.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.certificate.mgt.server.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:org.wso2.carbon.apimgt.webapp.publisher.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.apimgt.webapp.publisher.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:org.wso2.carbon.identity.jwt.client.extension.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.identity.jwt.client.extension.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:org.wso2.carbon.webapp.authenticator.framework.server.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.webapp.authenticator.framework.server.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:org.wso2.carbon.apimgt.application.extension.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.apimgt.application.extension.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:org.wso2.carbon.apimgt.keymgt.extension.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.apimgt.keymgt.extension.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:org.wso2.carbon.email.sender.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.email.sender.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
io.entgra.devicemgt:io.entgra.ui.request.interceptor.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.ui.request.interceptor.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:org.wso2.carbon.device.mgt.extensions.device.type.deployer.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.device.mgt.extensions.device.type.deployer.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:org.wso2.carbon.device.mgt.extensions.push.notification.provider.mqtt.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.device.mgt.extensions.push.notification.provider.mqtt.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:org.wso2.carbon.device.mgt.extensions.push.notification.provider.http.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.device.mgt.extensions.push.notification.provider.http.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:org.wso2.carbon.device.mgt.extensions.push.notification.provider.fcm.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.device.mgt.extensions.push.notification.provider.fcm.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:org.wso2.carbon.device.mgt.extensions.push.notification.provider.xmpp.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.device.mgt.extensions.push.notification.provider.xmpp.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:io.entgra.server.heart.beat.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.server.heart.beat.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<!-- End of Device Management Features -->
<!-- End of Device Management Features -->
<!-- Grafana Management Features -->
<!-- Grafana Management Features -->
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:io.entgra.analytics.mgt.grafana.proxy.server.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.analytics.mgt.grafana.proxy.server.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:io.entgra.analytics.mgt.grafana.proxy.api.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.analytics.mgt.grafana.proxy.api.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<!-- End of Grafana Management Features -->
<!-- End of Grafana Management Features -->
<!-- SMS Management Features -->
<!-- SMS Management Features -->
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:io.entgra.transport.mgt.sms.handler.server.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.transport.mgt.sms.handler.server.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:io.entgra.transport.mgt.sms.handler.api.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.transport.mgt.sms.handler.api.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<!-- End of SMS Management Features -->
<!-- End of SMS Management Features -->
<!-- App Manager Features -->
<!-- App Manager Features -->
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:io.entgra.application.mgt.api.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.application.mgt.api.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:io.entgra.application.mgt.server.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.application.mgt.server.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<!-- End of New App Manager Features -->
<!-- End of New App Manager Features -->
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:io.entgra.device.mgt.extensions.defaultrole.manager.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.device.mgt.extensions.defaultrole.manager.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:io.entgra.device.mgt.extensions.logger.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.device.mgt.extensions.logger.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:io.entgra.device.mgt.extensions.stateengine.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.device.mgt.extensions.stateengine.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<!-- Task Mgt Feature -->
<!-- Task Mgt Feature -->
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:io.entgra.task.mgt.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.task.mgt.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<!-- End of Task Mgt Feature -->
<!-- End of Task Mgt Feature -->
<!-- Notification Logger Feature -->
<!-- Notification Logger Feature -->
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:io.entgra.notification.logger.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.notification.logger.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<!-- End of Notification Logger Feature -->
<!-- End of Notification Logger Feature -->
<!-- APIM analytics extension feature -->
<!-- APIM analytics extension feature -->
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:io.entgra.device.mgt.core.apimgt.analytics.extension.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.apimgt.analytics.extension.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<!-- End of APIM analytics extension feature -->
<!-- End of APIM analytics extension feature -->
<!-- Tenant Management Feature -->
<!-- Tenant Management Feature -->
<featureArtifactDef >
<featureArtifactDef >
org.wso2.carbon.devicemgt:io.entgra.tenant.mgt.server.feature:${carbon.device.mgt .version}
io.entgra.device.mgt.core:io.entgra.device.mgt.core.tenant.mgt.server.feature:${io.entgra.device.mgt.core .version}
</featureArtifactDef>
</featureArtifactDef>
<!-- End of Tenant Management Feature -->
<!-- End of Tenant Management Feature -->
</featureArtifacts>
</featureArtifacts>
@ -380,170 +406,170 @@
<features >
<features >
<!-- Device Management Features -->
<!-- Device Management Features -->
<feature >
<feature >
<id > org.wso2.carbon .device.mgt.feature.group</id>
<id > io.entgra.device.mgt.core .device.mgt.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<feature >
<feature >
<id > org.wso2.carbon .device.mgt.extensions.feature.group</id>
<id > io.entgra.device.mgt.core .device.mgt.extensions.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<!-- Grafana Management Features -->
<!-- Grafana Management Features -->
<feature >
<feature >
<id > io.entgra.analytics.mgt.grafana.proxy.server.feature.group</id>
<id > io.entgra.device.mgt.core. analytics.mgt.grafana.proxy.server.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<feature >
<feature >
<id > io.entgra.analytics.mgt.grafana.proxy.api.feature.group</id>
<id > io.entgra.device.mgt.core. analytics.mgt.grafana.proxy.api.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<!-- End of Grafana Management Features -->
<!-- End of Grafana Management Features -->
<!-- App Manager Features -->
<!-- App Manager Features -->
<feature >
<feature >
<id > io.entgra.application.mgt.api.feature.group</id>
<id > io.entgra.device.mgt.core. application.mgt.api.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<feature >
<feature >
<id > io.entgra.application.mgt.server.feature.group</id>
<id > io.entgra.device.mgt.core. application.mgt.server.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<!-- End of App Manager Features -->
<!-- End of App Manager Features -->
<!-- SMS Management Features -->
<!-- SMS Management Features -->
<feature >
<feature >
<id > io.entgra.transport.mgt.sms.handler.server.feature.group</id>
<id > io.entgra.device.mgt.core. transport.mgt.sms.handler.server.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<feature >
<feature >
<id > io.entgra.transport.mgt.sms.handler.api.feature.group</id>
<id > io.entgra.device.mgt.core. transport.mgt.sms.handler.api.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<!-- End of SMS Management Features -->
<!-- End of SMS Management Features -->
<!-- Email Sender Feature -->
<!-- Email Sender Feature -->
<feature >
<feature >
<id > org.wso2.carbon .email.sender.feature.group</id>
<id > io.entgra.device.mgt.core .email.sender.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<!-- Apimgt Extension Features -->
<!-- Apimgt Extension Features -->
<feature >
<feature >
<id > org.wso2.carbon .apimgt.application.extension.feature.group</id>
<id > io.entgra.device.mgt.core .apimgt.application.extension.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<feature >
<feature >
<id > org.wso2.carbon .apimgt.webapp.publisher.feature.group</id>
<id > io.entgra.device.mgt.core .apimgt.webapp.publisher.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<feature >
<feature >
<id > org.wso2.carbon .apimgt.keymgt.extension.feature.group</id>
<id > io.entgra.device.mgt.core .apimgt.keymgt.extension.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<!-- Certificate Mgt Features -->
<!-- Certificate Mgt Features -->
<feature >
<feature >
<id > org.wso2.carbon .certificate.mgt.server.feature.group</id>
<id > io.entgra.device.mgt.core .certificate.mgt.server.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<feature >
<feature >
<id > org.wso2.carbon .certificate.mgt.api.feature.group</id>
<id > io.entgra.device.mgt.core .certificate.mgt.api.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<feature >
<feature >
<id > org.wso2.carbon .certificate.mgt.cert.admin.api.feature.group</id>
<id > io.entgra.device.mgt.core .certificate.mgt.cert.admin.api.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<!-- Device Mgt Extension Features -->
<!-- Device Mgt Extension Features -->
<feature >
<feature >
<id > org.wso2.carbon .device.mgt.extensions.device.type.deployer.feature.group</id>
<id > io.entgra.device.mgt.core .device.mgt.extensions.device.type.deployer.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<feature >
<feature >
<id > org.wso2.carbon .device.mgt.extensions.push.notification.provider.mqtt.feature.group</id>
<id > io.entgra.device.mgt.core .device.mgt.extensions.push.notification.provider.mqtt.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<feature >
<feature >
<id > org.wso2.carbon .device.mgt.extensions.push.notification.provider.http.feature.group</id>
<id > io.entgra.device.mgt.core .device.mgt.extensions.push.notification.provider.http.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<feature >
<feature >
<id > org.wso2.carbon .device.mgt.extensions.push.notification.provider.fcm.feature.group</id>
<id > io.entgra.device.mgt.core .device.mgt.extensions.push.notification.provider.fcm.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<feature >
<feature >
<id > org.wso2.carbon .device.mgt.extensions.push.notification.provider.xmpp.feature.group</id>
<id > io.entgra.device.mgt.core .device.mgt.extensions.push.notification.provider.xmpp.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<!-- Heartbeat Mgt -->
<!-- Heartbeat Mgt -->
<feature >
<feature >
<id > io.entgra.server.heart.beat.feature.group</id>
<id > io.entgra.device.mgt.core. server.heart.beat.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<!-- jwt client -->
<!-- jwt client -->
<feature >
<feature >
<id > org.wso2.carbon .identity.jwt.client.extension.feature.group</id>
<id > io.entgra.device.mgt.core .identity.jwt.client.extension.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<!-- policy mgt -->
<!-- policy mgt -->
<feature >
<feature >
<id > org.wso2.carbon .policy.mgt.server.feature.group</id>
<id > io.entgra.device.mgt.core .policy.mgt.server.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<!-- UI request interceptor -->
<!-- UI request interceptor -->
<feature >
<feature >
<id > io.entgra.ui.request.interceptor.feature.group</id>
<id > io.entgra.device.mgt.core. ui.request.interceptor.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<!-- Webapp authentication framework -->
<!-- Webapp authentication framework -->
<feature >
<feature >
<id > org.wso2.carbon .webapp.authenticator.framework.server.feature.group</id>
<id > io.entgra.device.mgt.core .webapp.authenticator.framework.server.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<feature >
<feature >
<id > io.entgra.device.mgt.extensions.defaultrole.manager.feature.group</id>
<id > io.entgra.device.mgt.core.device.mgt. extensions.defaultrole.manager.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<feature >
<feature >
<id > io.entgra.device.mgt.extensions.logger.feature.group</id>
<id > io.entgra.device.mgt.core.device.mgt. extensions.logger.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<feature >
<feature >
<id > io.entgra.device.mgt.extensions.stateengine.feature.group</id>
<id > io.entgra.device.mgt.core.device.mgt. extensions.stateengine.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<!-- Task mgt -->
<!-- Task mgt -->
<feature >
<feature >
<id > io.entgra.task.mgt.feature.group</id>
<id > io.entgra.device.mgt.core. task.mgt.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<!-- Notification Logger -->
<!-- Notification Logger -->
<feature >
<feature >
<id > io.entgra.notification.logger.feature.group</id>
<id > io.entgra.device.mgt.core. notification.logger.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<!-- APIM Analytics extension -->
<!-- APIM Analytics extension -->
<feature >
<feature >
<id > io.entgra.device.mgt.core.apimgt.analytics.extension.feature.group</id>
<id > io.entgra.device.mgt.core.apimgt.analytics.extension.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
<!-- Tenant Management -->
<!-- Tenant Management -->
<feature >
<feature >
<id > io.entgra.tenant.mgt.server.feature.group</id>
<id > io.entgra.device.mgt.core. tenant.mgt.server.feature.group</id>
<version > ${carbon.device.mgt .version}</version>
<version > ${io.entgra.device.mgt.core .version}</version>
</feature>
</feature>
</features>
</features>
</configuration>
</configuration>