Refactored device info

revert-70aa11f8
mharindu 10 years ago
commit 847eb073b9

@ -122,6 +122,7 @@ public interface DeviceManager {
* @param device Updated device information related data * @param device Updated device information related data
* @throws DeviceManagementException If some unusual behaviour is observed while updating the device info * @throws DeviceManagementException If some unusual behaviour is observed while updating the device info
*/ */
boolean updateDeviceInfo(DeviceIdentifier deviceIdentifier, Device device) throws DeviceManagementException; boolean updateDeviceInfo(DeviceIdentifier deviceIdentifier, Device device) throws DeviceManagementException;
/** /**

@ -83,7 +83,7 @@
org.wso2.carbon.identity.oauth.stub, org.wso2.carbon.identity.oauth.stub,
org.wso2.carbon.identity.oauth.stub.dto, org.wso2.carbon.identity.oauth.stub.dto,
org.wso2.carbon.ndatasource.core, org.wso2.carbon.ndatasource.core,
org.wso2.carbon.device.mgt.user.core, org.wso2.carbon.device.mgt.user.core.*,
org.wso2.carbon.device.mgt.user.common, org.wso2.carbon.device.mgt.user.common,
</Import-Package> </Import-Package>
<Export-Package> <Export-Package>

@ -138,9 +138,8 @@ public class DeviceManagementServiceProviderImpl implements DeviceManagementServ
this.getPluginRepository().getDeviceManagementProvider(deviceId.getType()); this.getPluginRepository().getDeviceManagementProvider(deviceId.getType());
boolean status = dms.disenrollDevice(deviceId); boolean status = dms.disenrollDevice(deviceId);
try { try {
org.wso2.carbon.device.mgt.core.dto.Device device = this.getDeviceDAO().getDevice(deviceId); int deviceID = Integer.parseInt(deviceId.getId());
device.setStatus(Status.INACTIVE); this.getDeviceDAO().updateDeviceStatus(deviceID, Status.INACTIVE);
this.getDeviceDAO().updateDevice(device);
} catch (DeviceManagementDAOException e) { } catch (DeviceManagementDAOException e) {
throw new DeviceManagementException("Error occurred while modifying the device " + throw new DeviceManagementException("Error occurred while modifying the device " +
"'" + deviceId.getId() + "'", e); "'" + deviceId.getId() + "'", e);

@ -24,6 +24,8 @@ import org.osgi.service.component.ComponentContext;
import org.wso2.carbon.apimgt.impl.APIManagerConfigurationService; import org.wso2.carbon.apimgt.impl.APIManagerConfigurationService;
import org.wso2.carbon.core.ServerStartupObserver; import org.wso2.carbon.core.ServerStartupObserver;
import org.wso2.carbon.device.mgt.common.DeviceManagementException; import org.wso2.carbon.device.mgt.common.DeviceManagementException;
import org.wso2.carbon.device.mgt.common.app.mgt.AppManagerConnector;
import org.wso2.carbon.device.mgt.common.app.mgt.AppManagerConnectorException;
import org.wso2.carbon.device.mgt.common.license.mgt.License; 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.LicenseManagementException;
import org.wso2.carbon.device.mgt.common.license.mgt.LicenseManager; import org.wso2.carbon.device.mgt.common.license.mgt.LicenseManager;
@ -37,8 +39,6 @@ import org.wso2.carbon.device.mgt.core.api.mgt.APIPublisherService;
import org.wso2.carbon.device.mgt.core.api.mgt.APIPublisherServiceImpl; import org.wso2.carbon.device.mgt.core.api.mgt.APIPublisherServiceImpl;
import org.wso2.carbon.device.mgt.core.api.mgt.APIRegistrationStartupObserver; import org.wso2.carbon.device.mgt.core.api.mgt.APIRegistrationStartupObserver;
import org.wso2.carbon.device.mgt.core.app.mgt.AppManagementServiceImpl; import org.wso2.carbon.device.mgt.core.app.mgt.AppManagementServiceImpl;
import org.wso2.carbon.device.mgt.common.app.mgt.AppManagerConnector;
import org.wso2.carbon.device.mgt.common.app.mgt.AppManagerConnectorException;
import org.wso2.carbon.device.mgt.core.app.mgt.RemoteAppManagerConnector; import org.wso2.carbon.device.mgt.core.app.mgt.RemoteAppManagerConnector;
import org.wso2.carbon.device.mgt.core.app.mgt.config.AppManagementConfig; import org.wso2.carbon.device.mgt.core.app.mgt.config.AppManagementConfig;
import org.wso2.carbon.device.mgt.core.app.mgt.config.AppManagementConfigurationManager; import org.wso2.carbon.device.mgt.core.app.mgt.config.AppManagementConfigurationManager;
@ -55,9 +55,11 @@ import org.wso2.carbon.device.mgt.core.service.DeviceManagementService;
import org.wso2.carbon.device.mgt.core.service.DeviceManagementServiceImpl; import org.wso2.carbon.device.mgt.core.service.DeviceManagementServiceImpl;
import org.wso2.carbon.device.mgt.core.util.DeviceManagementSchemaInitializer; import org.wso2.carbon.device.mgt.core.util.DeviceManagementSchemaInitializer;
import org.wso2.carbon.device.mgt.user.core.UserManager; import org.wso2.carbon.device.mgt.user.core.UserManager;
import org.wso2.carbon.user.core.service.RealmService; import org.wso2.carbon.device.mgt.user.core.service.UserManagementService;
import org.wso2.carbon.ndatasource.core.DataSourceService; import org.wso2.carbon.ndatasource.core.DataSourceService;
import org.wso2.carbon.registry.core.service.RegistryService; import org.wso2.carbon.registry.core.service.RegistryService;
import org.wso2.carbon.user.core.service.RealmService;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@ -93,34 +95,34 @@ import java.util.List;
* policy="dynamic" * policy="dynamic"
* bind="setDataSourceService" * bind="setDataSourceService"
* unbind="unsetDataSourceService" * unbind="unsetDataSourceService"
* @scr.reference name="org.wso2.carbon.device.mgt.usermanager.service" * @scr.reference name="org.wso2.carbon.device.mgt.user.core.usermanager"
* interface="org.wso2.carbon.device.mgt.user.core.UserManager" * interface="org.wso2.carbon.device.mgt.user.core.UserManager"
* cardinality="1..1" * cardinality="1..1
* policy="dynamic" * policy="dynamic"
* bind="setUserManager" * bind="setUserManager"
* unbind="unsetUserManager" * unbind="unsetUserManager"
*/ */
public class DeviceManagementServiceComponent { public class DeviceManagementServiceComponent {
private static Log log = LogFactory.getLog(DeviceManagementServiceComponent.class); private static Log log = LogFactory.getLog(DeviceManagementServiceComponent.class);
private DeviceManagementRepository pluginRepository = new DeviceManagementRepository(); private DeviceManagementRepository pluginRepository = new DeviceManagementRepository();
private static final Object LOCK = new Object(); private static final Object LOCK = new Object();
private boolean isInitialized; private boolean isInitialized;
private List<DeviceMgtService> deviceManagers = new ArrayList<DeviceMgtService>(); private List<DeviceMgtService> deviceManagers = new ArrayList<DeviceMgtService>();
protected void activate(ComponentContext componentContext) { protected void activate(ComponentContext componentContext) {
try { try {
if (log.isDebugEnabled()) { if (log.isDebugEnabled()) {
log.debug("Initializing device management core bundle"); log.debug("Initializing device management core bundle");
} }
/* Initializing Device Management Configuration */ /* Initializing Device Management Configuration */
DeviceConfigurationManager.getInstance().initConfig(); DeviceConfigurationManager.getInstance().initConfig();
DeviceManagementConfig config = DeviceManagementConfig config =
DeviceConfigurationManager.getInstance().getDeviceManagementConfig(); DeviceConfigurationManager.getInstance().getDeviceManagementConfig();
DataSourceConfig dsConfig = config.getDeviceManagementConfigRepository().getDataSourceConfig(); DataSourceConfig dsConfig = config.getDeviceManagementConfigRepository().getDataSourceConfig();
DeviceManagementDAOFactory.init(dsConfig); DeviceManagementDAOFactory.init(dsConfig);
/* Initializing license manager */ /* Initializing license manager */
this.initLicenseManager(); this.initLicenseManager();
@ -132,19 +134,19 @@ public class DeviceManagementServiceComponent {
DeviceManagementService deviceManagementProvider = DeviceManagementService deviceManagementProvider =
new DeviceManagementServiceProviderImpl(this.getPluginRepository()); new DeviceManagementServiceProviderImpl(this.getPluginRepository());
DeviceManagementDataHolder.getInstance().setDeviceManagementProvider(deviceManagementProvider); DeviceManagementDataHolder.getInstance().setDeviceManagementProvider(deviceManagementProvider);
OperationManagementDAOFactory.init(dsConfig); OperationManagementDAOFactory.init(dsConfig);
/* If -Dsetup option enabled then create device management database schema */ /* If -Dsetup option enabled then create device management database schema */
String setupOption = String setupOption =
System.getProperty(DeviceManagementConstants.Common.PROPERTY_SETUP); System.getProperty(DeviceManagementConstants.Common.PROPERTY_SETUP);
if (setupOption != null) { if (setupOption != null) {
if (log.isDebugEnabled()) { if (log.isDebugEnabled()) {
log.debug("-Dsetup is enabled. Device management repository schema initialization is about to " + log.debug("-Dsetup is enabled. Device management repository schema initialization is about to " +
"begin"); "begin");
} }
this.setupDeviceManagementSchema(dsConfig); this.setupDeviceManagementSchema(dsConfig);
this.setupDefaultLicenses(DeviceManagementDataHolder.getInstance().getLicenseConfig()); this.setupDefaultLicenses(DeviceManagementDataHolder.getInstance().getLicenseConfig());
} }
synchronized (LOCK) { synchronized (LOCK) {
for (DeviceMgtService deviceManager : deviceManagers) { for (DeviceMgtService deviceManager : deviceManagers) {
@ -157,12 +159,12 @@ public class DeviceManagementServiceComponent {
this.registerServices(componentContext); this.registerServices(componentContext);
if (log.isDebugEnabled()) { if (log.isDebugEnabled()) {
log.debug("Device management core bundle has been successfully initialized"); log.debug("Device management core bundle has been successfully initialized");
} }
} catch (Throwable e) { } catch (Throwable e) {
log.error("Error occurred while initializing device management core bundle", e); log.error("Error occurred while initializing device management core bundle", e);
} }
} }
protected void deactivate(ComponentContext componentContext) { protected void deactivate(ComponentContext componentContext) {
//do nothing //do nothing
@ -188,7 +190,7 @@ public class DeviceManagementServiceComponent {
AppManagementConfig appConfig = AppManagementConfig appConfig =
AppManagementConfigurationManager.getInstance().getAppManagementConfig(); AppManagementConfigurationManager.getInstance().getAppManagementConfig();
DeviceManagementDataHolder.getInstance().setAppManagerConfig(appConfig); DeviceManagementDataHolder.getInstance().setAppManagerConfig(appConfig);
RemoteAppManagerConnector appManager = new RemoteAppManagerConnector(appConfig,this.getPluginRepository()); RemoteAppManagerConnector appManager = new RemoteAppManagerConnector(appConfig, this.getPluginRepository());
DeviceManagementDataHolder.getInstance().setAppManager(appManager); DeviceManagementDataHolder.getInstance().setAppManager(appManager);
} }
@ -208,36 +210,36 @@ public class DeviceManagementServiceComponent {
bundleContext.registerService(ServerStartupObserver.class, new APIRegistrationStartupObserver(), null); bundleContext.registerService(ServerStartupObserver.class, new APIRegistrationStartupObserver(), null);
/* Registering App Management service */ /* Registering App Management service */
bundleContext.registerService(AppManagerConnector.class.getName(), new AppManagementServiceImpl(), null); bundleContext.registerService(AppManagerConnector.class.getName(), new AppManagementServiceImpl(), null);
} }
private void setupDeviceManagementSchema(DataSourceConfig config) private void setupDeviceManagementSchema(DataSourceConfig config)
throws DeviceManagementException { throws DeviceManagementException {
DeviceManagementSchemaInitializer initializer = DeviceManagementSchemaInitializer initializer =
new DeviceManagementSchemaInitializer(config); new DeviceManagementSchemaInitializer(config);
log.info("Initializing device management repository database schema"); log.info("Initializing device management repository database schema");
try { try {
initializer.createRegistryDatabase(); initializer.createRegistryDatabase();
} catch (Exception e) { } catch (Exception e) {
throw new DeviceManagementException( throw new DeviceManagementException(
"Error occurred while initializing Device Management database schema", e); "Error occurred while initializing Device Management database schema", e);
} }
if (log.isDebugEnabled()) { if (log.isDebugEnabled()) {
log.debug("Device management metadata repository schema has been successfully initialized"); log.debug("Device management metadata repository schema has been successfully initialized");
} }
} }
private void setupDefaultLicenses(LicenseConfig licenseConfig) private void setupDefaultLicenses(LicenseConfig licenseConfig)
throws LicenseManagementException { throws LicenseManagementException {
LicenseManager licenseManager = DeviceManagementDataHolder.getInstance().getLicenseManager(); LicenseManager licenseManager = DeviceManagementDataHolder.getInstance().getLicenseManager();
for (License license : licenseConfig.getLicenses()) { for (License license : licenseConfig.getLicenses()) {
License extLicense = licenseManager.getLicense(license.getName(), license.getLanguage()); License extLicense = licenseManager.getLicense(license.getName(), license.getLanguage());
if (extLicense == null) { if (extLicense == null) {
licenseManager.addLicense(license.getName(), license); licenseManager.addLicense(license.getName(), license);
} }
} }
} }
private void registerDeviceManagementProvider(DeviceMgtService deviceManager) { private void registerDeviceManagementProvider(DeviceMgtService deviceManager) {
try { try {
@ -248,12 +250,12 @@ public class DeviceManagementServiceComponent {
} }
} }
/** /**
* Sets Device Manager service. * Sets Device Manager service.
* *
* @param deviceManager An instance of DeviceManager * @param deviceManager An instance of DeviceManager
*/ */
protected void setDeviceManager(DeviceMgtService deviceManager) { protected void setDeviceManager(DeviceMgtService deviceManager) {
if (log.isDebugEnabled()) { if (log.isDebugEnabled()) {
log.debug("Setting Device Management Service Provider: '" + deviceManager.getProviderType() + "'"); log.debug("Setting Device Management Service Provider: '" + deviceManager.getProviderType() + "'");
} }
@ -265,15 +267,15 @@ public class DeviceManagementServiceComponent {
} }
} }
/** /**
* Unsets Device Management service. * Unsets Device Management service.
* *
* @param deviceManager An Instance of DeviceManager * @param deviceManager An Instance of DeviceManager
*/ */
protected void unsetDeviceManager(DeviceMgtService deviceManager) { protected void unsetDeviceManager(DeviceMgtService deviceManager) {
if (log.isDebugEnabled()) { if (log.isDebugEnabled()) {
log.debug("Un setting Device Management Service Provider : '" + deviceManager.getProviderType() + "'"); log.debug("Un setting Device Management Service Provider : '" + deviceManager.getProviderType() + "'");
} }
try { try {
this.getPluginRepository().removeDeviceManagementProvider(deviceManager); this.getPluginRepository().removeDeviceManagementProvider(deviceManager);
} catch (DeviceManagementException e) { } catch (DeviceManagementException e) {
@ -282,53 +284,53 @@ public class DeviceManagementServiceComponent {
} }
} }
/** /**
* Sets Realm Service. * Sets Realm Service.
* *
* @param realmService An instance of RealmService * @param realmService An instance of RealmService
*/ */
protected void setRealmService(RealmService realmService) { protected void setRealmService(RealmService realmService) {
if (log.isDebugEnabled()) { if (log.isDebugEnabled()) {
log.debug("Setting Realm Service"); log.debug("Setting Realm Service");
} }
DeviceManagementDataHolder.getInstance().setRealmService(realmService); DeviceManagementDataHolder.getInstance().setRealmService(realmService);
} }
/** /**
* Unsets Realm Service. * Unsets Realm Service.
* *
* @param realmService An instance of RealmService * @param realmService An instance of RealmService
*/ */
protected void unsetRealmService(RealmService realmService) { protected void unsetRealmService(RealmService realmService) {
if (log.isDebugEnabled()) { if (log.isDebugEnabled()) {
log.debug("Unsetting Realm Service"); log.debug("Unsetting Realm Service");
} }
DeviceManagementDataHolder.getInstance().setRealmService(null); DeviceManagementDataHolder.getInstance().setRealmService(null);
} }
/** /**
* Sets Registry Service. * Sets Registry Service.
* *
* @param registryService An instance of RegistryService * @param registryService An instance of RegistryService
*/ */
protected void setRegistryService(RegistryService registryService) { protected void setRegistryService(RegistryService registryService) {
if (log.isDebugEnabled()) { if (log.isDebugEnabled()) {
log.debug("Setting Registry Service"); log.debug("Setting Registry Service");
} }
DeviceManagementDataHolder.getInstance().setRegistryService(registryService); DeviceManagementDataHolder.getInstance().setRegistryService(registryService);
} }
/** /**
* Unsets Registry Service. * Unsets Registry Service.
* *
* @param registryService An instance of RegistryService * @param registryService An instance of RegistryService
*/ */
protected void unsetRegistryService(RegistryService registryService) { protected void unsetRegistryService(RegistryService registryService) {
if (log.isDebugEnabled()) { if (log.isDebugEnabled()) {
log.debug("Un setting Registry Service"); log.debug("Un setting Registry Service");
} }
DeviceManagementDataHolder.getInstance().setRegistryService(null); DeviceManagementDataHolder.getInstance().setRegistryService(null);
} }
/** /**
* Sets UserManager Service. * Sets UserManager Service.
@ -354,9 +356,9 @@ public class DeviceManagementServiceComponent {
DeviceManagementDataHolder.getInstance().setUserManager(null); DeviceManagementDataHolder.getInstance().setUserManager(null);
} }
private DeviceManagementRepository getPluginRepository() { private DeviceManagementRepository getPluginRepository() {
return pluginRepository; return pluginRepository;
} }
protected void setAPIManagerConfigurationService(APIManagerConfigurationService service) { protected void setAPIManagerConfigurationService(APIManagerConfigurationService service) {
//do nothing //do nothing

@ -22,6 +22,8 @@ import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
import org.osgi.framework.BundleContext; import org.osgi.framework.BundleContext;
import org.osgi.service.component.ComponentContext; import org.osgi.service.component.ComponentContext;
import org.wso2.carbon.device.mgt.core.config.DeviceConfigurationManager;
import org.wso2.carbon.device.mgt.core.config.DeviceManagementConfig;
import org.wso2.carbon.device.mgt.core.email.sender.EmailServiceProviderImpl; import org.wso2.carbon.device.mgt.core.email.sender.EmailServiceProviderImpl;
import org.wso2.carbon.device.mgt.core.service.EmailService; import org.wso2.carbon.device.mgt.core.service.EmailService;
import org.wso2.carbon.device.mgt.core.service.EmailServiceImpl; import org.wso2.carbon.device.mgt.core.service.EmailServiceImpl;
@ -48,6 +50,9 @@ public class EmailServiceComponent {
log.debug("Initializing email service bundle"); log.debug("Initializing email service bundle");
} }
DeviceConfigurationManager.getInstance().initConfig();
DeviceManagementConfig config =
DeviceConfigurationManager.getInstance().getDeviceManagementConfig();
/* Initializing Email Service Configurations */ /* Initializing Email Service Configurations */
EmailService emailServiceProvider = new EmailServiceProviderImpl(); EmailService emailServiceProvider = new EmailServiceProviderImpl();

@ -101,6 +101,7 @@ public class DeviceManagementServiceImpl implements DeviceManagementService {
public boolean updateDeviceInfo(DeviceIdentifier deviceIdentifier, Device device) throws DeviceManagementException { public boolean updateDeviceInfo(DeviceIdentifier deviceIdentifier, Device device) throws DeviceManagementException {
return DeviceManagementDataHolder.getInstance().getDeviceManagementProvider(). return DeviceManagementDataHolder.getInstance().getDeviceManagementProvider().
updateDeviceInfo(deviceIdentifier, device); updateDeviceInfo(deviceIdentifier, device);
} }
@Override @Override

@ -55,8 +55,8 @@ public class DeviceMgtUserServiceComponent {
} }
/* Registering User Management service */ /* Registering User Management service */
BundleContext bundleContext = componentContext.getBundleContext(); BundleContext bundleContext = componentContext.getBundleContext();
bundleContext.registerService(UserManager.class, bundleContext.registerService(org.wso2.carbon.device.mgt.user.core.UserManager.class,
new UserManagementService(), null); new org.wso2.carbon.device.mgt.user.core.service.UserManagementService(), null);
if (log.isDebugEnabled()) { if (log.isDebugEnabled()) {
log.debug("User management core bundle has been successfully initialized"); log.debug("User management core bundle has been successfully initialized");
} }

@ -1078,16 +1078,6 @@
<enabled>false</enabled> <enabled>false</enabled>
</releases> </releases>
</repository> </repository>
<repository>
<id>wso2-staging</id>
<name>WSO2 Staging Repository</name>
<url>http://maven.wso2.org/nexus/content/repositories/orgwso2carbonapimgt-009/</url>
<releases>
<enabled>true</enabled>
<updatePolicy>daily</updatePolicy>
<checksumPolicy>ignore</checksumPolicy>
</releases>
</repository>
</repositories> </repositories>
<properties> <properties>

Loading…
Cancel
Save