Code cleanup

4.x.x
prabathabey 9 years ago
parent aef892fece
commit 95d3b97c5f

@ -32,16 +32,13 @@ import org.wso2.carbon.device.mgt.common.app.mgt.Application;
import org.wso2.carbon.device.mgt.common.app.mgt.ApplicationManagementException;
import org.wso2.carbon.device.mgt.common.operation.mgt.Operation;
import org.wso2.carbon.device.mgt.common.operation.mgt.OperationManagementException;
import org.wso2.carbon.device.mgt.common.spi.DeviceManagementService;
import org.wso2.carbon.device.mgt.core.DeviceManagementConstants;
import org.wso2.carbon.device.mgt.core.DeviceManagementPluginRepository;
import org.wso2.carbon.device.mgt.core.app.mgt.config.AppManagementConfig;
import org.wso2.carbon.device.mgt.core.app.mgt.oauth.ServiceAuthenticator;
import org.wso2.carbon.device.mgt.core.config.DeviceConfigurationManager;
import org.wso2.carbon.device.mgt.core.config.identity.IdentityConfigurations;
import org.wso2.carbon.device.mgt.core.dao.*;
import org.wso2.carbon.device.mgt.core.internal.DeviceManagementDataHolder;
import org.wso2.carbon.device.mgt.core.internal.PluginInitializationListener;
import org.wso2.carbon.identity.oauth.stub.OAuthAdminServiceException;
import org.wso2.carbon.identity.oauth.stub.OAuthAdminServiceStub;
import org.wso2.carbon.identity.oauth.stub.dto.OAuthConsumerAppDTO;
@ -56,9 +53,6 @@ import java.util.List;
*/
public class ApplicationManagerProviderServiceImpl implements ApplicationManagementProviderService {
private ConfigurationContext configCtx;
private ServiceAuthenticator authenticator;
private String oAuthAdminServiceUrl;
private DeviceDAO deviceDAO;
private ApplicationDAO applicationDAO;
private ApplicationMappingDAO applicationMappingDAO;
@ -67,19 +61,6 @@ public class ApplicationManagerProviderServiceImpl implements ApplicationManagem
private static final Log log = LogFactory.getLog(ApplicationManagerProviderServiceImpl.class);
public ApplicationManagerProviderServiceImpl(AppManagementConfig appManagementConfig) {
IdentityConfigurations identityConfig = DeviceConfigurationManager.getInstance().getDeviceManagementConfig().
getDeviceManagementConfigRepository().getIdentityConfigurations();
this.authenticator =
new ServiceAuthenticator(identityConfig.getAdminUsername(), identityConfig.getAdminPassword());
this.oAuthAdminServiceUrl =
identityConfig.getServerUrl() + DeviceManagementConstants.AppManagement.OAUTH_ADMIN_SERVICE;
try {
this.configCtx = ConfigurationContextFactory.createConfigurationContextFromFileSystem(null, null);
} catch (AxisFault e) {
throw new IllegalArgumentException("Error occurred while initializing Axis2 Configuration Context. " +
"Please check if an appropriate axis2.xml is provided", e);
}
this.deviceDAO = DeviceManagementDAOFactory.getDeviceDAO();
this.applicationDAO = DeviceManagementDAOFactory.getApplicationDAO();
this.applicationMappingDAO = DeviceManagementDAOFactory.getApplicationMappingDAO();
@ -112,7 +93,6 @@ public class ApplicationManagerProviderServiceImpl implements ApplicationManagem
@Override
public void installApplicationForDevices(Operation operation, List<DeviceIdentifier> deviceIds)
throws ApplicationManagementException {
try {
DeviceManagementDataHolder.getInstance().getDeviceManagementProvider().addOperation(operation, deviceIds);
DeviceManagementDataHolder.getInstance().getDeviceManagementProvider().notifyOperationToDevices
@ -207,50 +187,6 @@ public class ApplicationManagerProviderServiceImpl implements ApplicationManagem
}
}
public void updateInstalledApplicationListOfDevice(
DeviceIdentifier deviceIdentifier, List<Application> applications) throws ApplicationManagementException {
}
private OAuthConsumerAppDTO getAppInfo() throws ApplicationManagementException {
OAuthConsumerAppDTO appInfo = null;
try {
OAuthAdminServiceStub oAuthAdminServiceStub =
new OAuthAdminServiceStub(configCtx, oAuthAdminServiceUrl);
authenticator.authenticate(oAuthAdminServiceStub._getServiceClient());
try {
appInfo = oAuthAdminServiceStub.getOAuthApplicationDataByAppName(
DeviceManagementConstants.AppManagement.OAUTH_APPLICATION_NAME);
}
//application doesn't exist. Due to the way getOAuthApplicationDataByAppName has been
//implemented, it throws an AxisFault if the App doesn't exist. Hence the catch.
catch (AxisFault fault) {
oAuthAdminServiceStub.registerOAuthApplicationData(this.getRequestDTO());
appInfo = oAuthAdminServiceStub.getOAuthApplicationDataByAppName(
DeviceManagementConstants.AppManagement.OAUTH_APPLICATION_NAME);
}
} catch (RemoteException e) {
handleException("Error occurred while retrieving app info", e);
} catch (OAuthAdminServiceException e) {
handleException("Error occurred while invoking OAuth admin service stub", e);
}
return appInfo;
}
private OAuthConsumerAppDTO getRequestDTO() {
OAuthConsumerAppDTO appDTO = new OAuthConsumerAppDTO();
appDTO.setApplicationName(DeviceManagementConstants.AppManagement.OAUTH_APPLICATION_NAME);
appDTO.setGrantTypes(
DeviceManagementConstants.AppManagement.OAUTH2_GRANT_TYPE_CLIENT_CREDENTIALS);
appDTO.setOAuthVersion(DeviceManagementConstants.AppManagement.OAUTH_VERSION_2);
return appDTO;
}
private void handleException(String msg, Exception e) throws ApplicationManagementException {
log.error(msg, e);
throw new ApplicationManagementException(msg, e);
}
@Override
public void updateApplicationListInstalledInDevice(
DeviceIdentifier deviceIdentifier, List<Application> applications) throws ApplicationManagementException {

@ -17,8 +17,14 @@
*/
package org.wso2.carbon.device.mgt.core.config;
import org.wso2.carbon.device.mgt.core.config.identity.IdentityConfigurations;
import org.wso2.carbon.device.mgt.core.config.policy.PolicyConfiguration;
import org.wso2.carbon.device.mgt.core.config.task.TaskConfiguration;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import javax.xml.bind.annotation.XmlRootElement;
import java.util.List;
/**
* Represents Device Mgt configuration.
@ -27,6 +33,10 @@ import javax.xml.bind.annotation.XmlRootElement;
public final class DeviceManagementConfig {
private DeviceManagementConfigRepository deviceManagementConfigRepository;
private TaskConfiguration taskConfiguration;
private IdentityConfigurations identityConfigurations;
private PolicyConfiguration policyConfiguration;
//private List<String> pushNotificationProviders;
@XmlElement(name = "ManagementRepository", required = true)
public DeviceManagementConfigRepository getDeviceManagementConfigRepository() {
@ -37,4 +47,43 @@ public final class DeviceManagementConfig {
this.deviceManagementConfigRepository = deviceManagementConfigRepository;
}
@XmlElement(name = "IdentityConfiguration", required = true)
public IdentityConfigurations getIdentityConfigurations() {
return identityConfigurations;
}
public void setIdentityConfigurations(IdentityConfigurations identityConfigurations) {
this.identityConfigurations = identityConfigurations;
}
@XmlElement(name = "PolicyConfiguration", required = true)
public PolicyConfiguration getPolicyConfiguration() {
return policyConfiguration;
}
public void setPolicyConfiguration(PolicyConfiguration policyConfiguration) {
this.policyConfiguration = policyConfiguration;
}
@XmlElement(name = "TaskConfiguration", required = true)
public TaskConfiguration getTaskConfiguration() {
return taskConfiguration;
}
public void setTaskConfiguration(TaskConfiguration taskConfiguration) {
this.taskConfiguration = taskConfiguration;
}
// @XmlElementWrapper(name = "PushNotificationProviders", required = true)
// @XmlElement(name = "Provider", required = true)
// public List<String> getPushNotificationProviders() {
// return pushNotificationProviders;
// }
//
// public void setPushNotificationProviders(List<String> pushNotificationProviders) {
// this.pushNotificationProviders = pushNotificationProviders;
// }
}

@ -31,12 +31,7 @@ import javax.xml.bind.annotation.XmlRootElement;
@XmlRootElement(name = "ManagementRepository")
public class DeviceManagementConfigRepository {
// private EmailConfigurations emailConfigurations;
private TaskConfiguration taskConfiguration;
private DataSourceConfig dataSourceConfig;
private IdentityConfigurations identityConfigurations;
private PolicyConfiguration policyConfiguration;
@XmlElement(name = "DataSourceConfiguration", required = true)
public DataSourceConfig getDataSourceConfig() {
@ -47,40 +42,4 @@ public class DeviceManagementConfigRepository {
this.dataSourceConfig = dataSourceConfig;
}
// @XmlElement(name = "EmailClientConfiguration", required = true)
// public EmailConfigurations getEmailConfigurations() {
// return emailConfigurations;
// }
//
// public void setEmailConfigurations(EmailConfigurations emailConfigurations) {
// this.emailConfigurations = emailConfigurations;
// }
@XmlElement(name = "IdentityConfiguration", required = true)
public IdentityConfigurations getIdentityConfigurations() {
return identityConfigurations;
}
public void setIdentityConfigurations(IdentityConfigurations identityConfigurations) {
this.identityConfigurations = identityConfigurations;
}
@XmlElement(name = "PolicyConfiguration", required = true)
public PolicyConfiguration getPolicyConfiguration() {
return policyConfiguration;
}
public void setPolicyConfiguration(PolicyConfiguration policyConfiguration) {
this.policyConfiguration = policyConfiguration;
}
@XmlElement(name = "TaskConfiguration", required = true)
public TaskConfiguration getTaskConfiguration() {
return taskConfiguration;
}
public void setTaskConfiguration(TaskConfiguration taskConfiguration) {
this.taskConfiguration = taskConfiguration;
}
}

@ -31,7 +31,7 @@ public class PolicyConfiguration {
private int minRetriesToMarkUnreachable;
private int minRetriesToMarkInactive;
@XmlElement(name = "monitoringClass", required = true)
@XmlElement(name = "MonitoringClass", required = true)
public String getMonitoringClass() {
return monitoringClass;
}
@ -40,7 +40,7 @@ public class PolicyConfiguration {
this.monitoringClass = monitoringClass;
}
@XmlElement(name = "maxRetries", required = true)
@XmlElement(name = "MaxRetries", required = true)
public int getMaxRetries() {
return maxRetries;
}
@ -49,7 +49,7 @@ public class PolicyConfiguration {
this.maxRetries = maxRetries;
}
@XmlElement(name = "minRetriesToMarkUnreachable", required = true)
@XmlElement(name = "MinRetriesToMarkUnreachable", required = true)
public int getMinRetriesToMarkUnreachable() {
return minRetriesToMarkUnreachable;
}
@ -58,7 +58,7 @@ public class PolicyConfiguration {
this.minRetriesToMarkUnreachable = minRetriesToMarkUnreachable;
}
@XmlElement(name = "monitoringEnable", required = true)
@XmlElement(name = "MonitoringEnable", required = true)
public boolean getMonitoringEnable() {
return monitoringEnable;
}
@ -67,7 +67,7 @@ public class PolicyConfiguration {
this.monitoringEnable = monitoringEnable;
}
@XmlElement(name = "minRetriesToMarkInactive", required = true)
@XmlElement(name = "MinRetriesToMarkInactive", required = true)
public int getMinRetriesToMarkInactive() {
return minRetriesToMarkInactive;
}
@ -76,7 +76,7 @@ public class PolicyConfiguration {
this.minRetriesToMarkInactive = minRetriesToMarkInactive;
}
@XmlElement(name = "monitoringFrequency", required = true)
@XmlElement(name = "MonitoringFrequency", required = true)
public int getMonitoringFrequency() {
return monitoringFrequency;
}
@ -84,4 +84,5 @@ public class PolicyConfiguration {
public void setMonitoringFrequency(int monitoringFrequency) {
this.monitoringFrequency = monitoringFrequency;
}
}

@ -52,8 +52,9 @@ public class DeviceTaskManagerServiceComponent {
log.debug("Initializing device details retrieving task manager bundle.");
}
// This will start the device details retrieving task.
boolean taskEnable = DeviceConfigurationManager.getInstance().getDeviceManagementConfig().
getDeviceManagementConfigRepository().getTaskConfiguration().isEnabled();
boolean taskEnable =
DeviceConfigurationManager.getInstance().getDeviceManagementConfig().getTaskConfiguration().
isEnabled();
if (taskEnable) {
DeviceTaskManagerService taskManagerService = new DeviceTaskManagerServiceImpl();
taskManagerService.startTask();
@ -70,7 +71,6 @@ public class DeviceTaskManagerServiceComponent {
@SuppressWarnings("unused")
protected void deactivate(ComponentContext componentContext) {
try {
DeviceTaskManagerService taskManagerService = new DeviceTaskManagerServiceImpl();
taskManagerService.stopTask();
@ -93,6 +93,7 @@ public class DeviceTaskManagerServiceComponent {
}
DeviceManagementDataHolder.getInstance().setTaskService(null);
}
}

@ -22,18 +22,16 @@ package org.wso2.carbon.device.mgt.core.task;
import org.wso2.carbon.context.PrivilegedCarbonContext;
import java.util.HashMap;
import java.util.Map;
public class Utils {
public static HashMap<String, Long> getTenantedTaskOperationMap(HashMap<Integer, HashMap<String, Long>> map) {
public static Map<String, Long> getTenantedTaskOperationMap(Map<Integer, Map<String, Long>> map) {
int tenantId = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId();
if (map.containsKey(tenantId)) {
return map.get(tenantId);
} else {
HashMap<String, Long> mp = new HashMap<>();
Map<String, Long> mp = new HashMap<>();
map.put(tenantId, mp);
return mp;
}

@ -36,23 +36,19 @@ import org.wso2.carbon.device.mgt.core.task.TaskOperation;
import org.wso2.carbon.device.mgt.core.task.Utils;
import org.wso2.carbon.device.mgt.core.util.DeviceManagerUtil;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.*;
public class DeviceTaskManagerImpl implements DeviceTaskManager {
private static Log log = LogFactory.getLog(DeviceTaskManagerImpl.class);
private static HashMap<Integer, HashMap<String, Long>> map = new HashMap<>();
private static Map<Integer, Map<String, Long>> map = new HashMap<>();
@Override
public List<TaskOperation> getOperationList() throws DeviceMgtTaskException {
TaskConfiguration taskConfiguration = DeviceConfigurationManager.getInstance().getDeviceManagementConfig().
getDeviceManagementConfigRepository().getTaskConfiguration();
TaskConfiguration taskConfiguration =
DeviceConfigurationManager.getInstance().getDeviceManagementConfig().getTaskConfiguration();
List<TaskConfiguration.Operation> ops = taskConfiguration.getOperations();
List<TaskOperation> taskOperations = new ArrayList<>();
@ -68,29 +64,25 @@ public class DeviceTaskManagerImpl implements DeviceTaskManager {
@Override
public int getTaskFrequency() throws DeviceMgtTaskException {
return DeviceConfigurationManager.getInstance().getDeviceManagementConfig().
getDeviceManagementConfigRepository().getTaskConfiguration().getFrequency();
return DeviceConfigurationManager.getInstance().getDeviceManagementConfig().getTaskConfiguration().
getFrequency();
}
@Override
public String getTaskImplementedClazz() throws DeviceMgtTaskException {
return DeviceConfigurationManager.getInstance().getDeviceManagementConfig().
getDeviceManagementConfigRepository().getTaskConfiguration().getTaskClazz();
return DeviceConfigurationManager.getInstance().getDeviceManagementConfig().getTaskConfiguration().
getTaskClazz();
}
@Override
public boolean isTaskEnabled() throws DeviceMgtTaskException {
return DeviceConfigurationManager.getInstance().getDeviceManagementConfig().
getDeviceManagementConfigRepository().getTaskConfiguration().isEnabled();
return DeviceConfigurationManager.getInstance().getDeviceManagementConfig().getTaskConfiguration().
isEnabled();
}
@Override
public void addOperations() throws DeviceMgtTaskException {
DeviceManagementProviderService deviceManagementProviderService =
DeviceManagementDataHolder.getInstance().getDeviceManagementProvider();
try {
@ -98,7 +90,6 @@ public class DeviceTaskManagerImpl implements DeviceTaskManager {
List<String> operations = this.getValidOperationNames();
if (!devices.isEmpty()) {
for (String str : operations) {
CommandOperation operation = new CommandOperation();
operation.setEnabled(true);
@ -116,17 +107,15 @@ public class DeviceTaskManagerImpl implements DeviceTaskManager {
} catch (OperationManagementException e) {
throw new DeviceMgtTaskException("Error occurred while adding the operations to devices", e);
}
}
@Override
public List<String> getValidOperationNames() throws DeviceMgtTaskException {
List<TaskOperation> taskOperations = this.getOperationList();
List<String> opNames = new ArrayList<>();
Long milliseconds = System.currentTimeMillis();
int frequency = this.getTaskFrequency();
HashMap<String, Long> mp = Utils.getTenantedTaskOperationMap(map);
Map<String, Long> mp = Utils.getTenantedTaskOperationMap(map);
for (TaskOperation top : taskOperations) {
if (!mp.containsKey(top.getTaskName())) {
@ -163,5 +152,6 @@ public class DeviceTaskManagerImpl implements DeviceTaskManager {
return false;
}
}

@ -27,7 +27,6 @@ import org.wso2.carbon.device.mgt.common.app.mgt.Application;
import org.wso2.carbon.device.mgt.common.app.mgt.ApplicationManagementException;
import org.wso2.carbon.device.mgt.core.DeviceManagementPluginRepository;
import org.wso2.carbon.device.mgt.core.TestDeviceManagementService;
import org.wso2.carbon.device.mgt.core.app.mgt.config.AppManagementConfig;
import org.wso2.carbon.device.mgt.core.common.TestDataHolder;
import java.util.ArrayList;
@ -35,13 +34,11 @@ import java.util.List;
public class ApplicationManagementProviderServiceTest {
private ApplicationManagementProviderService appMgtProvider;
private static final Log log = LogFactory.getLog(ApplicationManagementProviderServiceTest.class);
private DeviceManagementPluginRepository deviceManagementPluginRepository = null;
@BeforeClass
public void init() {
deviceManagementPluginRepository = new DeviceManagementPluginRepository();
DeviceManagementPluginRepository deviceManagementPluginRepository = new DeviceManagementPluginRepository();
TestDeviceManagementService testDeviceManagementService =
new TestDeviceManagementService(TestDataHolder.TEST_DEVICE_TYPE, TestDataHolder.SUPER_TENANT_DOMAIN);
try {
@ -82,8 +79,7 @@ public class ApplicationManagementProviderServiceTest {
deviceId.setId(deviceIdentifier);
deviceId.setType(device.getType());
AppManagementConfig appManagementConfig = new AppManagementConfig();
appMgtProvider = new ApplicationManagerProviderServiceImpl();
ApplicationManagementProviderService appMgtProvider = new ApplicationManagerProviderServiceImpl();
try {
appMgtProvider.updateApplicationListInstalledInDevice(deviceId, applications);

@ -24,18 +24,19 @@
<Name>jdbc/DM_DS</Name>
</JndiLookupDefinition>
</DataSourceConfiguration>
</ManagementRepository>
<IdentityConfiguration>
<ServerUrl>https://localhost:9443</ServerUrl>
<AdminUsername>admin</AdminUsername>
<AdminPassword>admin</AdminPassword>
</IdentityConfiguration>
<PolicyConfiguration>
<monitoringClass>org.wso2.carbon.policy.mgt</monitoringClass>
<monitoringEnable>true</monitoringEnable>
<monitoringFrequency>60000</monitoringFrequency>
<maxRetries>5</maxRetries>
<minRetriesToMarkUnreachable>8</minRetriesToMarkUnreachable>
<minRetriesToMarkInactive>20</minRetriesToMarkInactive>
<MonitoringClass>org.wso2.carbon.policy.mgt</MonitoringClass>
<MonitoringEnable>true</MonitoringEnable>
<MonitoringFrequency>60000</MonitoringFrequency>
<MaxRetries>5</MaxRetries>
<MinRetriesToMarkUnreachable>8</MinRetriesToMarkUnreachable>
<MinRetriesToMarkInactive>20</MinRetriesToMarkInactive>
</PolicyConfiguration>
<TaskConfiguration>
<Enable>true</Enable>
@ -56,6 +57,5 @@
</Operation>
</Operations>
</TaskConfiguration>
</ManagementRepository>
</DeviceMgtConfiguration>

Loading…
Cancel
Save