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
This commit is contained in:
commit
02164b54e1
@ -345,11 +345,11 @@ public class PolicyManagementServiceImpl implements PolicyManagementService {
|
||||
public Response updatePolicyPriorities(List<PriorityUpdatedPolicyWrapper> priorityUpdatedPolicies) {
|
||||
PolicyManagerService policyManagementService = DeviceMgtAPIUtils.getPolicyManagementService();
|
||||
List<Policy> policiesToUpdate = new ArrayList<>(priorityUpdatedPolicies.size());
|
||||
int i;
|
||||
for (i = 0; i < priorityUpdatedPolicies.size(); i++) {
|
||||
|
||||
for (PriorityUpdatedPolicyWrapper priorityUpdatedPolicy : priorityUpdatedPolicies) {
|
||||
Policy policyObj = new Policy();
|
||||
policyObj.setId(priorityUpdatedPolicies.get(i).getId());
|
||||
policyObj.setPriorityId(priorityUpdatedPolicies.get(i).getPriority());
|
||||
policyObj.setId(priorityUpdatedPolicy.getId());
|
||||
policyObj.setPriorityId(priorityUpdatedPolicy.getPriority());
|
||||
policiesToUpdate.add(policyObj);
|
||||
}
|
||||
boolean policiesUpdated;
|
||||
|
||||
@ -151,7 +151,7 @@ public class OperationManagerImpl implements OperationManager {
|
||||
// check whether device list is greater than batch size notification strategy has enable to send push
|
||||
// notification using scheduler task
|
||||
if (DeviceConfigurationManager.getInstance().getDeviceManagementConfig().
|
||||
getPushNotificationConfiguration().getSchedulerBatchSize() < authorizedDeviceList.size() &&
|
||||
getPushNotificationConfiguration().getSchedulerBatchSize() <= authorizedDeviceList.size() &&
|
||||
notificationStrategy != null) {
|
||||
isScheduled = notificationStrategy.getConfig().isScheduled();
|
||||
}
|
||||
|
||||
@ -27,6 +27,7 @@ public class OperationMapping {
|
||||
|
||||
private DeviceIdentifier deviceIdentifier;
|
||||
private int operationId;
|
||||
private int enrollmentId;
|
||||
private int tenantId;
|
||||
private Operation.Status status;
|
||||
private Operation.PushNotificationStatus pushNotificationStatus;
|
||||
@ -39,6 +40,14 @@ public class OperationMapping {
|
||||
this.operationId = operationId;
|
||||
}
|
||||
|
||||
public int getEnrollmentId() {
|
||||
return enrollmentId;
|
||||
}
|
||||
|
||||
public void setEnrollmentId(int enrollmentId) {
|
||||
this.enrollmentId = enrollmentId;
|
||||
}
|
||||
|
||||
public int getTenantId() {
|
||||
return tenantId;
|
||||
}
|
||||
|
||||
@ -1104,10 +1104,10 @@ public class GenericOperationDAOImpl implements OperationDAO {
|
||||
Map<Integer, List<OperationMapping>> operationMappingsTenantMap = new HashMap<>();
|
||||
try {
|
||||
conn = OperationManagementDAOFactory.getConnection();
|
||||
String sql = "SELECT op.ENROLMENT_ID, op.OPERATION_ID, dt.NAME ,d.TENANT_ID FROM DM_DEVICE d, " +
|
||||
"DM_ENROLMENT_OP_MAPPING op, DM_DEVICE_TYPE dt WHERE op.STATUS = ? AND " +
|
||||
"op.PUSH_NOTIFICATION_STATUS = ? AND d.DEVICE_TYPE_ID = dt.ID AND d.ID=op.ENROLMENT_ID ORDER BY " +
|
||||
"op.OPERATION_ID LIMIT ?";
|
||||
String sql = "SELECT op.ENROLMENT_ID, op.OPERATION_ID, d.DEVICE_IDENTIFICATION, dt.NAME as DEVICE_TYPE, " +
|
||||
"d.TENANT_ID FROM DM_DEVICE d, DM_ENROLMENT_OP_MAPPING op, DM_DEVICE_TYPE dt WHERE op.STATUS = ?" +
|
||||
" AND op.PUSH_NOTIFICATION_STATUS = ? AND d.DEVICE_TYPE_ID = dt.ID AND d.ID=op.ENROLMENT_ID ORDER" +
|
||||
" BY op.OPERATION_ID LIMIT ?";
|
||||
stmt = conn.prepareStatement(sql);
|
||||
stmt.setString(1, opStatus.toString());
|
||||
stmt.setString(2, pushNotificationStatus.toString());
|
||||
@ -1122,8 +1122,11 @@ public class GenericOperationDAOImpl implements OperationDAO {
|
||||
}
|
||||
operationMapping = new OperationMapping();
|
||||
operationMapping.setOperationId(rs.getInt("OPERATION_ID"));
|
||||
operationMapping.setDeviceIdentifier(new DeviceIdentifier(String.valueOf(rs.getInt("ENROLMENT_ID")),
|
||||
rs.getString("NAME")));
|
||||
DeviceIdentifier deviceIdentifier = new DeviceIdentifier();
|
||||
deviceIdentifier.setId(rs.getString("DEVICE_IDENTIFICATION"));
|
||||
deviceIdentifier.setType(rs.getString("DEVICE_TYPE"));
|
||||
operationMapping.setDeviceIdentifier(deviceIdentifier);
|
||||
operationMapping.setEnrollmentId(rs.getInt("ENROLMENT_ID"));
|
||||
operationMapping.setTenantId(tenantID);
|
||||
operationMappings.add(operationMapping);
|
||||
}
|
||||
|
||||
@ -109,7 +109,7 @@ public class OperationMappingDAOImpl implements OperationMappingDAO {
|
||||
if (conn.getMetaData().supportsBatchUpdates()) {
|
||||
for (OperationMapping operationMapping : operationMappingList) {
|
||||
stmt.setString(1, operationMapping.getPushNotificationStatus().toString());
|
||||
stmt.setInt(2, Integer.parseInt(operationMapping.getDeviceIdentifier().getId()));
|
||||
stmt.setInt(2, operationMapping.getEnrollmentId());
|
||||
stmt.setInt(3, operationMapping.getOperationId());
|
||||
stmt.addBatch();
|
||||
}
|
||||
@ -117,7 +117,7 @@ public class OperationMappingDAOImpl implements OperationMappingDAO {
|
||||
} else {
|
||||
for (OperationMapping operationMapping : operationMappingList) {
|
||||
stmt.setString(1, operationMapping.getPushNotificationStatus().toString());
|
||||
stmt.setInt(2, Integer.parseInt(operationMapping.getDeviceIdentifier().getId()));
|
||||
stmt.setInt(2, operationMapping.getEnrollmentId());
|
||||
stmt.setInt(3, operationMapping.getOperationId());
|
||||
stmt.executeUpdate();
|
||||
}
|
||||
|
||||
@ -376,10 +376,10 @@ public class OracleOperationDAOImpl extends GenericOperationDAOImpl {
|
||||
Map<Integer, List<OperationMapping>> operationMappingsTenantMap = new HashMap<>();
|
||||
try {
|
||||
Connection conn = OperationManagementDAOFactory.getConnection();
|
||||
String sql = "SELECT op.ENROLMENT_ID, op.OPERATION_ID, dt.NAME ,d.TENANT_ID FROM DM_DEVICE d, " +
|
||||
"DM_ENROLMENT_OP_MAPPING op, DM_DEVICE_TYPE dt WHERE op.STATUS = ? AND op" +
|
||||
".PUSH_NOTIFICATION_STATUS = ? AND d.DEVICE_TYPE_ID = dt.ID AND d.ID=op.ENROLMENT_ID AND ROWNUM" +
|
||||
" <= ? ORDER BY op.OPERATION_ID";
|
||||
String sql = "SELECT op.ENROLMENT_ID, op.OPERATION_ID, d.DEVICE_IDENTIFICATION, dt.NAME as DEVICE_TYPE, d" +
|
||||
".TENANT_ID FROM DM_DEVICE d, DM_ENROLMENT_OP_MAPPING op, DM_DEVICE_TYPE dt WHERE op.STATUS = ? " +
|
||||
"AND op.PUSH_NOTIFICATION_STATUS = ? AND d.DEVICE_TYPE_ID = dt.ID AND d.ID=op.ENROLMENT_ID AND " +
|
||||
"ROWNUM <= ? ORDER BY op.OPERATION_ID";
|
||||
|
||||
stmt = conn.prepareStatement(sql);
|
||||
stmt.setString(1, opStatus.toString());
|
||||
@ -395,8 +395,11 @@ public class OracleOperationDAOImpl extends GenericOperationDAOImpl {
|
||||
}
|
||||
operationMapping = new OperationMapping();
|
||||
operationMapping.setOperationId(rs.getInt("OPERATION_ID"));
|
||||
operationMapping.setDeviceIdentifier(new DeviceIdentifier(String.valueOf(rs.getInt("ENROLMENT_ID")),
|
||||
rs.getString("NAME")));
|
||||
DeviceIdentifier deviceIdentifier = new DeviceIdentifier();
|
||||
deviceIdentifier.setId(rs.getString("DEVICE_IDENTIFICATION"));
|
||||
deviceIdentifier.setType(rs.getString("DEVICE_TYPE"));
|
||||
operationMapping.setDeviceIdentifier(deviceIdentifier);
|
||||
operationMapping.setEnrollmentId(rs.getInt("ENROLMENT_ID"));
|
||||
operationMapping.setTenantId(tenantID);
|
||||
operationMappings.add(operationMapping);
|
||||
}
|
||||
|
||||
@ -277,9 +277,9 @@ public class SQLServerOperationDAOImpl extends GenericOperationDAOImpl {
|
||||
Map<Integer, List<OperationMapping>> operationMappingsTenantMap = new HashMap<>();
|
||||
try {
|
||||
Connection conn = OperationManagementDAOFactory.getConnection();
|
||||
String sql = "SELECT op.ENROLMENT_ID, op.OPERATION_ID, dt.NAME ,d.TENANT_ID FROM DM_DEVICE d, " +
|
||||
"DM_ENROLMENT_OP_MAPPING op, DM_DEVICE_TYPE dt WHERE op.STATUS = ? AND op" +
|
||||
".PUSH_NOTIFICATION_STATUS = ? AND d.DEVICE_TYPE_ID = dt.ID " +
|
||||
String sql = "SELECT op.ENROLMENT_ID, op.OPERATION_ID, d.DEVICE_IDENTIFICATION, dt.NAME as DEVICE_TYPE, d" +
|
||||
".TENANT_ID FROM DM_DEVICE d, DM_ENROLMENT_OP_MAPPING op, DM_DEVICE_TYPE dt WHERE op.STATUS = ? " +
|
||||
"AND op.PUSH_NOTIFICATION_STATUS = ? AND d.DEVICE_TYPE_ID = dt.ID " +
|
||||
"AND d.ID=op.ENROLMENT_ID ORDER BY op.OPERATION_ID OFFSET ? ROWS FETCH NEXT ? ROWS ONLY";
|
||||
stmt = conn.prepareStatement(sql);
|
||||
stmt.setString(1, opStatus.toString());
|
||||
@ -295,8 +295,11 @@ public class SQLServerOperationDAOImpl extends GenericOperationDAOImpl {
|
||||
}
|
||||
operationMapping = new OperationMapping();
|
||||
operationMapping.setOperationId(rs.getInt("OPERATION_ID"));
|
||||
operationMapping.setDeviceIdentifier(new DeviceIdentifier(String.valueOf(rs.getInt("ENROLMENT_ID")),
|
||||
rs.getString("NAME")));
|
||||
DeviceIdentifier deviceIdentifier = new DeviceIdentifier();
|
||||
deviceIdentifier.setId(rs.getString("DEVICE_IDENTIFICATION"));
|
||||
deviceIdentifier.setType(rs.getString("DEVICE_TYPE"));
|
||||
operationMapping.setDeviceIdentifier(deviceIdentifier);
|
||||
operationMapping.setEnrollmentId(rs.getInt("ENROLMENT_ID"));
|
||||
operationMapping.setTenantId(tenantID);
|
||||
operationMappings.add(operationMapping);
|
||||
}
|
||||
|
||||
@ -77,7 +77,7 @@ public class PushNotificationSchedulerTask implements Runnable {
|
||||
try {
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Sending push notification for operationId :" + operationMapping.getOperationId() +
|
||||
"to deviceId : " + operationMapping.getDeviceIdentifier().getId());
|
||||
" to deviceId : " + operationMapping.getDeviceIdentifier().getId());
|
||||
}
|
||||
// Set tenant id and domain
|
||||
PrivilegedCarbonContext.startTenantFlow();
|
||||
|
||||
@ -41,7 +41,7 @@
|
||||
"id": "device_cloud",
|
||||
"url": "https://docs.wso2.com/display/DeviceCloud/WSO2+Device+Cloud+Documentation",
|
||||
"icon": "fw fw-mobile",
|
||||
"target": "_self"
|
||||
"target": "_blank"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -86,6 +86,14 @@ var operationModule = function () {
|
||||
var iconIdentifier = operations[op].operation;
|
||||
if (features && features[iconIdentifier]) {
|
||||
var icon = features[iconIdentifier].icon;
|
||||
var isCloud = devicemgtProps["isCloud"];
|
||||
//TODO: remove isCloud check once able to verify features from the device agent
|
||||
var isDisabled = features[iconIdentifier].isDisabled;
|
||||
if (isDisabled && isCloud) {
|
||||
operations[op]["isDisabled"] = isDisabled;
|
||||
} else {
|
||||
operations[op]["isDisabled"] = false;
|
||||
}
|
||||
if (icon) {
|
||||
operations[op]["iconFont"] = icon;
|
||||
} else if (iconPath) {
|
||||
|
||||
@ -266,3 +266,8 @@ header .username {
|
||||
.add-padding-top-3x {
|
||||
padding-top: 15px !important;
|
||||
}
|
||||
|
||||
.op-disabled, .op-disabled i, .op-disabled span {
|
||||
cursor: not-allowed;
|
||||
+ color: #d2d2d2;
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user