mirror of
https://repository.entgra.net/community/device-mgt-core.git
synced 2025-10-06 02:01:45 +00:00
Merge branch 'master' of https://github.com/wso2/carbon-device-mgt into das-ext
This commit is contained in:
commit
502a05f623
@ -21,6 +21,7 @@ package org.wso2.carbon.device.mgt.jaxrs.api;
|
||||
import org.apache.commons.httpclient.HttpStatus;
|
||||
import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.wso2.carbon.device.mgt.core.service.DeviceManagementAdminService;
|
||||
import org.wso2.carbon.device.mgt.jaxrs.api.util.DeviceMgtAPIUtils;
|
||||
import org.wso2.carbon.device.mgt.jaxrs.api.util.ResponsePayload;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceIdentifier;
|
||||
@ -30,7 +31,9 @@ import org.wso2.carbon.device.mgt.common.PaginationRequest;
|
||||
import org.wso2.carbon.device.mgt.core.dto.DeviceType;
|
||||
import org.wso2.carbon.device.mgt.core.service.DeviceManagementProviderService;
|
||||
|
||||
import javax.ws.rs.DELETE;
|
||||
import javax.ws.rs.GET;
|
||||
import javax.ws.rs.PUT;
|
||||
import javax.ws.rs.Path;
|
||||
import javax.ws.rs.PathParam;
|
||||
import javax.ws.rs.Produces;
|
||||
@ -231,4 +234,52 @@ public class Device {
|
||||
return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Update device.
|
||||
*
|
||||
* @return update status.
|
||||
*/
|
||||
@PUT
|
||||
@Path("type/{type}/id/{deviceId}")
|
||||
public Response updateDevice(@PathParam("type") String deviceType, @PathParam("deviceId") String deviceId,
|
||||
org.wso2.carbon.device.mgt.common.Device updatedDevice) {
|
||||
try {
|
||||
DeviceManagementProviderService deviceManagementService = DeviceMgtAPIUtils.getDeviceManagementService();
|
||||
DeviceIdentifier deviceIdentifier = new DeviceIdentifier();
|
||||
deviceIdentifier.setType(deviceType);
|
||||
deviceIdentifier.setId(deviceId);
|
||||
org.wso2.carbon.device.mgt.common.Device device = deviceManagementService.getDevice(deviceIdentifier);
|
||||
device.setName(updatedDevice.getName());
|
||||
device.setDescription(updatedDevice.getDescription());
|
||||
Boolean response = deviceManagementService.modifyEnrollment(device);
|
||||
return Response.status(Response.Status.OK).entity(response).build();
|
||||
} catch (DeviceManagementException e) {
|
||||
String msg = "Error occurred while fetching the list of device types.";
|
||||
log.error(msg, e);
|
||||
return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build();
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* disenroll device.
|
||||
*
|
||||
* @return disenrollment status.
|
||||
*/
|
||||
@DELETE
|
||||
@Path("type/{type}/id/{deviceId}")
|
||||
public Response disenrollDevice(@PathParam("type") String deviceType, @PathParam("deviceId") String deviceId) {
|
||||
try {
|
||||
DeviceManagementProviderService deviceManagementService = DeviceMgtAPIUtils.getDeviceManagementService();
|
||||
DeviceIdentifier deviceIdentifier = new DeviceIdentifier();
|
||||
deviceIdentifier.setType(deviceType);
|
||||
deviceIdentifier.setId(deviceId);
|
||||
Boolean response = deviceManagementService.disenrollDevice(deviceIdentifier);
|
||||
return Response.status(Response.Status.OK).entity(response).build();
|
||||
} catch (DeviceManagementException e) {
|
||||
String msg = "Error occurred while fetching the list of device types.";
|
||||
log.error(msg, e);
|
||||
return Response.status(Response.Status.INTERNAL_SERVER_ERROR).entity(msg).build();
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -24,7 +24,7 @@ import org.apache.commons.logging.LogFactory;
|
||||
import org.wso2.carbon.device.mgt.jaxrs.api.common.MDMAPIException;
|
||||
import org.wso2.carbon.device.mgt.jaxrs.api.util.DeviceMgtAPIUtils;
|
||||
import org.wso2.carbon.device.mgt.jaxrs.beans.PriorityUpdatedPolicyWrapper;
|
||||
import org.wso2.carbon.device.mgt.jaxrs.util.MDMUtil;
|
||||
import org.wso2.carbon.device.mgt.jaxrs.util.DeviceMgtUtil;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceIdentifier;
|
||||
import org.wso2.carbon.device.mgt.jaxrs.api.util.ResponsePayload;
|
||||
import org.wso2.carbon.device.mgt.jaxrs.beans.PolicyWrapper;
|
||||
@ -62,7 +62,7 @@ public class Policy {
|
||||
policy.setPolicyName(policyWrapper.getPolicyName());
|
||||
policy.setProfileId(policyWrapper.getProfileId());
|
||||
policy.setDescription(policyWrapper.getDescription());
|
||||
policy.setProfile(MDMUtil.convertProfile(policyWrapper.getProfile()));
|
||||
policy.setProfile(DeviceMgtUtil.convertProfile(policyWrapper.getProfile()));
|
||||
policy.setOwnershipType(policyWrapper.getOwnershipType());
|
||||
policy.setRoles(policyWrapper.getRoles());
|
||||
policy.setUsers(policyWrapper.getUsers());
|
||||
@ -82,7 +82,7 @@ public class Policy {
|
||||
policy.setPolicyName(policyWrapper.getPolicyName());
|
||||
policy.setProfileId(policyWrapper.getProfileId());
|
||||
policy.setDescription(policyWrapper.getDescription());
|
||||
policy.setProfile(MDMUtil.convertProfile(policyWrapper.getProfile()));
|
||||
policy.setProfile(DeviceMgtUtil.convertProfile(policyWrapper.getProfile()));
|
||||
policy.setOwnershipType(policyWrapper.getOwnershipType());
|
||||
policy.setRoles(policyWrapper.getRoles());
|
||||
policy.setUsers(policyWrapper.getUsers());
|
||||
@ -181,7 +181,7 @@ public class Policy {
|
||||
policy.setId(policyId);
|
||||
policy.setProfileId(policyWrapper.getProfileId());
|
||||
policy.setDescription(policyWrapper.getDescription());
|
||||
policy.setProfile(MDMUtil.convertProfile(policyWrapper.getProfile()));
|
||||
policy.setProfile(DeviceMgtUtil.convertProfile(policyWrapper.getProfile()));
|
||||
policy.setOwnershipType(policyWrapper.getOwnershipType());
|
||||
policy.setRoles(policyWrapper.getRoles());
|
||||
policy.setUsers(policyWrapper.getUsers());
|
||||
|
||||
@ -24,7 +24,7 @@ import org.wso2.carbon.policy.mgt.common.Profile;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
public class MDMUtil {
|
||||
public class DeviceMgtUtil {
|
||||
|
||||
public static Profile convertProfile(org.wso2.carbon.device.mgt.jaxrs.beans.Profile mdmProfile) {
|
||||
Profile profile = new Profile();
|
||||
@ -206,6 +206,20 @@
|
||||
<method>GET</method>
|
||||
</Permission>
|
||||
|
||||
<Permission>
|
||||
<name>Modify user device</name>
|
||||
<path>/device-mgt/user/devices/update</path>
|
||||
<url>/devices/type/*/id/*</url>
|
||||
<method>PUT</method>
|
||||
</Permission>
|
||||
|
||||
<Permission>
|
||||
<name>Remove user device</name>
|
||||
<path>/device-mgt/user/devices/remove</path>
|
||||
<url>/devices/type/*/id/*</url>
|
||||
<method>DELETE</method>
|
||||
</Permission>
|
||||
|
||||
<!--<Permission>-->
|
||||
<!--<name>Get device</name>-->
|
||||
<!--<path>/device-mgt/devices/view</path>-->
|
||||
@ -241,6 +255,13 @@
|
||||
<url>/devices/name/*/*</url>
|
||||
<method>GET</method>
|
||||
</Permission>
|
||||
|
||||
<Permission>
|
||||
<name>List All Own Devices</name>
|
||||
<path>/device-mgt/user/devices/list</path>
|
||||
<url>/devices/user/*</url>
|
||||
<method>GET</method>
|
||||
</Permission>
|
||||
<!-- End of Device related APIs -->
|
||||
|
||||
<!-- Notification related APIs -->
|
||||
|
||||
@ -0,0 +1,39 @@
|
||||
/*
|
||||
* Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. licenses this file to you under the Apache License,
|
||||
* Version 2.0 (the "License"); you may not use this file except
|
||||
* in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*
|
||||
*/
|
||||
package org.wso2.carbon.device.mgt.common;
|
||||
|
||||
public class ProvisioningConfig {
|
||||
|
||||
private String providerTenantDomain;
|
||||
private boolean isSharedWithAllTenants;
|
||||
|
||||
public ProvisioningConfig(String providerTenantDomain, boolean sharedWithAllTenants) {
|
||||
this.providerTenantDomain = providerTenantDomain;
|
||||
isSharedWithAllTenants = sharedWithAllTenants;
|
||||
}
|
||||
|
||||
public String getProviderTenantDomain() {
|
||||
return providerTenantDomain;
|
||||
}
|
||||
|
||||
public boolean isSharedWithAllTenants() {
|
||||
return isSharedWithAllTenants;
|
||||
}
|
||||
|
||||
}
|
||||
@ -0,0 +1,41 @@
|
||||
/*
|
||||
* Copyright (c) 2016, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||
*
|
||||
* WSO2 Inc. licenses this file to you under the Apache License,
|
||||
* Version 2.0 (the "License"); you may not use this file except
|
||||
* in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*
|
||||
*/
|
||||
package org.wso2.carbon.device.mgt.common.push.notification;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
public class PushNotificationConfig {
|
||||
|
||||
private String type;
|
||||
private Set<String> properties;
|
||||
|
||||
public PushNotificationConfig(String type, Set<String> properties) {
|
||||
this.type = type;
|
||||
this.properties = properties;
|
||||
}
|
||||
|
||||
public String getType() {
|
||||
return type;
|
||||
}
|
||||
|
||||
public Set<String> getProperties() {
|
||||
return properties;
|
||||
}
|
||||
|
||||
}
|
||||
@ -18,13 +18,11 @@
|
||||
*/
|
||||
package org.wso2.carbon.device.mgt.common.spi;
|
||||
|
||||
import org.wso2.carbon.device.mgt.common.DeviceIdentifier;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceManagementException;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceManager;
|
||||
import org.wso2.carbon.device.mgt.common.ProvisioningConfig;
|
||||
import org.wso2.carbon.device.mgt.common.app.mgt.ApplicationManager;
|
||||
import org.wso2.carbon.device.mgt.common.operation.mgt.Operation;
|
||||
|
||||
import java.util.List;
|
||||
import org.wso2.carbon.device.mgt.common.push.notification.PushNotificationConfig;
|
||||
|
||||
/**
|
||||
* Composite interface that acts as the SPI exposing all device management as well as application management
|
||||
@ -32,33 +30,16 @@ import java.util.List;
|
||||
*/
|
||||
public interface DeviceManagementService {
|
||||
|
||||
/**
|
||||
* Method to retrieve the provider type that implements DeviceManager interface.
|
||||
*
|
||||
* @return Returns provider type
|
||||
*/
|
||||
String getType();
|
||||
|
||||
/**
|
||||
* This returns the tenant domain of the provider.
|
||||
* @return
|
||||
*/
|
||||
String getProviderTenantDomain();
|
||||
|
||||
/**
|
||||
* returns true if the device type is shared between all tenants and false if its not.
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
boolean isSharedWithAllTenants();
|
||||
|
||||
void init() throws DeviceManagementException;
|
||||
|
||||
String getType();
|
||||
|
||||
DeviceManager getDeviceManager();
|
||||
|
||||
ApplicationManager getApplicationManager();
|
||||
|
||||
void notifyOperationToDevices(Operation operation,
|
||||
List<DeviceIdentifier> deviceIds) throws DeviceManagementException;
|
||||
ProvisioningConfig getProvisioningConfig();
|
||||
|
||||
PushNotificationConfig getPushNotificationConfig();
|
||||
|
||||
}
|
||||
|
||||
@ -21,6 +21,7 @@ import org.apache.commons.logging.Log;
|
||||
import org.apache.commons.logging.LogFactory;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceManagementException;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceTypeIdentifier;
|
||||
import org.wso2.carbon.device.mgt.common.ProvisioningConfig;
|
||||
import org.wso2.carbon.device.mgt.common.spi.DeviceManagementService;
|
||||
import org.wso2.carbon.device.mgt.core.internal.DeviceManagementDataHolder;
|
||||
import org.wso2.carbon.device.mgt.core.internal.DeviceManagementServiceComponent;
|
||||
@ -44,8 +45,10 @@ public class DeviceManagementPluginRepository implements DeviceManagerStartupLis
|
||||
|
||||
public void addDeviceManagementProvider(DeviceManagementService provider) throws DeviceManagementException {
|
||||
String deviceType = provider.getType();
|
||||
String tenantDomain = provider.getProviderTenantDomain();
|
||||
boolean isSharedWithAllTenants = provider.isSharedWithAllTenants();
|
||||
|
||||
ProvisioningConfig provisioningConfig = provider.getProvisioningConfig();
|
||||
String tenantDomain = provisioningConfig.getProviderTenantDomain();
|
||||
boolean isSharedWithAllTenants = provisioningConfig.isSharedWithAllTenants();
|
||||
int tenantId = DeviceManagerUtil.getTenantId(tenantDomain);
|
||||
if (tenantId == -1) {
|
||||
throw new DeviceManagementException("No tenant available for tenant domain " + tenantDomain);
|
||||
@ -75,13 +78,15 @@ public class DeviceManagementPluginRepository implements DeviceManagerStartupLis
|
||||
}
|
||||
|
||||
public void removeDeviceManagementProvider(DeviceManagementService provider) throws DeviceManagementException {
|
||||
String deviceTypeName=provider.getType();
|
||||
if(provider.isSharedWithAllTenants()){
|
||||
DeviceTypeIdentifier deviceTypeIdentifier =new DeviceTypeIdentifier(deviceTypeName);
|
||||
String deviceTypeName = provider.getType();
|
||||
|
||||
ProvisioningConfig provisioningConfig = provider.getProvisioningConfig();
|
||||
if (provisioningConfig.isSharedWithAllTenants()) {
|
||||
DeviceTypeIdentifier deviceTypeIdentifier = new DeviceTypeIdentifier(deviceTypeName);
|
||||
providers.remove(deviceTypeIdentifier);
|
||||
}else{
|
||||
int providerTenantId=DeviceManagerUtil.getTenantId(provider.getProviderTenantDomain());
|
||||
DeviceTypeIdentifier deviceTypeIdentifier =new DeviceTypeIdentifier(deviceTypeName, providerTenantId);
|
||||
} else {
|
||||
int providerTenantId = DeviceManagerUtil.getTenantId(provisioningConfig.getProviderTenantDomain());
|
||||
DeviceTypeIdentifier deviceTypeIdentifier = new DeviceTypeIdentifier(deviceTypeName, providerTenantId);
|
||||
providers.remove(deviceTypeIdentifier);
|
||||
}
|
||||
}
|
||||
@ -113,8 +118,10 @@ public class DeviceManagementPluginRepository implements DeviceManagerStartupLis
|
||||
for (DeviceManagementService provider : providers.values()) {
|
||||
try {
|
||||
provider.init();
|
||||
int tenantId=DeviceManagerUtil.getTenantId(provider.getProviderTenantDomain());
|
||||
DeviceManagerUtil.registerDeviceType(provider.getType(), tenantId, provider.isSharedWithAllTenants());
|
||||
|
||||
ProvisioningConfig provisioningConfig = provider.getProvisioningConfig();
|
||||
int tenantId = DeviceManagerUtil.getTenantId(provisioningConfig.getProviderTenantDomain());
|
||||
DeviceManagerUtil.registerDeviceType(provider.getType(), tenantId, provisioningConfig.isSharedWithAllTenants());
|
||||
//TODO:
|
||||
//This is a temporory fix.
|
||||
//windows and IOS cannot resolve user info by extracting certs
|
||||
|
||||
@ -753,17 +753,11 @@ public class DeviceManagementProviderServiceImpl implements DeviceManagementProv
|
||||
public void notifyOperationToDevices(Operation operation, List<DeviceIdentifier> deviceIds)
|
||||
throws DeviceManagementException {
|
||||
|
||||
try {
|
||||
for (DeviceIdentifier deviceId : deviceIds) {
|
||||
DeviceManagementService dms =
|
||||
getPluginRepository().getDeviceManagementService(deviceId.getType(), this.getTenantId());
|
||||
dms.notifyOperationToDevices(operation, deviceIds);
|
||||
}
|
||||
} catch (DeviceManagementException deviceMgtEx) {
|
||||
String errorMsg = "Error in notify operations to plugins for app installation:" +
|
||||
deviceMgtEx.getErrorMessage();
|
||||
log.error(errorMsg, deviceMgtEx);
|
||||
throw new DeviceManagementException(errorMsg, deviceMgtEx);
|
||||
//TODO FIX THIS WITH PUSH NOTIFICATIONS
|
||||
//dms.notifyOperationToDevices(operation, deviceIds);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -20,8 +20,10 @@ package org.wso2.carbon.device.mgt.core;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceIdentifier;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceManagementException;
|
||||
import org.wso2.carbon.device.mgt.common.DeviceManager;
|
||||
import org.wso2.carbon.device.mgt.common.ProvisioningConfig;
|
||||
import org.wso2.carbon.device.mgt.common.app.mgt.ApplicationManager;
|
||||
import org.wso2.carbon.device.mgt.common.operation.mgt.Operation;
|
||||
import org.wso2.carbon.device.mgt.common.push.notification.PushNotificationConfig;
|
||||
import org.wso2.carbon.device.mgt.common.spi.DeviceManagementService;
|
||||
|
||||
import java.util.List;
|
||||
@ -40,14 +42,6 @@ public class TestDeviceManagementService implements DeviceManagementService {
|
||||
return providerType;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getProviderTenantDomain() { return tenantDomain;}
|
||||
|
||||
@Override
|
||||
public boolean isSharedWithAllTenants() {
|
||||
return true;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void init() throws DeviceManagementException {
|
||||
|
||||
@ -64,9 +58,13 @@ public class TestDeviceManagementService implements DeviceManagementService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void notifyOperationToDevices(Operation operation, List<DeviceIdentifier> deviceIds)
|
||||
throws DeviceManagementException {
|
||||
public ProvisioningConfig getProvisioningConfig() {
|
||||
return new ProvisioningConfig(tenantDomain, false);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PushNotificationConfig getPushNotificationConfig() {
|
||||
return null;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -97,61 +97,6 @@ deviceModule = function () {
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
@Deprecated
|
||||
*/
|
||||
publicMethods.listDevicesForUser = function (username) {
|
||||
var carbonUser = session.get(constants.USER_SESSION_KEY);
|
||||
var utility = require('/app/modules/utility.js').utility;
|
||||
if (!carbonUser) {
|
||||
log.error("User object was not found in the session");
|
||||
throw constants.ERRORS.USER_NOT_FOUND;
|
||||
}
|
||||
try {
|
||||
utility.startTenantFlow(carbonUser);
|
||||
var deviceManagementService = utility.getDeviceManagementService();
|
||||
var devices = deviceManagementService.getDevicesOfUser(username);
|
||||
var deviceList = [];
|
||||
var i, device, propertiesList, deviceObject;
|
||||
for (i = 0; i < devices.size(); i++) {
|
||||
device = devices.get(i);
|
||||
propertiesList = DeviceManagerUtil.convertDevicePropertiesToMap(device.getProperties());
|
||||
|
||||
deviceObject = {};
|
||||
deviceObject[constants.DEVICE_IDENTIFIER] =
|
||||
privateMethods.validateAndReturn(device.getDeviceIdentifier());
|
||||
deviceObject[constants.DEVICE_NAME] =
|
||||
privateMethods.validateAndReturn(device.getName());
|
||||
deviceObject[constants.DEVICE_OWNERSHIP] =
|
||||
privateMethods.validateAndReturn(device.getEnrolmentInfo().getOwnership());
|
||||
deviceObject[constants.DEVICE_OWNER] =
|
||||
privateMethods.validateAndReturn(device.getEnrolmentInfo().getOwner());
|
||||
deviceObject[constants.DEVICE_TYPE] =
|
||||
privateMethods.validateAndReturn(device.getType());
|
||||
deviceObject[constants.DEVICE_PROPERTIES] = {};
|
||||
if (device.getType() == constants.PLATFORM_IOS) {
|
||||
deviceObject[constants.DEVICE_PROPERTIES][constants.DEVICE_MODEL] =
|
||||
privateMethods.validateAndReturn(propertiesList.get(constants.DEVICE_PRODUCT));
|
||||
deviceObject[constants.DEVICE_PROPERTIES][constants.DEVICE_VENDOR] = constants.VENDOR_APPLE;
|
||||
} else {
|
||||
deviceObject[constants.DEVICE_PROPERTIES][constants.DEVICE_MODEL] =
|
||||
privateMethods.validateAndReturn(propertiesList.get(constants.DEVICE_MODEL));
|
||||
deviceObject[constants.DEVICE_PROPERTIES][constants.DEVICE_VENDOR] =
|
||||
privateMethods.validateAndReturn(propertiesList.get(constants.DEVICE_VENDOR));
|
||||
}
|
||||
deviceObject[constants.DEVICE_PROPERTIES][constants.DEVICE_OS_VERSION] =
|
||||
privateMethods.validateAndReturn(propertiesList.get(constants.DEVICE_OS_VERSION));
|
||||
|
||||
deviceList.push(deviceObject);
|
||||
}
|
||||
return deviceList;
|
||||
} catch (e) {
|
||||
throw e;
|
||||
} finally {
|
||||
utility.endTenantFlow();
|
||||
}
|
||||
};
|
||||
|
||||
/*
|
||||
@Deprecated
|
||||
*/
|
||||
@ -298,8 +243,7 @@ deviceModule = function () {
|
||||
deviceObject[constants["DEVICE_PROPERTIES"]] = properties;
|
||||
return deviceObject;
|
||||
}
|
||||
}
|
||||
,
|
||||
},
|
||||
function (responsePayload) {
|
||||
var response = {};
|
||||
response["status"] = "error";
|
||||
@ -321,8 +265,7 @@ deviceModule = function () {
|
||||
return serviceInvokers.XMLHttp.get(
|
||||
url, function (responsePayload) {
|
||||
return responsePayload;
|
||||
}
|
||||
,
|
||||
},
|
||||
function (responsePayload) {
|
||||
log.error(responsePayload);
|
||||
return -1;
|
||||
@ -335,8 +278,7 @@ deviceModule = function () {
|
||||
return serviceInvokers.XMLHttp.get(
|
||||
url, function (responsePayload) {
|
||||
return responsePayload;
|
||||
}
|
||||
,
|
||||
},
|
||||
function (responsePayload) {
|
||||
log.error(responsePayload);
|
||||
return -1;
|
||||
@ -344,14 +286,12 @@ deviceModule = function () {
|
||||
);
|
||||
};
|
||||
|
||||
|
||||
publicMethods.getDeviceTypes = function () {
|
||||
var url = devicemgtProps["httpsURL"] + constants.ADMIN_SERVICE_CONTEXT + "/devices/types";
|
||||
return serviceInvokers.XMLHttp.get(
|
||||
url, function (responsePayload) {
|
||||
return responsePayload;
|
||||
}
|
||||
,
|
||||
},
|
||||
function (responsePayload) {
|
||||
log.error(responsePayload);
|
||||
return -1;
|
||||
@ -383,86 +323,20 @@ deviceModule = function () {
|
||||
return license;
|
||||
};
|
||||
|
||||
publicMethods.getOwnDevices = function () {
|
||||
var listAllDevicesEndPoint = deviceCloudService + "/device/user/" + user.username + "/all";
|
||||
var result = get(listAllDevicesEndPoint, {}, "json");
|
||||
var devices = result.data;
|
||||
var device;
|
||||
for (var d in devices){
|
||||
device = devices[d];
|
||||
device.assetId = publicMethods.getAssetId(device.deviceType);
|
||||
publicMethods.getDevices = function (userName) {
|
||||
var url = devicemgtProps["httpsURL"] + constants.ADMIN_SERVICE_CONTEXT + "/devices/user/" + userName;
|
||||
return serviceInvokers.XMLHttp.get(
|
||||
url, function (responsePayload) {
|
||||
for (var i = 0; i < responsePayload.length; i++) {
|
||||
responsePayload[i].thumb = utility.getDeviceThumb(responsePayload[i].type);
|
||||
}
|
||||
return result;
|
||||
return responsePayload;
|
||||
},
|
||||
function (responsePayload) {
|
||||
log.error(responsePayload);
|
||||
return -1;
|
||||
}
|
||||
);
|
||||
};
|
||||
|
||||
publicMethods.getAllPermittedDevices = function () {
|
||||
var groupModule = require("/app/modules/group.js").groupModule;
|
||||
|
||||
var result = publicMethods.getUnGroupedDevices();
|
||||
var unGroupedDevices = result.data;
|
||||
var user_groups = groupModule.getGroups().data;
|
||||
var allDevices = [];
|
||||
var deviceCount = unGroupedDevices.length;
|
||||
for (var g in user_groups) {
|
||||
var deviceInGroup = user_groups[g].devices;
|
||||
deviceCount += deviceInGroup.length;
|
||||
if (deviceInGroup && deviceInGroup.length == 0) {
|
||||
delete user_groups[g]["devices"];
|
||||
}
|
||||
var device;
|
||||
for (var d in deviceInGroup){
|
||||
device = deviceInGroup[d];
|
||||
device.assetId = publicMethods.getAssetId(device.type);
|
||||
}
|
||||
allDevices.push(user_groups[g]);
|
||||
}
|
||||
allDevices.push({id: 0, devices: unGroupedDevices});
|
||||
result.data = allDevices;
|
||||
result.device_count = deviceCount;
|
||||
return result;
|
||||
};
|
||||
|
||||
publicMethods.removeDevice = function (deviceType, deviceId) {
|
||||
var carbonUser = session.get(constants.USER_SESSION_KEY);
|
||||
if (!carbonUser) {
|
||||
log.error("User object was not found in the session");
|
||||
throw constants.ERRORS.USER_NOT_FOUND;
|
||||
}
|
||||
try {
|
||||
utility.startTenantFlow(carbonUser);
|
||||
var deviceManagementService = utility.getDeviceManagementService();
|
||||
var deviceIdentifier = new DeviceIdentifier();
|
||||
deviceIdentifier.setType(deviceType);
|
||||
deviceIdentifier.setId(deviceId);
|
||||
return deviceManagementService.disenrollDevice(deviceIdentifier);
|
||||
} catch (e) {
|
||||
throw e;
|
||||
} finally {
|
||||
utility.endTenantFlow();
|
||||
}
|
||||
};
|
||||
|
||||
publicMethods.updateDevice = function (deviceType, deviceId, deviceName) {
|
||||
var carbonUser = session.get(constants.USER_SESSION_KEY);
|
||||
if (!carbonUser) {
|
||||
log.error("User object was not found in the session");
|
||||
throw constants.ERRORS.USER_NOT_FOUND;
|
||||
}
|
||||
try {
|
||||
utility.startTenantFlow(carbonUser);
|
||||
var deviceManagementService = utility.getDeviceManagementService();
|
||||
var deviceIdentifier = new DeviceIdentifier();
|
||||
deviceIdentifier.setType(deviceType);
|
||||
deviceIdentifier.setId(deviceId);
|
||||
var device = deviceManagementService.getDevice(deviceIdentifier);
|
||||
device.setName(deviceName);
|
||||
return deviceManagementService.modifyEnrollment(device);
|
||||
} catch (e) {
|
||||
throw e;
|
||||
} finally {
|
||||
utility.endTenantFlow();
|
||||
}
|
||||
};
|
||||
|
||||
return publicMethods;
|
||||
}();
|
||||
|
||||
@ -67,8 +67,7 @@ policyModule = function () {
|
||||
policyObjectToView["priorityId"] = policyObjectFromRestEndpoint["priorityId"];
|
||||
policyObjectToView["name"] = policyObjectFromRestEndpoint["policyName"];
|
||||
policyObjectToView["platform"] = policyObjectFromRestEndpoint["profile"]["deviceType"]["name"];
|
||||
policyObjectToView["icon"] = devicemgtProps["httpsURL"] + devicemgtProps["appContext"] +
|
||||
"public/cdmf.unit.device.type." + policyObjectToView["platform"] + ".type-view/images/thumb.png";
|
||||
policyObjectToView["icon"] = utility.getDeviceThumb(policyObjectToView["platform"]);
|
||||
policyObjectToView["ownershipType"] = policyObjectFromRestEndpoint["ownershipType"];
|
||||
policyObjectToView["roles"] = privateMethods.
|
||||
getElementsInAString(policyObjectFromRestEndpoint["roles"]);
|
||||
|
||||
@ -18,6 +18,9 @@
|
||||
|
||||
var utility;
|
||||
utility = function () {
|
||||
|
||||
var constants = require('/app/modules/constants.js');
|
||||
var devicemgtProps = require('/app/conf/devicemgt-props.js').config();
|
||||
var log = new Log("/app/modules/utility.js");
|
||||
var JavaClass = Packages.java.lang.Class;
|
||||
var PrivilegedCarbonContext = Packages.org.wso2.carbon.context.PrivilegedCarbonContext;
|
||||
@ -104,26 +107,43 @@ utility = function () {
|
||||
};
|
||||
|
||||
publicMethods.getOperationIcon = function (deviceType, operation) {
|
||||
var iconPath = "/app/units/cdmf.unit.device.type."
|
||||
+ deviceType + ".type-view/public/images/operations/" + operation + ".png";
|
||||
var unitName = publicMethods.getTenantedDeviceUnitName(deviceType, "type-view");
|
||||
var iconPath = "/app/units/" + unitName + "/public/images/operations/" + operation + ".png";
|
||||
var icon = new File(iconPath);
|
||||
if (icon.isExists()) {
|
||||
return "public/cdmf.unit.device.type." + deviceType + ".type-view/images/operations/" + operation + ".png";
|
||||
return devicemgtProps["appContext"] + "public/" + unitName + "/images/operations/" + operation + ".png";
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
};
|
||||
|
||||
publicMethods.getDeviceThumb = function (deviceType) {
|
||||
var iconPath = "/app/units/cdmf.unit.device.type."
|
||||
+ deviceType + ".type-view/public/images/thumb.png";
|
||||
var unitName = publicMethods.getTenantedDeviceUnitName(deviceType, "type-view");
|
||||
var iconPath = "/app/units/" + unitName + "/public/images/thumb.png";
|
||||
var icon = new File(iconPath);
|
||||
if (icon.isExists()) {
|
||||
return "/devicemgt/public/cdmf.unit.device.type." + deviceType + ".type-view/images/thumb.png";
|
||||
return devicemgtProps["appContext"] + "public/" + unitName + "/images/thumb.png";
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
};
|
||||
|
||||
publicMethods.getTenantedDeviceUnitName = function (deviceType, unitPostfix) {
|
||||
var user = session.get(constants.USER_SESSION_KEY);
|
||||
if (!user) {
|
||||
log.error("User object was not found in the session");
|
||||
throw constants.ERRORS.USER_NOT_FOUND;
|
||||
}
|
||||
var unitName = user.domain + "cdmf.unit.device.type." + deviceType + "." + unitPostfix;
|
||||
if (new File("/app/units/" + unitName).isExists()) {
|
||||
return unitName;
|
||||
}
|
||||
unitName = "cdmf.unit.device.type." + deviceType + "." + unitPostfix;
|
||||
if (new File("/app/units/" + unitName).isExists()) {
|
||||
return unitName;
|
||||
}
|
||||
return null;
|
||||
};
|
||||
|
||||
return publicMethods;
|
||||
}();
|
||||
|
||||
@ -39,9 +39,8 @@ function onRequest(context) {
|
||||
}
|
||||
|
||||
return {
|
||||
"deviceTypeViewUnitName": "cdmf.unit.device.type." + deviceType + ".type-view",
|
||||
"deviceTypeViewUnitName": utility.getTenantedDeviceUnitName(deviceType, "type-view"),
|
||||
"deviceType": deviceType,
|
||||
"label" : configs["deviceType"]["label"]
|
||||
};
|
||||
}
|
||||
|
||||
|
||||
@ -17,6 +17,7 @@
|
||||
*/
|
||||
|
||||
function onRequest(context){
|
||||
var utility = require("/app/modules/utility.js").utility;
|
||||
context.handlebars.registerHelper('equal', function (lvalue, rvalue, options) {
|
||||
if (arguments.length < 3)
|
||||
throw new Error("Handlebars Helper equal needs 2 parameters");
|
||||
@ -28,6 +29,5 @@ function onRequest(context){
|
||||
});
|
||||
|
||||
var deviceType = context.uriParams.deviceType;
|
||||
|
||||
return {"deviceViewUnitName" : "cdmf.unit.device.type." + deviceType + ".device-view"};
|
||||
return {"deviceViewUnitName": utility.getTenantedDeviceUnitName(deviceType, "device-view")};
|
||||
}
|
||||
@ -326,7 +326,6 @@
|
||||
|
||||
{{#zone "bottomJs"}}
|
||||
<script id="device-listing" data-current-user="{{currentUser.username}}" data-device-types="{{deviceTypes}}"
|
||||
data-image-resource="{{@app.context}}/public/cdmf.unit.device.type."
|
||||
type="text/x-handlebars-template"></script>
|
||||
{{js "js/listing.js"}}
|
||||
{{/zone}}
|
||||
@ -35,8 +35,8 @@ function onRequest(context) {
|
||||
if (currentUser) {
|
||||
page.permissions = {};
|
||||
page.permissions.list = stringify(userModule.getUIPermissions());
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/admin/devices/add")) {
|
||||
permissions.enroll = true;
|
||||
if (userModule.isAuthorized("/permission/admin/device-mgt/user/devices/add")) {
|
||||
page.permissions.enroll = true;
|
||||
}
|
||||
page.currentUser = currentUser;
|
||||
var deviceCount = 0;
|
||||
@ -58,7 +58,8 @@ function onRequest(context) {
|
||||
deviceTypes.push({
|
||||
"type": data[i].name,
|
||||
"category": deviceType.category,
|
||||
"label": deviceType.label
|
||||
"label": deviceType.label,
|
||||
"thumb": utility.getDeviceThumb(data[i].name)
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@ -213,6 +213,16 @@ function loadDevices(searchType, searchParam){
|
||||
return type;
|
||||
}
|
||||
|
||||
function getDeviceTypeThumb(type) {
|
||||
var deviceTypes = deviceListing.data("deviceTypes");
|
||||
for (var i = 0; i < deviceTypes.length; i++) {
|
||||
if (deviceTypes[i].type == type) {
|
||||
return deviceTypes[i].thumb;
|
||||
}
|
||||
}
|
||||
return type;
|
||||
}
|
||||
|
||||
$('#device-grid').datatables_extended ({
|
||||
serverSide: true,
|
||||
processing: false,
|
||||
@ -233,7 +243,7 @@ function loadDevices(searchType, searchParam){
|
||||
},
|
||||
columnDefs: [
|
||||
{ targets: 0, data: 'name', className: 'remove-padding icon-only content-fill' , render: function ( data, type, row, meta ) {
|
||||
return '<div class="thumbnail icon"><img class="square-element text fw " src="' + imageResource + row.type + '.type-view/images/thumb.png"/></div>';
|
||||
return '<div class="thumbnail icon"><img class="square-element text fw " src="' + getDeviceTypeThumb(row.type) + '"/></div>';
|
||||
}},
|
||||
{ targets: 1, data: 'name', className: 'fade-edge' , render: function ( name, type, row, meta ) {
|
||||
var model = getPropertyValue(row.properties, 'DEVICE_MODEL');
|
||||
@ -582,21 +592,19 @@ function attachDeviceEvents() {
|
||||
$("a.remove-device-link").click(function () {
|
||||
var deviceId = $(this).data("deviceid");
|
||||
var deviceType = $(this).data("devicetype");
|
||||
var removeDeviceAPI = "/devicemgt/api/devices/" + deviceType + "/" + deviceId + "/remove";
|
||||
var serviceURL = "/devicemgt_admin/devices/type/" + deviceType + "/id/" + deviceId;
|
||||
|
||||
$(modalPopupContent).html($('#remove-device-modal-content').html());
|
||||
showPopup();
|
||||
|
||||
$("a#remove-device-yes-link").click(function () {
|
||||
var postOperationRequest = $.ajax({
|
||||
url: removeDeviceAPI,
|
||||
method: "post"
|
||||
});
|
||||
postOperationRequest.done(function (data) {
|
||||
invokerUtil.delete(serviceURL, function (message) {
|
||||
$(modalPopupContent).html($('#remove-device-200-content').html());
|
||||
window.location.reload(false);
|
||||
});
|
||||
postOperationRequest.fail(function (jqXHR, textStatus) {
|
||||
setTimeout(function () {
|
||||
hidePopup();
|
||||
location.reload(false);
|
||||
}, 2000);
|
||||
}, function (message) {
|
||||
displayDeviceErrors(jqXHR);
|
||||
});
|
||||
});
|
||||
@ -604,7 +612,6 @@ function attachDeviceEvents() {
|
||||
$("a#remove-device-cancel-link").click(function () {
|
||||
hidePopup();
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
/**
|
||||
@ -616,7 +623,7 @@ function attachDeviceEvents() {
|
||||
var deviceId = $(this).data("deviceid");
|
||||
var deviceType = $(this).data("devicetype");
|
||||
var deviceName = $(this).data("devicename");
|
||||
var editDeviceAPI = "/devicemgt/api/devices/" + deviceType + "/" + deviceId + "/update?name=";
|
||||
var serviceURL = "/devicemgt_admin/devices/type/" + deviceType + "/id/" + deviceId;
|
||||
|
||||
$(modalPopupContent).html($('#edit-device-modal-content').html());
|
||||
$('#edit-device-name').val(deviceName);
|
||||
@ -624,18 +631,13 @@ function attachDeviceEvents() {
|
||||
|
||||
$("a#edit-device-yes-link").click(function () {
|
||||
var newDeviceName = $('#edit-device-name').val();
|
||||
var postOperationRequest = $.ajax({
|
||||
url: editDeviceAPI + newDeviceName,
|
||||
method: "post"
|
||||
});
|
||||
postOperationRequest.done(function (data) {
|
||||
invokerUtil.put(serviceURL, {"name": newDeviceName}, function (message) {
|
||||
$(modalPopupContent).html($('#edit-device-200-content').html());
|
||||
setTimeout(function () {
|
||||
hidePopup();
|
||||
location.reload(false);
|
||||
}, 2000);
|
||||
});
|
||||
postOperationRequest.fail(function (jqXHR, textStatus) {
|
||||
}, function (message) {
|
||||
displayDeviceErrors(jqXHR);
|
||||
});
|
||||
});
|
||||
|
||||
@ -16,11 +16,13 @@
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
function onRequest(context){
|
||||
function onRequest(context) {
|
||||
var utility = require("/app/modules/utility.js").utility;
|
||||
context.handlebars.registerHelper('equal', function (lvalue, rvalue, options) {
|
||||
if (arguments.length < 3)
|
||||
if (arguments.length < 3) {
|
||||
throw new Error("Handlebars Helper equal needs 2 parameters");
|
||||
if( lvalue!=rvalue ) {
|
||||
}
|
||||
if (lvalue != rvalue) {
|
||||
return options.inverse(this);
|
||||
} else {
|
||||
return options.fn(this);
|
||||
@ -28,5 +30,5 @@ function onRequest(context){
|
||||
});
|
||||
var deviceType = context.uriParams.deviceType;
|
||||
|
||||
return {"policyWizardUnitName" : "cdmf.unit.device.type." + deviceType + ".policy-wizard"};
|
||||
return {"policyWizardUnitName": utility.getTenantedDeviceUnitName(deviceType, "policy-wizard")};
|
||||
}
|
||||
@ -17,6 +17,7 @@
|
||||
*/
|
||||
|
||||
function onRequest(context) {
|
||||
var utility = require("/app/modules/utility.js").utility;
|
||||
var deviceType = request.getParameter("type");
|
||||
return {"deviceTypePolicyEdit" : "cdmf.unit.device.type." + deviceType + ".policy-edit"};
|
||||
return {"deviceTypePolicyEdit": utility.getTenantedDeviceUnitName(deviceType, "policy-edit")};
|
||||
}
|
||||
@ -17,6 +17,7 @@
|
||||
*/
|
||||
|
||||
function onRequest(context) {
|
||||
var utility = require("/app/modules/utility.js").utility;
|
||||
var deviceType = request.getParameter("type");
|
||||
return {"deviceTypePolicyView" : "cdmf.unit.device.type." + deviceType + ".policy-view"};
|
||||
return {"deviceTypePolicyView": utility.getTenantedDeviceUnitName(deviceType, "policy-view")};
|
||||
}
|
||||
@ -43,8 +43,7 @@
|
||||
</button>
|
||||
our {{deviceTypeLabel}} device
|
||||
</p>
|
||||
<img class="try-device-image"
|
||||
src="{{@app.context}}/public/cdmf.unit.device.type.{{deviceTypeName}}.type-view/images/thumb.png">
|
||||
<img class="try-device-image" src="{{thumb}}">
|
||||
</div>
|
||||
</div>
|
||||
{{/each}}
|
||||
@ -55,8 +54,6 @@
|
||||
{{/zone}}
|
||||
{{#zone "bottomJs"}}
|
||||
<script id="device-listing" data-current-user="{{currentUser.username}}"
|
||||
{{! /devicemgt/public/cdmf.unit.device.type.android}}
|
||||
data-image-resource="{{@app.context}}/public/cdmf.unit.device.type."
|
||||
src="{{@unit.publicUri}}/templates/listing.hbs"
|
||||
type="text/x-handlebars-template"></script>
|
||||
<script type="text/javascript">
|
||||
|
||||
@ -42,21 +42,23 @@ function onRequest(context) {
|
||||
deviceTypeLabel = configs[DTYPE_CONF_DEVICE_TYPE_KEY][DTYPE_CONF_DEVICE_TYPE_LABEL_KEY];
|
||||
}
|
||||
}
|
||||
if (deviceCategory == 'virtual'){
|
||||
if (deviceCategory == 'virtual') {
|
||||
virtualDeviceTypesList.push({
|
||||
"hasCustTemplate": false,
|
||||
"deviceTypeLabel": deviceTypeLabel,
|
||||
"deviceTypeName": deviceTypes[i].name,
|
||||
"deviceCategory": deviceCategory,
|
||||
"deviceTypeId": deviceTypes[i].id
|
||||
"deviceTypeId": deviceTypes[i].id,
|
||||
"thumb": utility.getDeviceThumb(deviceTypes[i].name)
|
||||
});
|
||||
}else{
|
||||
} else {
|
||||
deviceTypesList.push({
|
||||
"hasCustTemplate": false,
|
||||
"deviceTypeLabel": deviceTypeLabel,
|
||||
"deviceTypeName": deviceTypes[i].name,
|
||||
"deviceCategory": deviceCategory,
|
||||
"deviceTypeId": deviceTypes[i].id
|
||||
"deviceTypeId": deviceTypes[i].id,
|
||||
"thumb": utility.getDeviceThumb(deviceTypes[i].name)
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@ -125,7 +125,6 @@ var deviceTypeCount, compiledDeviceTypesCount = 0;
|
||||
function loadDevices(searchType, searchParam){
|
||||
var deviceListing = $("#device-listing");
|
||||
var deviceListingSrc = deviceListing.attr("src");
|
||||
var imageResource = deviceListing.data("image-resource");
|
||||
var currentUser = deviceListing.data("currentUser");
|
||||
|
||||
$('#ast-container').html("");
|
||||
@ -133,7 +132,7 @@ function loadDevices(searchType, searchParam){
|
||||
if(deviceTypesList.length > 0){
|
||||
for (var i = 0; i < deviceTypesList.length; i++) {
|
||||
var viewModel = {};
|
||||
viewModel.imageLocation = imageResource;
|
||||
viewModel.thumb = deviceTypesList[i].thumb;
|
||||
viewModel.appContext = clientJsAppContext;
|
||||
viewModel.deviceTypeName = deviceTypesList[i].deviceTypeName;
|
||||
viewModel.deviceTypeId = deviceTypesList[i].deviceTypeId;
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
<td class="remove-padding icon-only content-fill" data-search="{{deviceCategory}}" data-display="{{deviceCategory}}">
|
||||
<div class="thumbnail icon">
|
||||
<!--<i class="square-element text fw fw-mobile"></i>-->
|
||||
<img class="square-element text fw " src="{{imageLocation}}{{deviceTypeName}}.type-view/images/thumb.png" />
|
||||
<img class="square-element text fw" src="{{thumb}}"/>
|
||||
</div>
|
||||
</td>
|
||||
<td class="remove-padding-top" data-search="{{deviceTypeLabel}}" data-display="{{deviceTypeLabel}}">
|
||||
|
||||
@ -17,19 +17,12 @@
|
||||
*/
|
||||
|
||||
function onRequest(context) {
|
||||
var log = new Log("create.js");
|
||||
var DTYPE_CONF_DEVICE_TYPE_KEY = "deviceType";
|
||||
var DTYPE_CONF_DEVICE_TYPE_LABEL_KEY = "label";
|
||||
|
||||
var utility = require("/app/modules/utility.js").utility;
|
||||
var userModule = require("/app/modules/user.js")["userModule"];
|
||||
|
||||
var JFile = Packages.java.io.File;
|
||||
var sep = JFile.separator;
|
||||
|
||||
var systemProcess = require('process');
|
||||
var parent = 'file:///' + (systemProcess.getProperty('jaggery.home') ||
|
||||
systemProcess.getProperty('carbon.home')).replace(/[\\]/g, '/').replace(/^[\/]/g, '');
|
||||
var types = {};
|
||||
types["types"] = [];
|
||||
var typesListResponse = userModule.getPlatforms();
|
||||
@ -41,9 +34,7 @@ function onRequest(context) {
|
||||
if (configs && configs[DTYPE_CONF_DEVICE_TYPE_KEY][DTYPE_CONF_DEVICE_TYPE_LABEL_KEY]) {
|
||||
deviceTypeLabel = configs[DTYPE_CONF_DEVICE_TYPE_KEY][DTYPE_CONF_DEVICE_TYPE_LABEL_KEY];
|
||||
}
|
||||
var policyWizard = new File(parent + sep + "repository" + sep + "deployment" + sep + "server" + sep +
|
||||
"jaggeryapps" + sep + "devicemgt" + sep + "app" + sep + "units" + sep +
|
||||
"cdmf.unit.device.type." + deviceType + ".policy-wizard");
|
||||
var policyWizard = new File("/app/units/" + utility.getTenantedDeviceUnitName(deviceType, "policy-wizard"));
|
||||
if(policyWizard.isExists()){
|
||||
typesListResponse["content"][type]["icon"] = utility.getDeviceThumb(deviceType);
|
||||
typesListResponse["content"][type]["label"] = deviceTypeLabel;
|
||||
|
||||
@ -8,7 +8,7 @@
|
||||
<a href="{{@app.context}}"><i class="fw fw-dashboard"></i>Admin Dashboard</a>
|
||||
</li>
|
||||
{{/if}}
|
||||
{{#if permissions.LIST_DEVICES}}
|
||||
{{#if permissions.LIST_OWN_DEVICES}}
|
||||
<li>
|
||||
<a href="{{@app.context}}/devices"><i class="fw fw-mobile"></i>Device Management</a>
|
||||
</li>
|
||||
|
||||
@ -91,7 +91,7 @@
|
||||
<span class="wr-list-icon">
|
||||
<div class="thumbnail icon">
|
||||
<img class="square-element text fw "
|
||||
src="{{@app.context}}/public/cdmf.unit.device.type.{{type}}.type-view/images/thumb.png"/>
|
||||
src="{{thumb}}"/>
|
||||
</div>
|
||||
</span>
|
||||
<span class="wr-list-desc">
|
||||
|
||||
@ -41,9 +41,8 @@ function onRequest(context) {
|
||||
if (response["status"] == "success") {
|
||||
userRoles = response["content"];
|
||||
}
|
||||
|
||||
var deviceModule = require("/app/modules/device.js").deviceModule;
|
||||
devices = deviceModule.listDevicesForUser(userName);
|
||||
devices = deviceModule.getDevices(userName);
|
||||
}
|
||||
return {"user": user, "userRoles": userRoles, "devices": devices};
|
||||
}
|
||||
@ -87,10 +87,8 @@ public class PolicyManagementServiceComponent {
|
||||
componentContext.getBundleContext().registerService(
|
||||
PolicyManagerService.class.getName(), new PolicyManagerServiceImpl(), null);
|
||||
|
||||
|
||||
|
||||
PolicyConfiguration policyConfiguration = DeviceConfigurationManager.getInstance().getDeviceManagementConfig().
|
||||
getDeviceManagementConfigRepository().getPolicyConfiguration();
|
||||
PolicyConfiguration policyConfiguration =
|
||||
DeviceConfigurationManager.getInstance().getDeviceManagementConfig().getPolicyConfiguration();
|
||||
if(policyConfiguration.getMonitoringEnable()) {
|
||||
TaskScheduleService taskScheduleService = new TaskScheduleServiceImpl();
|
||||
taskScheduleService.startTask(PolicyManagerUtil.getMonitoringFequency());
|
||||
@ -104,8 +102,8 @@ public class PolicyManagementServiceComponent {
|
||||
@SuppressWarnings("unused")
|
||||
protected void deactivate(ComponentContext componentContext) {
|
||||
try {
|
||||
PolicyConfiguration policyConfiguration = DeviceConfigurationManager.getInstance().getDeviceManagementConfig().
|
||||
getDeviceManagementConfigRepository().getPolicyConfiguration();
|
||||
PolicyConfiguration policyConfiguration =
|
||||
DeviceConfigurationManager.getInstance().getDeviceManagementConfig().getPolicyConfiguration();
|
||||
if (policyConfiguration.getMonitoringEnable()) {
|
||||
TaskScheduleService taskScheduleService = new TaskScheduleServiceImpl();
|
||||
taskScheduleService.stopTask();
|
||||
|
||||
@ -72,9 +72,8 @@ public class MonitoringManagerImpl implements MonitoringManager {
|
||||
this.deviceTypeDAO = DeviceManagementDAOFactory.getDeviceTypeDAO();
|
||||
this.monitoringDAO = PolicyManagementDAOFactory.getMonitoringDAO();
|
||||
this.complianceDecisionPoint = new ComplianceDecisionPointImpl();
|
||||
this.policyConfiguration = DeviceConfigurationManager.getInstance().getDeviceManagementConfig().
|
||||
getDeviceManagementConfigRepository().getPolicyConfiguration();
|
||||
|
||||
this.policyConfiguration =
|
||||
DeviceConfigurationManager.getInstance().getDeviceManagementConfig().getPolicyConfiguration();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -43,8 +43,8 @@ public class TaskScheduleServiceImpl implements TaskScheduleService {
|
||||
|
||||
|
||||
public TaskScheduleServiceImpl() {
|
||||
this.policyConfiguration = DeviceConfigurationManager.getInstance().getDeviceManagementConfig().
|
||||
getDeviceManagementConfigRepository().getPolicyConfiguration();
|
||||
this.policyConfiguration =
|
||||
DeviceConfigurationManager.getInstance().getDeviceManagementConfig().getPolicyConfiguration();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@ -218,7 +218,7 @@ public class PolicyManagerUtil {
|
||||
|
||||
if (monitoringFrequency == 0) {
|
||||
PolicyConfiguration policyConfiguration = DeviceConfigurationManager.getInstance().
|
||||
getDeviceManagementConfig().getDeviceManagementConfigRepository().getPolicyConfiguration();
|
||||
getDeviceManagementConfig().getPolicyConfiguration();
|
||||
monitoringFrequency = policyConfiguration.getMonitoringFrequency();
|
||||
}
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user