From 476e439fe280d4b89a118cfd77273d755e8cd1cf Mon Sep 17 00:00:00 2001 From: Hasunie Date: Tue, 14 Feb 2017 22:16:55 +0530 Subject: [PATCH 1/5] Fixing the task to get the only device registered tenants --- .../org.wso2.carbon.device.mgt.core/pom.xml | 1 - .../carbon/device/mgt/core/dao/DeviceDAO.java | 7 ++++++ .../core/dao/impl/AbstractDeviceDAOImpl.java | 22 +++++++++++++++++ .../DeviceManagementProviderService.java | 2 ++ .../DeviceManagementProviderServiceImpl.java | 16 +++++++++++++ .../task/impl/DeviceDetailsRetrieverTask.java | 24 ++++++++++++------- .../org.wso2.carbon.policy.mgt.core/pom.xml | 2 +- .../policy/mgt/core/task/MonitoringTask.java | 23 ++++++++++++++---- 8 files changed, 82 insertions(+), 15 deletions(-) diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/pom.xml b/components/device-mgt/org.wso2.carbon.device.mgt.core/pom.xml index f2b7a661a40..bfca19892e4 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/pom.xml +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/pom.xml @@ -89,7 +89,6 @@ org.scannotation.* - !org.wso2.carbon.device.mgt.core.internal, org.wso2.carbon.device.mgt.core.* 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 1eb39fc5020..a634fe93b67 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 @@ -420,5 +420,12 @@ public interface DeviceDAO { */ List getEnrolmentsByStatus(List deviceIds, Status status, int tenantId) throws DeviceManagementDAOException; + + /** + * Retrieving the tenants which are have device enrolled. + * @return + * @throws DeviceManagementDAOException + */ + List getDeviceEnrolledTenants() 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/AbstractDeviceDAOImpl.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/impl/AbstractDeviceDAOImpl.java index ffb9aacc1f1..7131d973237 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/impl/AbstractDeviceDAOImpl.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/dao/impl/AbstractDeviceDAOImpl.java @@ -1062,4 +1062,26 @@ public abstract class AbstractDeviceDAOImpl implements DeviceDAO { return devices; } + public List getDeviceEnrolledTenants() throws DeviceManagementDAOException { + Connection conn; + PreparedStatement stmt = null; + ResultSet rs = null; + List tenants = new ArrayList<>(); + try { + conn = this.getConnection(); + String sql = "SELECT distinct(TENANT_ID) FROM DM_DEVICE"; + stmt = conn.prepareStatement(sql); + rs = stmt.executeQuery(); + while (rs.next()) { + tenants.add(rs.getInt("TENANT_ID")); + } + } catch (SQLException e) { + throw new DeviceManagementDAOException("Error occurred while retrieving tenants which have " + + "device registered.", e); + } finally { + DeviceManagementDAOUtil.cleanupResources(stmt, rs); + } + return tenants; + } + } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderService.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderService.java index 082b155658f..bef274e572c 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderService.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderService.java @@ -307,4 +307,6 @@ public interface DeviceManagementProviderService { PolicyMonitoringManager getPolicyMonitoringManager(String deviceType); + List getDeviceEnrolledTenants() throws DeviceManagementException; + } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderServiceImpl.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderServiceImpl.java index a9d974b4af6..f21e091316d 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderServiceImpl.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/service/DeviceManagementProviderServiceImpl.java @@ -316,6 +316,22 @@ public class DeviceManagementProviderServiceImpl implements DeviceManagementProv } @Override + public List getDeviceEnrolledTenants() throws DeviceManagementException { + try { + DeviceManagementDAOFactory.openConnection(); + return deviceDAO.getDeviceEnrolledTenants(); + } catch (DeviceManagementDAOException e) { + throw new DeviceManagementException("Error occurred while retrieving the tenants " + + "which have device enrolled.", e); + } catch (SQLException e) { + throw new DeviceManagementException("Error occurred while opening a connection to the data source", e); + } finally { + DeviceManagementDAOFactory.closeConnection(); + } + } + + + @Override public boolean disenrollDevice(DeviceIdentifier deviceId) throws DeviceManagementException { DeviceManager deviceManager = this.getDeviceManager(deviceId.getType()); if (deviceManager == null) { diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/task/impl/DeviceDetailsRetrieverTask.java b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/task/impl/DeviceDetailsRetrieverTask.java index f13f0134783..fcd10a349ef 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/task/impl/DeviceDetailsRetrieverTask.java +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/src/main/java/org/wso2/carbon/device/mgt/core/task/impl/DeviceDetailsRetrieverTask.java @@ -30,6 +30,8 @@ import org.wso2.carbon.device.mgt.core.task.DeviceTaskManager; import org.wso2.carbon.ntask.core.Task; import org.wso2.carbon.user.api.Tenant; import org.wso2.carbon.user.api.UserStoreException; +import org.wso2.carbon.device.mgt.common.DeviceManagementException; +import java.util.List; import java.util.Map; @@ -58,20 +60,22 @@ public class DeviceDetailsRetrieverTask implements Task { @Override public void execute() { - if (log.isDebugEnabled()) { log.debug("Device details retrieving task started to run."); } try { - Tenant tenants[] = DeviceManagementDataHolder.getInstance(). - getRealmService().getTenantManager().getAllTenants(); - - for (Tenant tenant : tenants) { - +// Tenant tenants[] = DeviceManagementDataHolder.getInstance(). +// getRealmService().getTenantManager().getAllTenants(); + + List tenants = DeviceManagementDataHolder.getInstance(). + getDeviceManagementProvider().getDeviceEnrolledTenants(); + for (Integer tenant : tenants) { + String tenantDomain = DeviceManagementDataHolder.getInstance(). + getRealmService().getTenantManager().getDomain(tenant); try { PrivilegedCarbonContext.startTenantFlow(); - PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantDomain(tenant.getDomain()); - PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantId(tenant.getId()); + PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantDomain(tenantDomain); + PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantId(tenant); DeviceTaskManager deviceTaskManager = new DeviceTaskManagerImpl(deviceType, operationMonitoringTaskConfig); //pass the configurations also from here, monitoring tasks @@ -87,8 +91,12 @@ public class DeviceDetailsRetrieverTask implements Task { } } catch (UserStoreException e) { log.error("Error occurred while trying to get the available tenants", e); + } catch (DeviceManagementException e) { + log.error("Error occurred while trying to get the available tenants " + + "from device manager provider service.", e); } + } } diff --git a/components/policy-mgt/org.wso2.carbon.policy.mgt.core/pom.xml b/components/policy-mgt/org.wso2.carbon.policy.mgt.core/pom.xml index a61f6d8fdbf..2deba5e2124 100644 --- a/components/policy-mgt/org.wso2.carbon.policy.mgt.core/pom.xml +++ b/components/policy-mgt/org.wso2.carbon.policy.mgt.core/pom.xml @@ -71,7 +71,7 @@ org.wso2.carbon.device.mgt.core.*, org.wso2.carbon.device.mgt.common.*, org.wso2.carbon.ntask.*, - org.wso2.carbon.caching.* + org.wso2.carbon.caching.*, !org.wso2.carbon.policy.mgt.core.internal, diff --git a/components/policy-mgt/org.wso2.carbon.policy.mgt.core/src/main/java/org/wso2/carbon/policy/mgt/core/task/MonitoringTask.java b/components/policy-mgt/org.wso2.carbon.policy.mgt.core/src/main/java/org/wso2/carbon/policy/mgt/core/task/MonitoringTask.java index dce753ba514..4237b25d7a8 100644 --- a/components/policy-mgt/org.wso2.carbon.policy.mgt.core/src/main/java/org/wso2/carbon/policy/mgt/core/task/MonitoringTask.java +++ b/components/policy-mgt/org.wso2.carbon.policy.mgt.core/src/main/java/org/wso2/carbon/policy/mgt/core/task/MonitoringTask.java @@ -32,6 +32,10 @@ import org.wso2.carbon.policy.mgt.core.internal.PolicyManagementDataHolder; import org.wso2.carbon.policy.mgt.core.mgt.MonitoringManager; import org.wso2.carbon.user.api.Tenant; import org.wso2.carbon.user.api.UserStoreException; +import org.wso2.carbon.device.mgt.common.DeviceManagementException; +import org.wso2.carbon.device.mgt.common.policy.mgt.monitor.PolicyComplianceException; +import org.wso2.carbon.device.mgt.core.internal.DeviceManagementDataHolder; +import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderServiceImpl; import java.util.ArrayList; import java.util.List; @@ -61,15 +65,22 @@ public class MonitoringTask implements Task { } try { - Tenant tenants[] = PolicyManagementDataHolder.getInstance(). - getRealmService().getTenantManager().getAllTenants(); +// Tenant tenants[] = PolicyManagementDataHolder.getInstance(). +// getRealmService().getTenantManager().getAllTenants(); + + // for (Tenant tenant : tenants) { + - for (Tenant tenant : tenants) { + DeviceManagementProviderService deviceManagementService = new DeviceManagementProviderServiceImpl(); + List tenants = deviceManagementService.getDeviceEnrolledTenants(); + for (Integer tenant : tenants) { + String tenantDomain = DeviceManagementDataHolder.getInstance(). + getRealmService().getTenantManager().getDomain(tenant); try { PrivilegedCarbonContext.startTenantFlow(); - PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantDomain(tenant.getDomain()); - PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantId(tenant.getId()); + PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantDomain(tenantDomain); + PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantId(tenant); MonitoringManager monitoringManager = PolicyManagementDataHolder.getInstance().getMonitoringManager(); List deviceTypes = new ArrayList<>(); @@ -142,6 +153,8 @@ public class MonitoringTask implements Task { } catch (UserStoreException e) { log.error("Error occurred while trying to get the available tenants", e); + } catch (DeviceManagementException e) { + log.error("Error occurred while trying to get the available tenants from device manager service ", e); } } From b584a39a4101323b4d5973eb20966e67d749732c Mon Sep 17 00:00:00 2001 From: Hasunie Date: Tue, 14 Feb 2017 22:28:00 +0530 Subject: [PATCH 2/5] removing comma seperation in import packages --- components/policy-mgt/org.wso2.carbon.policy.mgt.core/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/components/policy-mgt/org.wso2.carbon.policy.mgt.core/pom.xml b/components/policy-mgt/org.wso2.carbon.policy.mgt.core/pom.xml index 2deba5e2124..a61f6d8fdbf 100644 --- a/components/policy-mgt/org.wso2.carbon.policy.mgt.core/pom.xml +++ b/components/policy-mgt/org.wso2.carbon.policy.mgt.core/pom.xml @@ -71,7 +71,7 @@ org.wso2.carbon.device.mgt.core.*, org.wso2.carbon.device.mgt.common.*, org.wso2.carbon.ntask.*, - org.wso2.carbon.caching.*, + org.wso2.carbon.caching.* !org.wso2.carbon.policy.mgt.core.internal, From 0cddd896d4936521a6d4b0b286a7b5f709204636 Mon Sep 17 00:00:00 2001 From: Imesh Chandrasiri Date: Thu, 16 Feb 2017 16:49:44 +0530 Subject: [PATCH 3/5] Tooltip fix --- .../pages/cdmf.page.devices/public/js/listing.js | 14 +++++++------- .../pages/cdmf.page.groups/public/js/listing.js | 10 +++++----- .../app/pages/cdmf.page.users/public/js/listing.js | 14 +++++++------- 3 files changed, 19 insertions(+), 19 deletions(-) diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.ui/src/main/resources/jaggeryapps/devicemgt/app/pages/cdmf.page.devices/public/js/listing.js b/components/device-mgt/org.wso2.carbon.device.mgt.ui/src/main/resources/jaggeryapps/devicemgt/app/pages/cdmf.page.devices/public/js/listing.js index c58f7185663..e7120f888e2 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.ui/src/main/resources/jaggeryapps/devicemgt/app/pages/cdmf.page.devices/public/js/listing.js +++ b/components/device-mgt/org.wso2.carbon.device.mgt.ui/src/main/resources/jaggeryapps/devicemgt/app/pages/cdmf.page.devices/public/js/listing.js @@ -315,7 +315,7 @@ function loadDevices(searchType, searchParam) { { targets: 6, data: 'status', - class: 'text-right content-fill text-left-on-grid-view no-wrap', + class: 'text-right content-fill text-left-on-grid-view no-wrap tooltip-overflow-fix', render: function (status, type, row, meta) { var deviceType = row.deviceType; var deviceIdentifier = row.deviceIdentifier; @@ -326,7 +326,7 @@ function loadDevices(searchType, searchParam) { if (analyticsEnabled(row.deviceType)) { html += '' + + ' class="btn padding-reduce-on-grid-view" data-placement="top" data-toggle="tooltip" data-original-title="Analytics">' + '' + ''; } @@ -337,7 +337,7 @@ function loadDevices(searchType, searchParam) { + 'data-deviceid="' + deviceIdentifier + '" data-devicetype="' + deviceType + '" data-devicename="' + - row.name + '" data-placement="bottom" data-toggle="tooltip" data-original-title="Group">' + + row.name + '" data-placement="top" data-toggle="tooltip" data-original-title="Group">' + '' + ''; } @@ -345,7 +345,7 @@ function loadDevices(searchType, searchParam) { html += '' + + '" data-devicename="' + row.name + '" data-placement="top" data-toggle="tooltip" data-original-title="Edit">' + '' + '' + ''; @@ -354,7 +354,7 @@ function loadDevices(searchType, searchParam) { html += '' + + '" data-devicename="' + row.name + '" data-placement="top" data-toggle="tooltip" data-original-title="Remove from group">' + '' + '' + ''; @@ -362,7 +362,7 @@ function loadDevices(searchType, searchParam) { html += '' + + '" data-devicename="' + row.name + '" data-placement="top" data-toggle="tooltip" data-original-title="Delete">' + '' + '' + ''; @@ -919,4 +919,4 @@ function getSelectedDevices() { }); return deviceList; -} \ No newline at end of file +} diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.ui/src/main/resources/jaggeryapps/devicemgt/app/pages/cdmf.page.groups/public/js/listing.js b/components/device-mgt/org.wso2.carbon.device.mgt.ui/src/main/resources/jaggeryapps/devicemgt/app/pages/cdmf.page.groups/public/js/listing.js index a3a49418b9e..91333c5b5d9 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.ui/src/main/resources/jaggeryapps/devicemgt/app/pages/cdmf.page.groups/public/js/listing.js +++ b/components/device-mgt/org.wso2.carbon.device.mgt.ui/src/main/resources/jaggeryapps/devicemgt/app/pages/cdmf.page.groups/public/js/listing.js @@ -180,13 +180,13 @@ function loadGroups() { { targets: 4, data: 'id', - class: 'text-right content-fill text-left-on-grid-view no-wrap', + class: 'text-right content-fill text-left-on-grid-view no-wrap tooltip-overflow-fix', render: function (id, type, row, meta) { var html = ''; if ($.hasPermission("VIEW_GROUP_DEVICES")) { html += '' + + 'data-placement="top" data-toggle="tooltip" data-original-title="Analytics">' + '' + ''; @@ -197,7 +197,7 @@ function loadGroups() { ''; } @@ -207,7 +207,7 @@ function loadGroups() { + row.name + '" ' + 'data-group-owner="' + row.owner + '" data-group-description="' + row.description + '" data-group-id="' + row.groupId - + '" data-placement="bottom" data-toggle="tooltip" data-original-title="Edit">' + + + '" data-placement="top" data-toggle="tooltip" data-original-title="Edit">' + ''; } if ($.hasPermission("REMOVE_GROUP")) { @@ -215,7 +215,7 @@ function loadGroups() { '' + + '" data-placement="top" data-toggle="tooltip" data-original-title="Delete">' + ''; } diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.ui/src/main/resources/jaggeryapps/devicemgt/app/pages/cdmf.page.users/public/js/listing.js b/components/device-mgt/org.wso2.carbon.device.mgt.ui/src/main/resources/jaggeryapps/devicemgt/app/pages/cdmf.page.users/public/js/listing.js index 8c8689f6510..0609c88c0a5 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.ui/src/main/resources/jaggeryapps/devicemgt/app/pages/cdmf.page.users/public/js/listing.js +++ b/components/device-mgt/org.wso2.carbon.device.mgt.ui/src/main/resources/jaggeryapps/devicemgt/app/pages/cdmf.page.users/public/js/listing.js @@ -337,31 +337,31 @@ function loadUsers() { } }, { - class: "text-right content-fill text-left-on-grid-view no-wrap", + class: "text-right content-fill text-left-on-grid-view no-wrap tooltip-overflow-fix", data: null, render: function (data, type, row, meta) { - var editbtn = ' ' + + 'class="btn padding-reduce-on-grid-view edit-user-link" data-placement="top" data-toggle="tooltip" data-original-title="Edit"> ' + ' ' + '' + '' + ''; - var resetPasswordbtn = '' + + 'class="btn padding-reduce-on-grid-view remove-user-link" data-placement="top" data-toggle="tooltip" data-original-title="Reset Password">' + '' + '' + '' + ''; - var removebtn = '' + + 'class="btn padding-reduce-on-grid-view remove-user-link" data-placement="top" data-toggle="tooltip" data-original-title="Remove">' + '' + '' + '' + From 6b1ab862764722f477a34f23c317520ccc83c225 Mon Sep 17 00:00:00 2001 From: Hasunie Date: Thu, 16 Feb 2017 18:19:05 +0530 Subject: [PATCH 4/5] fixing policyManagementDataHolder issue --- .../carbon/policy/mgt/core/task/MonitoringTask.java | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/components/policy-mgt/org.wso2.carbon.policy.mgt.core/src/main/java/org/wso2/carbon/policy/mgt/core/task/MonitoringTask.java b/components/policy-mgt/org.wso2.carbon.policy.mgt.core/src/main/java/org/wso2/carbon/policy/mgt/core/task/MonitoringTask.java index 4237b25d7a8..eb195cd8bc2 100644 --- a/components/policy-mgt/org.wso2.carbon.policy.mgt.core/src/main/java/org/wso2/carbon/policy/mgt/core/task/MonitoringTask.java +++ b/components/policy-mgt/org.wso2.carbon.policy.mgt.core/src/main/java/org/wso2/carbon/policy/mgt/core/task/MonitoringTask.java @@ -30,11 +30,8 @@ import org.wso2.carbon.ntask.core.Task; import org.wso2.carbon.device.mgt.common.policy.mgt.monitor.PolicyComplianceException; import org.wso2.carbon.policy.mgt.core.internal.PolicyManagementDataHolder; import org.wso2.carbon.policy.mgt.core.mgt.MonitoringManager; -import org.wso2.carbon.user.api.Tenant; import org.wso2.carbon.user.api.UserStoreException; import org.wso2.carbon.device.mgt.common.DeviceManagementException; -import org.wso2.carbon.device.mgt.common.policy.mgt.monitor.PolicyComplianceException; -import org.wso2.carbon.device.mgt.core.internal.DeviceManagementDataHolder; import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderServiceImpl; import java.util.ArrayList; @@ -65,17 +62,14 @@ public class MonitoringTask implements Task { } try { -// Tenant tenants[] = PolicyManagementDataHolder.getInstance(). -// getRealmService().getTenantManager().getAllTenants(); - - // for (Tenant tenant : tenants) { - + PolicyManagementDataHolder.getInstance(). + getRealmService().getTenantManager().getAllTenants(); DeviceManagementProviderService deviceManagementService = new DeviceManagementProviderServiceImpl(); List tenants = deviceManagementService.getDeviceEnrolledTenants(); for (Integer tenant : tenants) { - String tenantDomain = DeviceManagementDataHolder.getInstance(). + String tenantDomain = PolicyManagementDataHolder.getInstance(). getRealmService().getTenantManager().getDomain(tenant); try { PrivilegedCarbonContext.startTenantFlow(); From 8bb75d291cf0784079331ea894592e80190f89bf Mon Sep 17 00:00:00 2001 From: Hasunie Date: Thu, 16 Feb 2017 18:30:40 +0530 Subject: [PATCH 5/5] Avoiding package exporting org.wso2.carbon.device.mgt.core.internal --- components/device-mgt/org.wso2.carbon.device.mgt.core/pom.xml | 1 + 1 file changed, 1 insertion(+) diff --git a/components/device-mgt/org.wso2.carbon.device.mgt.core/pom.xml b/components/device-mgt/org.wso2.carbon.device.mgt.core/pom.xml index bfca19892e4..f2b7a661a40 100644 --- a/components/device-mgt/org.wso2.carbon.device.mgt.core/pom.xml +++ b/components/device-mgt/org.wso2.carbon.device.mgt.core/pom.xml @@ -89,6 +89,7 @@ org.scannotation.* + !org.wso2.carbon.device.mgt.core.internal, org.wso2.carbon.device.mgt.core.*