mirror of
https://repository.entgra.net/community/device-mgt-core.git
synced 2025-10-06 02:01:45 +00:00
Add payload type to profile operation table
This commit is contained in:
parent
0267c8cb1c
commit
85b1d4c7d1
@ -128,15 +128,19 @@ public class ProfileOperationDAOImpl extends OperationDAOImpl {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Operation getNextOperation(DeviceIdentifier deviceId) throws OperationManagementDAOException {
|
public Operation getNextOperation(DeviceIdentifier deviceId) throws OperationManagementDAOException {
|
||||||
|
|
||||||
PreparedStatement stmt = null;
|
PreparedStatement stmt = null;
|
||||||
ResultSet rs = null;
|
ResultSet rs = null;
|
||||||
ByteArrayInputStream bais;
|
ByteArrayInputStream bais;
|
||||||
ObjectInputStream ois;
|
ObjectInputStream ois;
|
||||||
|
int operationId = 0;
|
||||||
|
String operationType = "";
|
||||||
|
|
||||||
try {
|
try {
|
||||||
Connection connection = OperationManagementDAOFactory.getConnection();
|
Connection connection = OperationManagementDAOFactory.getConnection();
|
||||||
stmt = connection.prepareStatement(
|
stmt = connection.prepareStatement(
|
||||||
"SELECT o.ID AS OPERATION_ID, o.CREATED_TIMESTAMP AS CREATED_TIMESTAMP, o.RECEIVED_TIMESTAMP AS " +
|
"SELECT o.ID AS OPERATION_ID, o.CREATED_TIMESTAMP AS CREATED_TIMESTAMP, o.RECEIVED_TIMESTAMP AS " +
|
||||||
"RECEIVED_TIMESTAMP, po.PAYLOAD AS PAYLOAD FROM DM_OPERATION o " +
|
"RECEIVED_TIMESTAMP, po.PAYLOAD AS PAYLOAD,o.TYPE AS TYPE FROM DM_OPERATION o " +
|
||||||
"INNER JOIN DM_PROFILE_OPERATION po ON o.ID = po.OPERATION_ID AND o.ID IN (" +
|
"INNER JOIN DM_PROFILE_OPERATION po ON o.ID = po.OPERATION_ID AND o.ID IN (" +
|
||||||
"SELECT dom.OPERATION_ID FROM (SELECT d.ID FROM DM_DEVICE d INNER JOIN " +
|
"SELECT dom.OPERATION_ID FROM (SELECT d.ID FROM DM_DEVICE d INNER JOIN " +
|
||||||
"DM_DEVICE_TYPE dm ON d.DEVICE_TYPE_ID = dm.ID AND dm.NAME = ? AND " +
|
"DM_DEVICE_TYPE dm ON d.DEVICE_TYPE_ID = dm.ID AND dm.NAME = ? AND " +
|
||||||
@ -149,10 +153,15 @@ public class ProfileOperationDAOImpl extends OperationDAOImpl {
|
|||||||
byte[] payload = new byte[0];
|
byte[] payload = new byte[0];
|
||||||
if (rs.next()) {
|
if (rs.next()) {
|
||||||
payload = rs.getBytes("PAYLOAD");
|
payload = rs.getBytes("PAYLOAD");
|
||||||
|
operationId = rs.getInt("OPERATION_ID");
|
||||||
|
operationType = rs.getString("TYPE");
|
||||||
}
|
}
|
||||||
bais = new ByteArrayInputStream(payload);
|
bais = new ByteArrayInputStream(payload);
|
||||||
ois = new ObjectInputStream(bais);
|
ois = new ObjectInputStream(bais);
|
||||||
return (ProfileOperation) ois.readObject();
|
ProfileOperation profileOperation = (ProfileOperation) ois.readObject();
|
||||||
|
profileOperation.setId(operationId);
|
||||||
|
profileOperation.setType(Operation.Type.valueOf(operationType));
|
||||||
|
return profileOperation;
|
||||||
} catch (SQLException e) {
|
} catch (SQLException e) {
|
||||||
throw new OperationManagementDAOException("Error occurred while adding operation metadata", e);
|
throw new OperationManagementDAOException("Error occurred while adding operation metadata", e);
|
||||||
} catch (ClassNotFoundException e) {
|
} catch (ClassNotFoundException e) {
|
||||||
|
|||||||
@ -27,6 +27,7 @@ CREATE TABLE IF NOT EXISTS DM_OPERATION (
|
|||||||
CREATED_TIMESTAMP TIMESTAMP NOT NULL,
|
CREATED_TIMESTAMP TIMESTAMP NOT NULL,
|
||||||
RECEIVED_TIMESTAMP TIMESTAMP NULL,
|
RECEIVED_TIMESTAMP TIMESTAMP NULL,
|
||||||
STATUS VARCHAR(50) NULL,
|
STATUS VARCHAR(50) NULL,
|
||||||
|
PAYLOAD CLOB NULL,
|
||||||
PRIMARY KEY (ID)
|
PRIMARY KEY (ID)
|
||||||
);
|
);
|
||||||
|
|
||||||
@ -45,6 +46,15 @@ CREATE TABLE IF NOT EXISTS DM_COMMAND_OPERATION (
|
|||||||
DM_OPERATION (ID) ON DELETE NO ACTION ON UPDATE NO ACTION
|
DM_OPERATION (ID) ON DELETE NO ACTION ON UPDATE NO ACTION
|
||||||
);
|
);
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS DM_PROFILE_OPERATION (
|
||||||
|
OPERATION_ID INTEGER NOT NULL,
|
||||||
|
ENABLED INTEGER NOT NULL DEFAULT 0,
|
||||||
|
PAYLOAD BLOB DEFAULT NULL,
|
||||||
|
PRIMARY KEY (OPERATION_ID),
|
||||||
|
CONSTRAINT fk_dm_operation_command FOREIGN KEY (OPERATION_ID) REFERENCES
|
||||||
|
DM_OPERATION (ID) ON DELETE NO ACTION ON UPDATE NO ACTION
|
||||||
|
);
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS DM_DEVICE_OPERATION_MAPPING (
|
CREATE TABLE IF NOT EXISTS DM_DEVICE_OPERATION_MAPPING (
|
||||||
ID INTEGER AUTO_INCREMENT NOT NULL,
|
ID INTEGER AUTO_INCREMENT NOT NULL,
|
||||||
DEVICE_ID INTEGER NOT NULL,
|
DEVICE_ID INTEGER NOT NULL,
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user