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
17c6cf6498
@ -16,7 +16,6 @@
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
|
||||
package org.wso2.carbon.certificate.mgt.core.config;
|
||||
|
||||
import javax.xml.bind.annotation.XmlElement;
|
||||
|
||||
@ -16,7 +16,6 @@
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
|
||||
package org.wso2.carbon.certificate.mgt.core.config;
|
||||
|
||||
import org.wso2.carbon.certificate.mgt.core.config.datasource.DataSourceConfig;
|
||||
|
||||
@ -38,9 +38,3 @@ public class DataSourceConfig {
|
||||
this.jndiLookupDefinition = jndiLookupDefinition;
|
||||
}
|
||||
}
|
||||
// CREATE TABLE IF NOT EXISTS DM_DEVICE_CERTIFICATE (
|
||||
// ID INTEGER auto_increment NOT NULL,
|
||||
// SERIAL_NUMBER VARCHAR(500) DEFAULT NULL,
|
||||
// CERTIFICATE BLOB DEFAULT NULL,
|
||||
// PRIMARY KEY (ID)
|
||||
// );
|
||||
|
||||
@ -29,6 +29,7 @@ public interface CertificateDAO {
|
||||
/**
|
||||
* This can be used to store a certificate in the database, where it will be stored against the serial number
|
||||
* of the certificate.
|
||||
*
|
||||
* @param byteArrayInputStream Holds the certificate.
|
||||
* @param serialNumber Serial number of the certificate.
|
||||
* @throws CertificateManagementDAOException
|
||||
@ -38,6 +39,7 @@ public interface CertificateDAO {
|
||||
|
||||
/**
|
||||
* Usage is to obtain a certificate stored in the database by providing the serial number.
|
||||
*
|
||||
* @param serialNumber Serial number of the certificate.
|
||||
* @return representation of the certificate.
|
||||
* @throws CertificateManagementDAOException
|
||||
|
||||
@ -16,7 +16,6 @@
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
|
||||
package org.wso2.carbon.certificate.mgt.core.dao;
|
||||
|
||||
import org.apache.commons.logging.Log;
|
||||
|
||||
@ -39,7 +39,8 @@ public class CertificateManagementServiceImpl implements CertificateManagementSe
|
||||
private static KeyStoreReader keyStoreReader;
|
||||
private static CertificateGenerator certificateGenerator;
|
||||
|
||||
private CertificateManagementServiceImpl() {}
|
||||
private CertificateManagementServiceImpl() {
|
||||
}
|
||||
|
||||
public static CertificateManagementServiceImpl getInstance() {
|
||||
|
||||
|
||||
@ -28,7 +28,6 @@ import org.wso2.carbon.device.mgt.common.authorization.DeviceAccessAuthorization
|
||||
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.operation.mgt.OperationManager;
|
||||
import org.wso2.carbon.device.mgt.common.spi.DeviceManagementService;
|
||||
import org.wso2.carbon.device.mgt.core.DeviceManagementConstants;
|
||||
import org.wso2.carbon.device.mgt.core.dao.DeviceDAO;
|
||||
import org.wso2.carbon.device.mgt.core.dao.DeviceManagementDAOException;
|
||||
|
||||
@ -1282,6 +1282,11 @@ public class PolicyDAOImpl implements PolicyDAO {
|
||||
stmt.setInt(1, policyId);
|
||||
stmt.executeUpdate();
|
||||
|
||||
String deleteComplianceStatus ="DELETE FROM DM_POLICY_COMPLIANCE_STATUS WHERE POLICY_ID =?";
|
||||
stmt = conn.prepareStatement(deleteComplianceStatus);
|
||||
stmt.setInt(1, policyId);
|
||||
stmt.executeUpdate();
|
||||
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Policy (" + policyId + ") related configs deleted from database.");
|
||||
}
|
||||
|
||||
@ -41,6 +41,7 @@ import org.wso2.carbon.policy.mgt.core.util.PolicyManagementConstants;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
public class PolicyAdministratorPointImpl implements PolicyAdministratorPoint {
|
||||
|
||||
@ -123,36 +124,49 @@ public class PolicyAdministratorPointImpl implements PolicyAdministratorPoint {
|
||||
try {
|
||||
int tenantId = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId();
|
||||
TaskService taskService = PolicyManagementDataHolder.getInstance().getTaskService();
|
||||
taskService.registerTaskType(PolicyManagementConstants.DELEGATION_TASK_TYPE);
|
||||
|
||||
if (log.isDebugEnabled()) {
|
||||
log.debug("Policy delegations task is started for the tenant id " + tenantId);
|
||||
}
|
||||
|
||||
TaskManager taskManager = taskService.getTaskManager(PolicyManagementConstants.DELEGATION_TASK_TYPE);
|
||||
|
||||
TaskInfo.TriggerInfo triggerInfo = new TaskInfo.TriggerInfo();
|
||||
|
||||
triggerInfo.setRepeatCount(0);
|
||||
|
||||
Map<String, String> properties = new HashMap<>();
|
||||
properties.put(PolicyManagementConstants.TENANT_ID, String.valueOf(tenantId));
|
||||
|
||||
String taskName = PolicyManagementConstants.DELEGATION_TASK_NAME + "_" + String.valueOf(tenantId);
|
||||
|
||||
if (!taskManager.isTaskScheduled(taskName)) {
|
||||
|
||||
Set<String> registeredTaskTypes = taskService.getRegisteredTaskTypes();
|
||||
//Check whether the TaskType is already registered. If not we'll register it here.
|
||||
if (!registeredTaskTypes.contains(PolicyManagementConstants.DELEGATION_TASK_TYPE)) {
|
||||
taskService.registerTaskType(PolicyManagementConstants.DELEGATION_TASK_TYPE);
|
||||
TaskInfo registeredTaskInfo = null;
|
||||
// getTask method will throw a TaskException if the task is not registered. Hence we'll handle the
|
||||
// exception and register the task.
|
||||
try {
|
||||
registeredTaskInfo = taskManager.getTask(taskName);
|
||||
} catch (TaskException e) {
|
||||
// No need of any specific logic to handle this exception as it is thrown if the task is not registered.
|
||||
} finally {
|
||||
// If registeredTaskInfo is null that means there's no registered delegation-task.
|
||||
if (registeredTaskInfo == null) {
|
||||
TaskInfo taskInfo = new TaskInfo(taskName, PolicyManagementConstants.DELEGATION_TASK_CLAZZ,
|
||||
properties, triggerInfo);
|
||||
|
||||
taskManager.registerTask(taskInfo);
|
||||
taskManager.rescheduleTask(taskInfo.getName());
|
||||
taskManager.scheduleTask(taskInfo.getName());
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (!taskManager.isTaskScheduled(taskName)) {
|
||||
TaskInfo taskInfo = new TaskInfo(taskName, PolicyManagementConstants.DELEGATION_TASK_CLAZZ,
|
||||
properties, triggerInfo);
|
||||
taskManager.scheduleTask(taskInfo.getName());
|
||||
} else {
|
||||
throw new PolicyManagementException("There is a task already running for policy changes. Please try " +
|
||||
"to apply " +
|
||||
"changes after few minutes.");
|
||||
}
|
||||
|
||||
}
|
||||
} catch (TaskException e) {
|
||||
String msg = "Error occurred while creating the policy delegation task for tenant " +
|
||||
PrivilegedCarbonContext.
|
||||
|
||||
Loading…
Reference in New Issue
Block a user