|
|
|
@ -54,25 +54,44 @@ public class MobileDeviceManagementUtil {
|
|
|
|
|
DocumentBuilder docBuilder = factory.newDocumentBuilder();
|
|
|
|
|
return docBuilder.parse(file);
|
|
|
|
|
} catch (Exception e) {
|
|
|
|
|
throw new DeviceManagementException(
|
|
|
|
|
"Error occurred while parsing file, while converting " +
|
|
|
|
|
"to a org.w3c.dom.Document : " + e.getMessage(), e);
|
|
|
|
|
throw new DeviceManagementException("Error occurred while parsing file, while converting " +
|
|
|
|
|
"to a org.w3c.dom.Document : " + e.getMessage(), e);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private static String getPropertyValue(Device device, String property) {
|
|
|
|
|
for (Device.Property prop : device.getProperties()) {
|
|
|
|
|
if (property.equals(prop.getName())) {
|
|
|
|
|
return prop.getValue();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return null;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private static Device.Property getProperty(String property, String value) {
|
|
|
|
|
Device.Property prop = null;
|
|
|
|
|
if (property != null) {
|
|
|
|
|
prop = new Device.Property();
|
|
|
|
|
prop.setName(property);
|
|
|
|
|
prop.setValue(value);
|
|
|
|
|
return prop;
|
|
|
|
|
}
|
|
|
|
|
return prop;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public static MobileDevice convertToMobileDevice(Device device) {
|
|
|
|
|
MobileDevice mobileDevice = null;
|
|
|
|
|
if (device != null) {
|
|
|
|
|
mobileDevice = new MobileDevice();
|
|
|
|
|
mobileDevice.setMobileDeviceId(device.getDeviceIdentifier());
|
|
|
|
|
mobileDevice.setImei(device.getProperties().get(MOBILE_DEVICE_IMEI));
|
|
|
|
|
mobileDevice.setImsi(device.getProperties().get(MOBILE_DEVICE_IMSI));
|
|
|
|
|
mobileDevice.setRegId(device.getProperties().get(MOBILE_DEVICE_REG_ID));
|
|
|
|
|
mobileDevice.setModel(device.getProperties().get(MOBILE_DEVICE_MODEL));
|
|
|
|
|
mobileDevice.setOsVersion(device.getProperties().get(MOBILE_DEVICE_OS_VERSION));
|
|
|
|
|
mobileDevice.setVendor(device.getProperties().get(MOBILE_DEVICE_VENDOR));
|
|
|
|
|
mobileDevice.setLatitude(device.getProperties().get(MOBILE_DEVICE_LATITUDE));
|
|
|
|
|
mobileDevice.setLongitude(device.getProperties().get(MOBILE_DEVICE_LONGITUDE));
|
|
|
|
|
mobileDevice.setImei(getPropertyValue(device, MOBILE_DEVICE_IMEI));
|
|
|
|
|
mobileDevice.setImsi(getPropertyValue(device, MOBILE_DEVICE_IMSI));
|
|
|
|
|
mobileDevice.setRegId(getPropertyValue(device, MOBILE_DEVICE_REG_ID));
|
|
|
|
|
mobileDevice.setModel(getPropertyValue(device, MOBILE_DEVICE_MODEL));
|
|
|
|
|
mobileDevice.setOsVersion(getPropertyValue(device, MOBILE_DEVICE_OS_VERSION));
|
|
|
|
|
mobileDevice.setVendor(getPropertyValue(device, MOBILE_DEVICE_VENDOR));
|
|
|
|
|
mobileDevice.setLatitude(getPropertyValue(device, MOBILE_DEVICE_LATITUDE));
|
|
|
|
|
mobileDevice.setLongitude(getPropertyValue(device, MOBILE_DEVICE_LONGITUDE));
|
|
|
|
|
}
|
|
|
|
|
return mobileDevice;
|
|
|
|
|
}
|
|
|
|
@ -81,23 +100,22 @@ public class MobileDeviceManagementUtil {
|
|
|
|
|
Device device = null;
|
|
|
|
|
if (mobileDevice != null) {
|
|
|
|
|
device = new Device();
|
|
|
|
|
Map<String, String> propertyMap = new HashMap<String, String>();
|
|
|
|
|
propertyMap.put(MOBILE_DEVICE_IMEI, mobileDevice.getImei());
|
|
|
|
|
propertyMap.put(MOBILE_DEVICE_IMSI, mobileDevice.getImsi());
|
|
|
|
|
propertyMap.put(MOBILE_DEVICE_REG_ID, mobileDevice.getRegId());
|
|
|
|
|
propertyMap.put(MOBILE_DEVICE_MODEL, mobileDevice.getModel());
|
|
|
|
|
propertyMap.put(MOBILE_DEVICE_OS_VERSION, mobileDevice.getOsVersion());
|
|
|
|
|
propertyMap.put(MOBILE_DEVICE_VENDOR, mobileDevice.getVendor());
|
|
|
|
|
propertyMap.put(MOBILE_DEVICE_LATITUDE, mobileDevice.getLatitude());
|
|
|
|
|
propertyMap.put(MOBILE_DEVICE_LONGITUDE, mobileDevice.getLongitude());
|
|
|
|
|
device.setProperties(propertyMap);
|
|
|
|
|
List<Device.Property> propertyList = new ArrayList<Device.Property>();
|
|
|
|
|
propertyList.add(getProperty(MOBILE_DEVICE_IMEI, mobileDevice.getImei()));
|
|
|
|
|
propertyList.add(getProperty(MOBILE_DEVICE_IMSI, mobileDevice.getImsi()));
|
|
|
|
|
propertyList.add(getProperty(MOBILE_DEVICE_REG_ID, mobileDevice.getRegId()));
|
|
|
|
|
propertyList.add(getProperty(MOBILE_DEVICE_MODEL, mobileDevice.getModel()));
|
|
|
|
|
propertyList.add(getProperty(MOBILE_DEVICE_OS_VERSION, mobileDevice.getOsVersion()));
|
|
|
|
|
propertyList.add(getProperty(MOBILE_DEVICE_VENDOR, mobileDevice.getVendor()));
|
|
|
|
|
propertyList.add(getProperty(MOBILE_DEVICE_LATITUDE, mobileDevice.getLatitude()));
|
|
|
|
|
propertyList.add(getProperty(MOBILE_DEVICE_LONGITUDE, mobileDevice.getLongitude()));
|
|
|
|
|
device.setProperties(propertyList);
|
|
|
|
|
device.setDeviceIdentifier(mobileDevice.getMobileDeviceId());
|
|
|
|
|
}
|
|
|
|
|
return device;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public static MobileOperation convertToMobileOperation(
|
|
|
|
|
org.wso2.carbon.device.mgt.common.Operation operation) {
|
|
|
|
|
public static MobileOperation convertToMobileOperation(org.wso2.carbon.device.mgt.common.Operation operation) {
|
|
|
|
|
MobileOperation mobileOperation = new MobileOperation();
|
|
|
|
|
MobileOperationProperty operationProperty = null;
|
|
|
|
|
List<MobileOperationProperty> properties = new LinkedList<MobileOperationProperty>();
|
|
|
|
@ -117,18 +135,18 @@ public class MobileDeviceManagementUtil {
|
|
|
|
|
public static List<Integer> getMobileOperationIdsFromMobileDeviceOperations(
|
|
|
|
|
List<MobileDeviceOperationMapping> mobileDeviceOperationMappings) {
|
|
|
|
|
List<Integer> mobileOperationIds = new ArrayList<Integer>();
|
|
|
|
|
for(MobileDeviceOperationMapping mobileDeviceOperationMapping : mobileDeviceOperationMappings){
|
|
|
|
|
for (MobileDeviceOperationMapping mobileDeviceOperationMapping : mobileDeviceOperationMappings) {
|
|
|
|
|
mobileOperationIds.add(mobileDeviceOperationMapping.getOperationId());
|
|
|
|
|
}
|
|
|
|
|
return mobileOperationIds;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public static Operation convertMobileOperationToOperation(MobileOperation mobileOperation){
|
|
|
|
|
public static Operation convertMobileOperationToOperation(MobileOperation mobileOperation) {
|
|
|
|
|
Operation operation = new Operation();
|
|
|
|
|
Properties properties = new Properties();
|
|
|
|
|
operation.setCode(mobileOperation.getFeatureCode());
|
|
|
|
|
for(MobileOperationProperty mobileOperationProperty:mobileOperation.getProperties()){
|
|
|
|
|
properties.put(mobileOperationProperty.getProperty(),mobileOperationProperty.getValue());
|
|
|
|
|
for (MobileOperationProperty mobileOperationProperty : mobileOperation.getProperties()) {
|
|
|
|
|
properties.put(mobileOperationProperty.getProperty(), mobileOperationProperty.getValue());
|
|
|
|
|
}
|
|
|
|
|
operation.setProperties(properties);
|
|
|
|
|
return operation;
|
|
|
|
|