Merge branch 'master' of https://github.com/wso2/carbon-device-mgt into merge-latest

revert-70aa11f8
ayyoob 9 years ago
commit 83057acd9a

@ -18,6 +18,7 @@
package org.wso2.carbon.certificate.mgt.core.dao; package org.wso2.carbon.certificate.mgt.core.dao;
import org.wso2.carbon.certificate.mgt.core.dto.CertificateResponse;
import org.wso2.carbon.device.mgt.common.PaginationRequest; import org.wso2.carbon.device.mgt.common.PaginationRequest;
import org.wso2.carbon.device.mgt.common.PaginationResult; import org.wso2.carbon.device.mgt.common.PaginationResult;
@ -58,6 +59,13 @@ public interface CertificateDAO {
*/ */
PaginationResult getAllCertificates(PaginationRequest request) throws CertificateManagementDAOException; PaginationResult getAllCertificates(PaginationRequest request) throws CertificateManagementDAOException;
/**
* Get all the certificates.
* @return List of certificates
* @throws CertificateManagementDAOException
*/
public List<CertificateResponse> getAllCertificates() throws CertificateManagementDAOException;
/** /**
* Delete a certificate identified by a serial number() * Delete a certificate identified by a serial number()
* @param serialNumber serial number * @param serialNumber serial number

@ -157,6 +157,39 @@ public class GenericCertificateDAOImpl implements CertificateDAO {
return paginationResult; return paginationResult;
} }
@Override
public List<CertificateResponse> getAllCertificates() throws CertificateManagementDAOException {
PreparedStatement stmt = null;
ResultSet resultSet = null;
CertificateResponse certificateResponse;
List<CertificateResponse> certificates = new ArrayList<>();
int tenantId = PrivilegedCarbonContext.getThreadLocalCarbonContext().getTenantId();
try {
Connection conn = this.getConnection();
String sql = "SELECT CERTIFICATE, SERIAL_NUMBER, TENANT_ID FROM DM_DEVICE_CERTIFICATE WHERE TENANT_ID = ? " +
"ORDER BY ID DESC";
stmt = conn.prepareStatement(sql);
stmt.setInt(1, tenantId);
resultSet = stmt.executeQuery();
while (resultSet.next()) {
certificateResponse = new CertificateResponse();
byte [] certificateBytes = resultSet.getBytes("CERTIFICATE");
certificateResponse.setSerialNumber(resultSet.getString("SERIAL_NUMBER"));
certificateResponse.setTenantId(resultSet.getInt("TENANT_ID"));
CertificateGenerator.extractCertificateDetails(certificateBytes, certificateResponse);
certificates.add(certificateResponse);
}
} catch (SQLException e) {
String errorMsg = "SQL error occurred while retrieving the certificates.";
log.error(errorMsg, e);
throw new CertificateManagementDAOException(errorMsg, e);
} finally {
OperationManagementDAOUtil.cleanupResources(stmt, resultSet);
}
return certificates;
}
@Override @Override
public boolean removeCertificate(String serialNumber) throws CertificateManagementDAOException { public boolean removeCertificate(String serialNumber) throws CertificateManagementDAOException {
Connection conn; Connection conn;

@ -74,4 +74,6 @@ public interface CertificateManagementService {
public PaginationResult getAllCertificates(PaginationRequest request) throws CertificateManagementDAOException; public PaginationResult getAllCertificates(PaginationRequest request) throws CertificateManagementDAOException;
boolean removeCertificate(String serialNumber) throws CertificateManagementDAOException; boolean removeCertificate(String serialNumber) throws CertificateManagementDAOException;
public List<CertificateResponse> getCertificates() throws CertificateManagementDAOException;
} }

@ -177,4 +177,19 @@ public class CertificateManagementServiceImpl implements CertificateManagementSe
} }
} }
@Override
public List<CertificateResponse> getCertificates() throws CertificateManagementDAOException {
try {
CertificateManagementDAOFactory.openConnection();
CertificateDAO certificateDAO = CertificateManagementDAOFactory.getCertificateDAO();
return certificateDAO.getAllCertificates();
} catch (SQLException e) {
String errorMsg = "Error when opening connection";
log.error(errorMsg, e);
throw new CertificateManagementDAOException(errorMsg, e);
} finally {
CertificateManagementDAOFactory.closeConnection();
}
}
} }

@ -37,6 +37,8 @@ import org.wso2.carbon.device.mgt.core.operation.mgt.dao.OperationManagementDAOF
import org.wso2.carbon.device.mgt.core.operation.mgt.dao.OperationMappingDAO; import org.wso2.carbon.device.mgt.core.operation.mgt.dao.OperationMappingDAO;
import org.wso2.carbon.device.mgt.core.operation.mgt.dao.util.OperationDAOUtil; import org.wso2.carbon.device.mgt.core.operation.mgt.dao.util.OperationDAOUtil;
import org.wso2.carbon.device.mgt.core.operation.mgt.util.OperationCreateTimeComparator; import org.wso2.carbon.device.mgt.core.operation.mgt.util.OperationCreateTimeComparator;
import org.wso2.carbon.device.mgt.core.task.DeviceTaskManager;
import org.wso2.carbon.device.mgt.core.task.impl.DeviceTaskManagerImpl;
import java.sql.SQLException; import java.sql.SQLException;
import java.util.ArrayList; import java.util.ArrayList;
@ -679,6 +681,13 @@ public class OperationManagerImpl implements OperationManager {
} }
private boolean isAuthenticationSkippedOperation(Operation operation) { private boolean isAuthenticationSkippedOperation(Operation operation) {
//This is to check weather operations are coming from the task related to retrieving device information.
DeviceTaskManager taskManager = new DeviceTaskManagerImpl();
if (taskManager.isTaskOperation(operation.getCode())) {
return true;
}
boolean status; boolean status;
switch (operation.getCode()) { switch (operation.getCode()) {
case DeviceManagementConstants.AuthorizationSkippedOperationCodes.POLICY_OPERATION_CODE : case DeviceManagementConstants.AuthorizationSkippedOperationCodes.POLICY_OPERATION_CODE :

@ -68,4 +68,12 @@ public interface DeviceTaskManager {
*/ */
List<String> getValidOperationNames() throws DeviceMgtTaskException; List<String> getValidOperationNames() throws DeviceMgtTaskException;
/**
* This method will check wheather give operation is added by the task.
* @param opName - Operation name
* @return - true or false
* @throws DeviceMgtTaskException
*/
boolean isTaskOperation(String opName);
} }

@ -76,7 +76,7 @@ public class DeviceTaskManagerImpl implements DeviceTaskManager {
@Override @Override
public String getTaskImplementedClazz() throws DeviceMgtTaskException { public String getTaskImplementedClazz() throws DeviceMgtTaskException {
return DeviceConfigurationManager.getInstance().getDeviceManagementConfig(). return DeviceConfigurationManager.getInstance().getDeviceManagementConfig().
getDeviceManagementConfigRepository().getTaskConfiguration().getTaskClazz(); getDeviceManagementConfigRepository().getTaskConfiguration().getTaskClazz();
} }
@ -97,7 +97,7 @@ public class DeviceTaskManagerImpl implements DeviceTaskManager {
List<Device> devices = deviceManagementProviderService.getAllDevices(); List<Device> devices = deviceManagementProviderService.getAllDevices();
List<String> operations = this.getValidOperationNames(); List<String> operations = this.getValidOperationNames();
if(!devices.isEmpty()) { if (!devices.isEmpty()) {
for (String str : operations) { for (String str : operations) {
CommandOperation operation = new CommandOperation(); CommandOperation operation = new CommandOperation();
@ -107,12 +107,12 @@ public class DeviceTaskManagerImpl implements DeviceTaskManager {
deviceManagementProviderService.addOperation(operation, DeviceManagerUtil.convertDevices(devices)); deviceManagementProviderService.addOperation(operation, DeviceManagerUtil.convertDevices(devices));
} }
} else { } else {
if(log.isDebugEnabled()){ if (log.isDebugEnabled()) {
log.debug("No devices are available to perform the operations."); log.debug("No devices are available to perform the operations.");
} }
} }
} catch (DeviceManagementException e) { } catch (DeviceManagementException e) {
throw new DeviceMgtTaskException("Error occurred while retrieving the device list.", e); throw new DeviceMgtTaskException("Error occurred while retrieving the device list.", e);
} catch (OperationManagementException e) { } catch (OperationManagementException e) {
throw new DeviceMgtTaskException("Error occurred while adding the operations to devices", e); throw new DeviceMgtTaskException("Error occurred while adding the operations to devices", e);
} }
@ -142,10 +142,26 @@ public class DeviceTaskManagerImpl implements DeviceTaskManager {
} }
} }
if(log.isDebugEnabled()){ if (log.isDebugEnabled()) {
log.debug("Valid operation names are : " + Arrays.toString(opNames.toArray())); log.debug("Valid operation names are : " + Arrays.toString(opNames.toArray()));
} }
return opNames; return opNames;
} }
@Override
public boolean isTaskOperation(String opName) {
try {
List<TaskOperation> taskOperations = this.getOperationList();
for (TaskOperation taop : taskOperations) {
if (taop.getTaskName().equalsIgnoreCase(opName)) {
return true;
}
}
} catch (DeviceMgtTaskException e) {
// ignoring the error, no need to throw, If error occurs, return value will be false.
}
return false;
}
} }

@ -219,7 +219,7 @@ CREATE TABLE IF NOT EXISTS DM_DEVICE_TYPE_POLICY (
CREATE TABLE IF NOT EXISTS DM_PROFILE_FEATURES ( CREATE TABLE IF NOT EXISTS DM_PROFILE_FEATURES (
ID INT(11) NOT NULL AUTO_INCREMENT, ID INT(11) NOT NULL AUTO_INCREMENT,
PROFILE_ID INT(11) NOT NULL, PROFILE_ID INT(11) NOT NULL,
FEATURE_CODE VARCHAR(30) NOT NULL, FEATURE_CODE VARCHAR(100) NOT NULL,
DEVICE_TYPE_ID INT NOT NULL, DEVICE_TYPE_ID INT NOT NULL,
TENANT_ID INT(11) NOT NULL , TENANT_ID INT(11) NOT NULL ,
CONTENT BLOB NULL DEFAULT NULL, CONTENT BLOB NULL DEFAULT NULL,
@ -351,7 +351,7 @@ CREATE TABLE IF NOT EXISTS DM_POLICY_COMPLIANCE_FEATURES (
ID INT NOT NULL AUTO_INCREMENT, ID INT NOT NULL AUTO_INCREMENT,
COMPLIANCE_STATUS_ID INT NOT NULL, COMPLIANCE_STATUS_ID INT NOT NULL,
TENANT_ID INT NOT NULL, TENANT_ID INT NOT NULL,
FEATURE_CODE VARCHAR(15) NOT NULL, FEATURE_CODE VARCHAR(100) NOT NULL,
STATUS INT NULL, STATUS INT NULL,
PRIMARY KEY (ID), PRIMARY KEY (ID),
CONSTRAINT FK_COMPLIANCE_FEATURES_STATUS CONSTRAINT FK_COMPLIANCE_FEATURES_STATUS

@ -10,6 +10,7 @@ CREATE TABLE DM_DEVICE_CERTIFICATE (
ID INTEGER IDENTITY NOT NULL, ID INTEGER IDENTITY NOT NULL,
SERIAL_NUMBER VARCHAR(500) DEFAULT NULL, SERIAL_NUMBER VARCHAR(500) DEFAULT NULL,
CERTIFICATE VARBINARY(max) DEFAULT NULL, CERTIFICATE VARBINARY(max) DEFAULT NULL,
TENANT_ID INTEGER DEFAULT 0,
PRIMARY KEY (ID) PRIMARY KEY (ID)
); );
@ -198,7 +199,7 @@ CREATE TABLE DM_DEVICE_TYPE_POLICY (
CREATE TABLE DM_PROFILE_FEATURES ( CREATE TABLE DM_PROFILE_FEATURES (
ID INT NOT NULL IDENTITY, ID INT NOT NULL IDENTITY,
PROFILE_ID INT NOT NULL, PROFILE_ID INT NOT NULL,
FEATURE_CODE VARCHAR(30) NOT NULL, FEATURE_CODE VARCHAR(100) NOT NULL,
DEVICE_TYPE_ID INT NOT NULL, DEVICE_TYPE_ID INT NOT NULL,
TENANT_ID INT NOT NULL , TENANT_ID INT NOT NULL ,
CONTENT VARBINARY(max) NULL DEFAULT NULL, CONTENT VARBINARY(max) NULL DEFAULT NULL,
@ -330,7 +331,7 @@ CREATE TABLE DM_POLICY_COMPLIANCE_FEATURES (
ID INT NOT NULL IDENTITY, ID INT NOT NULL IDENTITY,
COMPLIANCE_STATUS_ID INT NOT NULL, COMPLIANCE_STATUS_ID INT NOT NULL,
TENANT_ID INT NOT NULL, TENANT_ID INT NOT NULL,
FEATURE_CODE VARCHAR(15) NOT NULL, FEATURE_CODE VARCHAR(100) NOT NULL,
STATUS INT NULL, STATUS INT NULL,
PRIMARY KEY (ID), PRIMARY KEY (ID),
CONSTRAINT FK_COMPLIANCE_FEATURES_STATUS CONSTRAINT FK_COMPLIANCE_FEATURES_STATUS

@ -10,6 +10,7 @@ CREATE TABLE IF NOT EXISTS DM_DEVICE_CERTIFICATE (
ID INTEGER auto_increment NOT NULL, ID INTEGER auto_increment NOT NULL,
SERIAL_NUMBER VARCHAR(500) DEFAULT NULL, SERIAL_NUMBER VARCHAR(500) DEFAULT NULL,
CERTIFICATE BLOB DEFAULT NULL, CERTIFICATE BLOB DEFAULT NULL,
TENANT_ID INTEGER DEFAULT 0,
PRIMARY KEY (ID) PRIMARY KEY (ID)
)ENGINE = InnoDB; )ENGINE = InnoDB;
@ -193,7 +194,7 @@ CREATE TABLE IF NOT EXISTS DM_DEVICE_TYPE_POLICY (
CREATE TABLE IF NOT EXISTS DM_PROFILE_FEATURES ( CREATE TABLE IF NOT EXISTS DM_PROFILE_FEATURES (
ID INT(11) NOT NULL AUTO_INCREMENT, ID INT(11) NOT NULL AUTO_INCREMENT,
PROFILE_ID INT(11) NOT NULL, PROFILE_ID INT(11) NOT NULL,
FEATURE_CODE VARCHAR(30) NOT NULL, FEATURE_CODE VARCHAR(100) NOT NULL,
DEVICE_TYPE_ID INT NOT NULL, DEVICE_TYPE_ID INT NOT NULL,
TENANT_ID INT(11) NOT NULL , TENANT_ID INT(11) NOT NULL ,
CONTENT BLOB NULL DEFAULT NULL, CONTENT BLOB NULL DEFAULT NULL,
@ -321,7 +322,7 @@ CREATE TABLE IF NOT EXISTS DM_POLICY_COMPLIANCE_FEATURES (
ID INT NOT NULL AUTO_INCREMENT, ID INT NOT NULL AUTO_INCREMENT,
COMPLIANCE_STATUS_ID INT NOT NULL, COMPLIANCE_STATUS_ID INT NOT NULL,
TENANT_ID INT NOT NULL, TENANT_ID INT NOT NULL,
FEATURE_CODE VARCHAR(15) NOT NULL, FEATURE_CODE VARCHAR(100) NOT NULL,
STATUS INT NULL, STATUS INT NULL,
PRIMARY KEY (ID), PRIMARY KEY (ID),
CONSTRAINT FK_COMPLIANCE_FEATURES_STATUS CONSTRAINT FK_COMPLIANCE_FEATURES_STATUS

@ -24,6 +24,7 @@ CREATE TABLE DM_DEVICE_CERTIFICATE (
ID NUMBER(10) NOT NULL, ID NUMBER(10) NOT NULL,
SERIAL_NUMBER VARCHAR2(500) DEFAULT NULL, SERIAL_NUMBER VARCHAR2(500) DEFAULT NULL,
CERTIFICATE BLOB DEFAULT NULL, CERTIFICATE BLOB DEFAULT NULL,
TENANT_ID NUMBER(10) DEFAULT 0,
PRIMARY KEY (ID) PRIMARY KEY (ID)
) )
/ /
@ -310,7 +311,7 @@ CREATE TABLE DM_DEVICE_TYPE_POLICY (
CREATE TABLE DM_PROFILE_FEATURES ( CREATE TABLE DM_PROFILE_FEATURES (
ID NUMBER(10) NOT NULL, ID NUMBER(10) NOT NULL,
PROFILE_ID NUMBER(10) NOT NULL, PROFILE_ID NUMBER(10) NOT NULL,
FEATURE_CODE VARCHAR2(30) NOT NULL, FEATURE_CODE VARCHAR2(100) NOT NULL,
DEVICE_TYPE_ID NUMBER(10) NOT NULL, DEVICE_TYPE_ID NUMBER(10) NOT NULL,
TENANT_ID NUMBER(10) NOT NULL , TENANT_ID NUMBER(10) NOT NULL ,
CONTENT BLOB DEFAULT NULL NULL, CONTENT BLOB DEFAULT NULL NULL,
@ -545,7 +546,7 @@ CREATE TABLE DM_POLICY_COMPLIANCE_FEATURES (
ID NUMBER(10) NOT NULL, ID NUMBER(10) NOT NULL,
COMPLIANCE_STATUS_ID NUMBER(10) NOT NULL, COMPLIANCE_STATUS_ID NUMBER(10) NOT NULL,
TENANT_ID NUMBER(10) NOT NULL, TENANT_ID NUMBER(10) NOT NULL,
FEATURE_CODE VARCHAR2(15) NOT NULL, FEATURE_CODE VARCHAR2(100) NOT NULL,
STATUS NUMBER(10) NULL, STATUS NUMBER(10) NULL,
CONSTRAINT PK_COMPLIANCE_FEATURES_STATUS PRIMARY KEY (ID), CONSTRAINT PK_COMPLIANCE_FEATURES_STATUS PRIMARY KEY (ID),
CONSTRAINT FK_COMPLIANCE_FEATURES_STATUS CONSTRAINT FK_COMPLIANCE_FEATURES_STATUS

@ -9,6 +9,7 @@ CREATE TABLE IF NOT EXISTS DM_DEVICE_CERTIFICATE (
ID BIGSERIAL NOT NULL PRIMARY KEY, ID BIGSERIAL NOT NULL PRIMARY KEY,
SERIAL_NUMBER VARCHAR(500) DEFAULT NULL, SERIAL_NUMBER VARCHAR(500) DEFAULT NULL,
CERTIFICATE BYTEA DEFAULT NULL CERTIFICATE BYTEA DEFAULT NULL
TENANT_ID INTEGER DEFAULT 0,
); );
CREATE TABLE IF NOT EXISTS DM_DEVICE ( CREATE TABLE IF NOT EXISTS DM_DEVICE (
@ -171,7 +172,7 @@ CREATE TABLE IF NOT EXISTS DM_DEVICE_TYPE_POLICY (
CREATE TABLE IF NOT EXISTS DM_PROFILE_FEATURES ( CREATE TABLE IF NOT EXISTS DM_PROFILE_FEATURES (
ID BIGSERIAL NOT NULL PRIMARY KEY, ID BIGSERIAL NOT NULL PRIMARY KEY,
PROFILE_ID INTEGER NOT NULL, PROFILE_ID INTEGER NOT NULL,
FEATURE_CODE VARCHAR(30) NOT NULL, FEATURE_CODE VARCHAR(100) NOT NULL,
DEVICE_TYPE_ID INT NOT NULL, DEVICE_TYPE_ID INT NOT NULL,
TENANT_ID INTEGER NOT NULL , TENANT_ID INTEGER NOT NULL ,
CONTENT BYTEA NULL DEFAULT NULL, CONTENT BYTEA NULL DEFAULT NULL,
@ -282,7 +283,7 @@ CREATE TABLE IF NOT EXISTS DM_POLICY_COMPLIANCE_FEATURES (
ID BIGSERIAL NOT NULL PRIMARY KEY, ID BIGSERIAL NOT NULL PRIMARY KEY,
COMPLIANCE_STATUS_ID INTEGER NOT NULL, COMPLIANCE_STATUS_ID INTEGER NOT NULL,
TENANT_ID INTEGER NOT NULL, TENANT_ID INTEGER NOT NULL,
FEATURE_CODE VARCHAR(15) NOT NULL, FEATURE_CODE VARCHAR(100) NOT NULL,
STATUS INTEGER NULL, STATUS INTEGER NULL,
CONSTRAINT FK_COMPLIANCE_FEATURES_STATUS CONSTRAINT FK_COMPLIANCE_FEATURES_STATUS
FOREIGN KEY (COMPLIANCE_STATUS_ID) FOREIGN KEY (COMPLIANCE_STATUS_ID)

Loading…
Cancel
Save