mirror of
https://repository.entgra.net/community/device-mgt-plugins.git
synced 2025-09-16 23:42:15 +00:00
few changes added to permissions IoT device type plugins
This commit is contained in:
parent
14aac9f4f6
commit
2d57f252f0
@ -81,7 +81,6 @@ public class AndroidSenseManagerServiceImpl implements AndroidSenseManagerServic
|
|||||||
device.setEnrolmentInfo(enrolmentInfo);
|
device.setEnrolmentInfo(enrolmentInfo);
|
||||||
boolean added = APIUtil.getDeviceManagementService().enrollDevice(device);
|
boolean added = APIUtil.getDeviceManagementService().enrollDevice(device);
|
||||||
if (added) {
|
if (added) {
|
||||||
APIUtil.registerApiAccessRoles(APIUtil.getAuthenticatedUser());
|
|
||||||
AndroidConfiguration androidConfiguration = new AndroidConfiguration();
|
AndroidConfiguration androidConfiguration = new AndroidConfiguration();
|
||||||
androidConfiguration.setTenantDomain(APIUtil.getAuthenticatedUserTenantDomain());
|
androidConfiguration.setTenantDomain(APIUtil.getAuthenticatedUserTenantDomain());
|
||||||
String mqttEndpoint = MqttConfig.getInstance().getMqttQueueEndpoint();
|
String mqttEndpoint = MqttConfig.getInstance().getMqttQueueEndpoint();
|
||||||
|
|||||||
@ -175,45 +175,4 @@ public class APIUtil {
|
|||||||
}
|
}
|
||||||
return deviceAccessAuthorizationService;
|
return deviceAccessAuthorizationService;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void registerApiAccessRoles(String user) {
|
|
||||||
UserStoreManager userStoreManager = null;
|
|
||||||
try {
|
|
||||||
userStoreManager = getUserStoreManager();
|
|
||||||
String[] userList = new String[]{user};
|
|
||||||
if (userStoreManager != null) {
|
|
||||||
String rolesOfUser[] = userStoreManager.getRoleListOfUser(user);
|
|
||||||
if (!userStoreManager.isExistingRole(Constants.DEFAULT_ROLE_NAME)) {
|
|
||||||
userStoreManager.addRole(Constants.DEFAULT_ROLE_NAME, userList, Constants.DEFAULT_PERMISSION);
|
|
||||||
} else if (rolesOfUser != null && Arrays.asList(rolesOfUser).contains(Constants.DEFAULT_ROLE_NAME)) {
|
|
||||||
return;
|
|
||||||
} else {
|
|
||||||
userStoreManager.updateUserListOfRole(Constants.DEFAULT_ROLE_NAME, new String[0], userList);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} catch (UserStoreException e) {
|
|
||||||
log.error("Error while creating a role and adding a user for virtual_firealarm.", e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public static UserStoreManager getUserStoreManager() {
|
|
||||||
RealmService realmService;
|
|
||||||
UserStoreManager userStoreManager;
|
|
||||||
try {
|
|
||||||
PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
|
||||||
realmService = (RealmService) ctx.getOSGiService(RealmService.class, null);
|
|
||||||
if (realmService == null) {
|
|
||||||
String msg = "Realm service has not initialized.";
|
|
||||||
log.error(msg);
|
|
||||||
throw new IllegalStateException(msg);
|
|
||||||
}
|
|
||||||
int tenantId = ctx.getTenantId();
|
|
||||||
userStoreManager = realmService.getTenantUserRealm(tenantId).getUserStoreManager();
|
|
||||||
} catch (UserStoreException e) {
|
|
||||||
String msg = "Error occurred while retrieving current user store manager";
|
|
||||||
log.error(msg, e);
|
|
||||||
throw new IllegalStateException(msg);
|
|
||||||
}
|
|
||||||
return userStoreManager;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -24,10 +24,5 @@ import org.wso2.carbon.user.core.Permission;
|
|||||||
* This hold the constants related to the device type.
|
* This hold the constants related to the device type.
|
||||||
*/
|
*/
|
||||||
public class Constants {
|
public class Constants {
|
||||||
|
|
||||||
public static final String DEFAULT_PERMISSION_RESOURCE = "/permission/admin/device-mgt/android_sense/user";
|
|
||||||
public static final String DEFAULT_ROLE_NAME = "android_sense_user";
|
|
||||||
public static final Permission DEFAULT_PERMISSION[] = new Permission[]{new Permission(Constants.DEFAULT_PERMISSION_RESOURCE,
|
|
||||||
"ui.execute")};
|
|
||||||
public static final String LOCALHOST = "localhost";
|
public static final String LOCALHOST = "localhost";
|
||||||
}
|
}
|
||||||
|
|||||||
@ -30,56 +30,56 @@
|
|||||||
<!-- Device related APIs -->
|
<!-- Device related APIs -->
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Set words</name>
|
<name>Set words</name>
|
||||||
<path>/device-mgt/android_sense/user</path>
|
<path>/device-mgt/user/operations</path>
|
||||||
<url>/device/*/words</url>
|
<url>/device/*/words</url>
|
||||||
<method>POST</method>
|
<method>POST</method>
|
||||||
<scope>android_sense_user</scope>
|
<scope>android_sense_user</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>set word threshold information</name>
|
<name>set word threshold information</name>
|
||||||
<path>/device-mgt/android_sense/user</path>
|
<path>/device-mgt/user/operations</path>
|
||||||
<url>/device/*/words/threshold</url>
|
<url>/device/*/words/threshold</url>
|
||||||
<method>POST</method>
|
<method>POST</method>
|
||||||
<scope>android_sense_user</scope>
|
<scope>android_sense_user</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>delete words</name>
|
<name>delete words</name>
|
||||||
<path>/device-mgt/android_sense/user</path>
|
<path>/device-mgt/user/operations</path>
|
||||||
<url>/device/*/words</url>
|
<url>/device/*/words</url>
|
||||||
<method>DELETE</method>
|
<method>DELETE</method>
|
||||||
<scope>android_sense_user</scope>
|
<scope>android_sense_user</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>get device stats</name>
|
<name>get device stats</name>
|
||||||
<path>/device-mgt/android_sense/user</path>
|
<path>/device-mgt/user/stats</path>
|
||||||
<url>/stats/*/sensors/*</url>
|
<url>/stats/*/sensors/*</url>
|
||||||
<method>GET</method>
|
<method>GET</method>
|
||||||
<scope>android_sense_device</scope>
|
<scope>android_sense_device</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Get device</name>
|
<name>Get device</name>
|
||||||
<path>/device-mgt/android_sense/user</path>
|
<path>/device-mgt/user/devices/list</path>
|
||||||
<url>/enrollment/devices/*</url>
|
<url>/enrollment/devices/*</url>
|
||||||
<method>GET</method>
|
<method>GET</method>
|
||||||
<scope>android_sense_user</scope>
|
<scope>android_sense_user</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Add device</name>
|
<name>Add device</name>
|
||||||
<path>/device-mgt/user</path>
|
<path>/device-mgt/user/devices</path>
|
||||||
<url>/enrollment/devices/*</url>
|
<url>/enrollment/devices/*</url>
|
||||||
<method>POST</method>
|
<method>POST</method>
|
||||||
<scope>android_sense_user</scope>
|
<scope>android_sense_user</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Remove device</name>
|
<name>Remove device</name>
|
||||||
<path>/device-mgt/android_sense/user</path>
|
<path>/device-mgt/user/devices/remove</path>
|
||||||
<url>/enrollment/devices/*</url>
|
<url>/enrollment/devices/*</url>
|
||||||
<method>DELETE</method>
|
<method>DELETE</method>
|
||||||
<scope>android_sense_user</scope>
|
<scope>android_sense_user</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Update device</name>
|
<name>Update device</name>
|
||||||
<path>/device-mgt/android_sense/user</path>
|
<path>/device-mgt/user/devices/update</path>
|
||||||
<url>/enrollment/devices/*</url>
|
<url>/enrollment/devices/*</url>
|
||||||
<method>PUT</method>
|
<method>PUT</method>
|
||||||
<scope>android_sense_user</scope>
|
<scope>android_sense_user</scope>
|
||||||
|
|||||||
@ -246,12 +246,7 @@ public class ArduinoManagerServiceImpl implements ArduinoManagerService {
|
|||||||
device.setType(ArduinoConstants.DEVICE_TYPE);
|
device.setType(ArduinoConstants.DEVICE_TYPE);
|
||||||
enrolmentInfo.setOwner(APIUtil.getAuthenticatedUser());
|
enrolmentInfo.setOwner(APIUtil.getAuthenticatedUser());
|
||||||
device.setEnrolmentInfo(enrolmentInfo);
|
device.setEnrolmentInfo(enrolmentInfo);
|
||||||
boolean added = APIUtil.getDeviceManagementService().enrollDevice(device);
|
return APIUtil.getDeviceManagementService().enrollDevice(device);
|
||||||
if (added) {
|
|
||||||
APIUtil.registerApiAccessRoles(APIUtil.getAuthenticatedUser());
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
return false;
|
|
||||||
} catch (DeviceManagementException e) {
|
} catch (DeviceManagementException e) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -160,47 +160,6 @@ public class APIUtil {
|
|||||||
return threadLocalCarbonContext.getTenantDomain();
|
return threadLocalCarbonContext.getTenantDomain();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void registerApiAccessRoles(String user) {
|
|
||||||
UserStoreManager userStoreManager = null;
|
|
||||||
try {
|
|
||||||
userStoreManager = getUserStoreManager();
|
|
||||||
String[] userList = new String[]{user};
|
|
||||||
if (userStoreManager != null) {
|
|
||||||
String rolesOfUser[] = userStoreManager.getRoleListOfUser(user);
|
|
||||||
if (!userStoreManager.isExistingRole(Constants.DEFAULT_ROLE_NAME)) {
|
|
||||||
userStoreManager.addRole(Constants.DEFAULT_ROLE_NAME, userList, Constants.DEFAULT_PERMISSION);
|
|
||||||
} else if (rolesOfUser != null && Arrays.asList(rolesOfUser).contains(Constants.DEFAULT_ROLE_NAME)) {
|
|
||||||
return;
|
|
||||||
} else {
|
|
||||||
userStoreManager.updateUserListOfRole(Constants.DEFAULT_ROLE_NAME, new String[0], userList);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} catch (UserStoreException e) {
|
|
||||||
log.error("Error while creating a role and adding a user for virtual_firealarm.", e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public static UserStoreManager getUserStoreManager() {
|
|
||||||
RealmService realmService;
|
|
||||||
UserStoreManager userStoreManager;
|
|
||||||
try {
|
|
||||||
PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
|
||||||
realmService = (RealmService) ctx.getOSGiService(RealmService.class, null);
|
|
||||||
if (realmService == null) {
|
|
||||||
String msg = "Realm service has not initialized.";
|
|
||||||
log.error(msg);
|
|
||||||
throw new IllegalStateException(msg);
|
|
||||||
}
|
|
||||||
int tenantId = ctx.getTenantId();
|
|
||||||
userStoreManager = realmService.getTenantUserRealm(tenantId).getUserStoreManager();
|
|
||||||
} catch (UserStoreException e) {
|
|
||||||
String msg = "Error occurred while retrieving current user store manager";
|
|
||||||
log.error(msg, e);
|
|
||||||
throw new IllegalStateException(msg);
|
|
||||||
}
|
|
||||||
return userStoreManager;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static DeviceAccessAuthorizationService getDeviceAccessAuthorizationService() {
|
public static DeviceAccessAuthorizationService getDeviceAccessAuthorizationService() {
|
||||||
PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
||||||
DeviceAccessAuthorizationService deviceAccessAuthorizationService =
|
DeviceAccessAuthorizationService deviceAccessAuthorizationService =
|
||||||
|
|||||||
@ -1,32 +0,0 @@
|
|||||||
/*
|
|
||||||
* 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.iot.arduino.service.impl.util;
|
|
||||||
|
|
||||||
import org.wso2.carbon.user.core.Permission;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This hold the constants related to the device type.
|
|
||||||
*/
|
|
||||||
public class Constants {
|
|
||||||
|
|
||||||
public static final String DEFAULT_PERMISSION_RESOURCE = "/permission/admin/device-mgt/arduino/user";
|
|
||||||
public static final String DEFAULT_ROLE_NAME = "arduino_user";
|
|
||||||
public static final Permission DEFAULT_PERMISSION[] = new Permission[]{new Permission(Constants.DEFAULT_PERMISSION_RESOURCE,
|
|
||||||
"ui.execute")};
|
|
||||||
}
|
|
||||||
@ -31,49 +31,49 @@
|
|||||||
|
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>control bulb</name>
|
<name>control bulb</name>
|
||||||
<path>/device-mgt/arduino/user</path>
|
<path>device-mgt/user/operations</path>
|
||||||
<url>/device/*/bulb</url>
|
<url>/device/*/bulb</url>
|
||||||
<method>POST</method>
|
<method>POST</method>
|
||||||
<scope>arduino_user</scope>
|
<scope>arduino_user</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>get controls</name>
|
<name>get controls</name>
|
||||||
<path>/device-mgt/arduino/user</path>
|
<path>device-mgt/user/operations</path>
|
||||||
<url>/device/*/controls</url>
|
<url>/device/*/controls</url>
|
||||||
<method>POST</method>
|
<method>POST</method>
|
||||||
<scope>arduino_device</scope>
|
<scope>arduino_device</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>get temperature stats</name>
|
<name>get temperature stats</name>
|
||||||
<path>/device-mgt/arduino/user</path>
|
<path>device-mgt/user/stats</path>
|
||||||
<url>/device/stats/*</url>
|
<url>/device/stats/*</url>
|
||||||
<method>GET</method>
|
<method>GET</method>
|
||||||
<scope>arduino_device</scope>
|
<scope>arduino_device</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Get device</name>
|
<name>Get device</name>
|
||||||
<path>/device-mgt/arduino/user</path>
|
<path>/device-mgt/user/devices/list</path>
|
||||||
<url>/enrollment/devices/*</url>
|
<url>/enrollment/devices/*</url>
|
||||||
<method>GET</method>
|
<method>GET</method>
|
||||||
<scope>arduino_user</scope>
|
<scope>arduino_user</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Remove device</name>
|
<name>Remove device</name>
|
||||||
<path>/device-mgt/arduino/user</path>
|
<path>/device-mgt/user/devices/remove</path>
|
||||||
<url>/enrollment/devices/*</url>
|
<url>/enrollment/devices/*</url>
|
||||||
<method>DELETE</method>
|
<method>DELETE</method>
|
||||||
<scope>arduino_user</scope>
|
<scope>arduino_user</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Download device</name>
|
<name>Download device</name>
|
||||||
<path>/device-mgt/user</path>
|
<path>/device-mgt/user/devices</path>
|
||||||
<url>/enrollment/devices/download</url>
|
<url>/enrollment/devices/download</url>
|
||||||
<method>GET</method>
|
<method>GET</method>
|
||||||
<scope>arduino_user</scope>
|
<scope>arduino_user</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Update device</name>
|
<name>Update device</name>
|
||||||
<path>/device-mgt/arduino/user</path>
|
<path>/device-mgt/user/devices/update</path>
|
||||||
<url>/enrollment/devices/*</url>
|
<url>/enrollment/devices/*</url>
|
||||||
<method>PUT</method>
|
<method>PUT</method>
|
||||||
<scope>arduino_user</scope>
|
<scope>arduino_user</scope>
|
||||||
|
|||||||
@ -31,7 +31,7 @@ import org.wso2.carbon.device.mgt.common.configuration.mgt.TenantConfiguration;
|
|||||||
import org.wso2.carbon.device.mgt.common.license.mgt.License;
|
import org.wso2.carbon.device.mgt.common.license.mgt.License;
|
||||||
import org.wso2.carbon.device.mgt.common.license.mgt.LicenseManagementException;
|
import org.wso2.carbon.device.mgt.common.license.mgt.LicenseManagementException;
|
||||||
import org.wso2.carbon.device.mgt.iot.arduino.plugin.exception.ArduinoDeviceMgtPluginException;
|
import org.wso2.carbon.device.mgt.iot.arduino.plugin.exception.ArduinoDeviceMgtPluginException;
|
||||||
import org.wso2.carbon.device.mgt.iot.arduino.plugin.impl.dao.ArduinoDAO;
|
import org.wso2.carbon.device.mgt.iot.arduino.plugin.impl.dao.ArduinoDAOUtil;
|
||||||
import org.wso2.carbon.device.mgt.iot.arduino.plugin.impl.feature.ArduinoFeatureManager;
|
import org.wso2.carbon.device.mgt.iot.arduino.plugin.impl.feature.ArduinoFeatureManager;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -41,7 +41,7 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
public class ArduinoManager implements DeviceManager {
|
public class ArduinoManager implements DeviceManager {
|
||||||
|
|
||||||
private static final ArduinoDAO arduinoDAO = new ArduinoDAO();
|
private static final ArduinoDAOUtil arduinoDAO = new ArduinoDAOUtil();
|
||||||
private static final Log log = LogFactory.getLog(ArduinoManager.class);
|
private static final Log log = LogFactory.getLog(ArduinoManager.class);
|
||||||
private ArduinoFeatureManager arduinoFeatureManager = new ArduinoFeatureManager();
|
private ArduinoFeatureManager arduinoFeatureManager = new ArduinoFeatureManager();
|
||||||
|
|
||||||
@ -70,12 +70,12 @@ public class ArduinoManager implements DeviceManager {
|
|||||||
if (log.isDebugEnabled()) {
|
if (log.isDebugEnabled()) {
|
||||||
log.debug("Enrolling a new Arduino device : " + device.getDeviceIdentifier());
|
log.debug("Enrolling a new Arduino device : " + device.getDeviceIdentifier());
|
||||||
}
|
}
|
||||||
ArduinoDAO.beginTransaction();
|
ArduinoDAOUtil.beginTransaction();
|
||||||
status = arduinoDAO.getDeviceDAO().addDevice(device);
|
status = arduinoDAO.getDeviceDAO().addDevice(device);
|
||||||
ArduinoDAO.commitTransaction();
|
ArduinoDAOUtil.commitTransaction();
|
||||||
} catch (ArduinoDeviceMgtPluginException e) {
|
} catch (ArduinoDeviceMgtPluginException e) {
|
||||||
try {
|
try {
|
||||||
ArduinoDAO.rollbackTransaction();
|
ArduinoDAOUtil.rollbackTransaction();
|
||||||
} catch (ArduinoDeviceMgtPluginException iotDAOEx) {
|
} catch (ArduinoDeviceMgtPluginException iotDAOEx) {
|
||||||
String msg = "Error occurred while roll back the device enrol transaction :" + device.toString();
|
String msg = "Error occurred while roll back the device enrol transaction :" + device.toString();
|
||||||
log.warn(msg, iotDAOEx);
|
log.warn(msg, iotDAOEx);
|
||||||
@ -94,12 +94,12 @@ public class ArduinoManager implements DeviceManager {
|
|||||||
if (log.isDebugEnabled()) {
|
if (log.isDebugEnabled()) {
|
||||||
log.debug("Modifying the Arduino device enrollment data");
|
log.debug("Modifying the Arduino device enrollment data");
|
||||||
}
|
}
|
||||||
ArduinoDAO.beginTransaction();
|
ArduinoDAOUtil.beginTransaction();
|
||||||
status = arduinoDAO.getDeviceDAO().updateDevice(device);
|
status = arduinoDAO.getDeviceDAO().updateDevice(device);
|
||||||
ArduinoDAO.commitTransaction();
|
ArduinoDAOUtil.commitTransaction();
|
||||||
} catch (ArduinoDeviceMgtPluginException e) {
|
} catch (ArduinoDeviceMgtPluginException e) {
|
||||||
try {
|
try {
|
||||||
ArduinoDAO.rollbackTransaction();
|
ArduinoDAOUtil.rollbackTransaction();
|
||||||
} catch (ArduinoDeviceMgtPluginException iotDAOEx) {
|
} catch (ArduinoDeviceMgtPluginException iotDAOEx) {
|
||||||
String msg = "Error occurred while roll back the update device transaction :" + device.toString();
|
String msg = "Error occurred while roll back the update device transaction :" + device.toString();
|
||||||
log.warn(msg, iotDAOEx);
|
log.warn(msg, iotDAOEx);
|
||||||
@ -119,12 +119,12 @@ public class ArduinoManager implements DeviceManager {
|
|||||||
if (log.isDebugEnabled()) {
|
if (log.isDebugEnabled()) {
|
||||||
log.debug("Dis-enrolling Arduino device : " + deviceId);
|
log.debug("Dis-enrolling Arduino device : " + deviceId);
|
||||||
}
|
}
|
||||||
ArduinoDAO.beginTransaction();
|
ArduinoDAOUtil.beginTransaction();
|
||||||
status = arduinoDAO.getDeviceDAO().deleteDevice(deviceId.getId());
|
status = arduinoDAO.getDeviceDAO().deleteDevice(deviceId.getId());
|
||||||
ArduinoDAO.commitTransaction();
|
ArduinoDAOUtil.commitTransaction();
|
||||||
} catch (ArduinoDeviceMgtPluginException e) {
|
} catch (ArduinoDeviceMgtPluginException e) {
|
||||||
try {
|
try {
|
||||||
ArduinoDAO.rollbackTransaction();
|
ArduinoDAOUtil.rollbackTransaction();
|
||||||
} catch (ArduinoDeviceMgtPluginException iotDAOEx) {
|
} catch (ArduinoDeviceMgtPluginException iotDAOEx) {
|
||||||
String msg = "Error occurred while roll back the device dis enrol transaction :" + deviceId.toString();
|
String msg = "Error occurred while roll back the device dis enrol transaction :" + deviceId.toString();
|
||||||
log.warn(msg, iotDAOEx);
|
log.warn(msg, iotDAOEx);
|
||||||
@ -222,12 +222,12 @@ public class ArduinoManager implements DeviceManager {
|
|||||||
log.debug(
|
log.debug(
|
||||||
"updating the details of Arduino device : " + deviceIdentifier);
|
"updating the details of Arduino device : " + deviceIdentifier);
|
||||||
}
|
}
|
||||||
ArduinoDAO.beginTransaction();
|
ArduinoDAOUtil.beginTransaction();
|
||||||
status = arduinoDAO.getDeviceDAO().updateDevice(device);
|
status = arduinoDAO.getDeviceDAO().updateDevice(device);
|
||||||
ArduinoDAO.commitTransaction();
|
ArduinoDAOUtil.commitTransaction();
|
||||||
} catch (ArduinoDeviceMgtPluginException e) {
|
} catch (ArduinoDeviceMgtPluginException e) {
|
||||||
try {
|
try {
|
||||||
ArduinoDAO.rollbackTransaction();
|
ArduinoDAOUtil.rollbackTransaction();
|
||||||
} catch (ArduinoDeviceMgtPluginException iotDAOEx) {
|
} catch (ArduinoDeviceMgtPluginException iotDAOEx) {
|
||||||
String msg = "Error occurred while roll back the update device info transaction :" + device.toString();
|
String msg = "Error occurred while roll back the update device info transaction :" + device.toString();
|
||||||
log.warn(msg, iotDAOEx);
|
log.warn(msg, iotDAOEx);
|
||||||
|
|||||||
@ -22,7 +22,7 @@ import org.apache.commons.logging.Log;
|
|||||||
import org.apache.commons.logging.LogFactory;
|
import org.apache.commons.logging.LogFactory;
|
||||||
import org.wso2.carbon.device.mgt.iot.arduino.plugin.constants.ArduinoConstants;
|
import org.wso2.carbon.device.mgt.iot.arduino.plugin.constants.ArduinoConstants;
|
||||||
import org.wso2.carbon.device.mgt.iot.arduino.plugin.exception.ArduinoDeviceMgtPluginException;
|
import org.wso2.carbon.device.mgt.iot.arduino.plugin.exception.ArduinoDeviceMgtPluginException;
|
||||||
import org.wso2.carbon.device.mgt.iot.arduino.plugin.impl.dao.impl.ArduinoDeviceDAOImpl;
|
|
||||||
import javax.naming.Context;
|
import javax.naming.Context;
|
||||||
import javax.naming.InitialContext;
|
import javax.naming.InitialContext;
|
||||||
import javax.naming.NamingException;
|
import javax.naming.NamingException;
|
||||||
@ -30,13 +30,13 @@ import javax.sql.DataSource;
|
|||||||
import java.sql.Connection;
|
import java.sql.Connection;
|
||||||
import java.sql.SQLException;
|
import java.sql.SQLException;
|
||||||
|
|
||||||
public class ArduinoDAO {
|
public class ArduinoDAOUtil {
|
||||||
|
|
||||||
private static final Log log = LogFactory.getLog(ArduinoDAO.class);
|
private static final Log log = LogFactory.getLog(ArduinoDAOUtil.class);
|
||||||
static DataSource dataSource;
|
static DataSource dataSource;
|
||||||
private static ThreadLocal<Connection> currentConnection = new ThreadLocal<Connection>();
|
private static ThreadLocal<Connection> currentConnection = new ThreadLocal<Connection>();
|
||||||
|
|
||||||
public ArduinoDAO() {
|
public ArduinoDAOUtil() {
|
||||||
initArduinoDAO();
|
initArduinoDAO();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -49,8 +49,8 @@ public class ArduinoDAO {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public ArduinoDeviceDAOImpl getDeviceDAO() {
|
public ArduinoDeviceDAO getDeviceDAO() {
|
||||||
return new ArduinoDeviceDAOImpl();
|
return new ArduinoDeviceDAO();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void beginTransaction() throws ArduinoDeviceMgtPluginException {
|
public static void beginTransaction() throws ArduinoDeviceMgtPluginException {
|
||||||
@ -16,7 +16,7 @@
|
|||||||
* under the License.
|
* under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package org.wso2.carbon.device.mgt.iot.arduino.plugin.impl.dao.impl;
|
package org.wso2.carbon.device.mgt.iot.arduino.plugin.impl.dao;
|
||||||
|
|
||||||
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.Log;
|
||||||
import org.apache.commons.logging.LogFactory;
|
import org.apache.commons.logging.LogFactory;
|
||||||
@ -24,7 +24,7 @@ import org.wso2.carbon.device.mgt.common.Device;
|
|||||||
import org.wso2.carbon.device.mgt.iot.arduino.plugin.exception.ArduinoDeviceMgtPluginException;
|
import org.wso2.carbon.device.mgt.iot.arduino.plugin.exception.ArduinoDeviceMgtPluginException;
|
||||||
import org.wso2.carbon.device.mgt.iot.arduino.plugin.impl.util.ArduinoUtils;
|
import org.wso2.carbon.device.mgt.iot.arduino.plugin.impl.util.ArduinoUtils;
|
||||||
import org.wso2.carbon.device.mgt.iot.arduino.plugin.constants.ArduinoConstants;
|
import org.wso2.carbon.device.mgt.iot.arduino.plugin.constants.ArduinoConstants;
|
||||||
import org.wso2.carbon.device.mgt.iot.arduino.plugin.impl.dao.ArduinoDAO;
|
|
||||||
import java.sql.Connection;
|
import java.sql.Connection;
|
||||||
import java.sql.PreparedStatement;
|
import java.sql.PreparedStatement;
|
||||||
import java.sql.ResultSet;
|
import java.sql.ResultSet;
|
||||||
@ -35,10 +35,10 @@ import java.util.List;
|
|||||||
/**
|
/**
|
||||||
* Implements CRUD for arduino Devices.
|
* Implements CRUD for arduino Devices.
|
||||||
*/
|
*/
|
||||||
public class ArduinoDeviceDAOImpl {
|
public class ArduinoDeviceDAO {
|
||||||
|
|
||||||
|
|
||||||
private static final Log log = LogFactory.getLog(ArduinoDeviceDAOImpl.class);
|
private static final Log log = LogFactory.getLog(ArduinoDeviceDAO.class);
|
||||||
|
|
||||||
public Device getDevice(String deviceId) throws ArduinoDeviceMgtPluginException {
|
public Device getDevice(String deviceId) throws ArduinoDeviceMgtPluginException {
|
||||||
Connection conn = null;
|
Connection conn = null;
|
||||||
@ -46,7 +46,7 @@ public class ArduinoDeviceDAOImpl {
|
|||||||
Device device = null;
|
Device device = null;
|
||||||
ResultSet resultSet = null;
|
ResultSet resultSet = null;
|
||||||
try {
|
try {
|
||||||
conn = ArduinoDAO.getConnection();
|
conn = ArduinoDAOUtil.getConnection();
|
||||||
String selectDBQuery =
|
String selectDBQuery =
|
||||||
"SELECT ARDUINO_DEVICE_ID, DEVICE_NAME FROM ARDUINO_DEVICE WHERE ARDUINO_DEVICE_ID = ?";
|
"SELECT ARDUINO_DEVICE_ID, DEVICE_NAME FROM ARDUINO_DEVICE WHERE ARDUINO_DEVICE_ID = ?";
|
||||||
stmt = conn.prepareStatement(selectDBQuery);
|
stmt = conn.prepareStatement(selectDBQuery);
|
||||||
@ -67,7 +67,7 @@ public class ArduinoDeviceDAOImpl {
|
|||||||
throw new ArduinoDeviceMgtPluginException(msg, e);
|
throw new ArduinoDeviceMgtPluginException(msg, e);
|
||||||
} finally {
|
} finally {
|
||||||
ArduinoUtils.cleanupResources(stmt, resultSet);
|
ArduinoUtils.cleanupResources(stmt, resultSet);
|
||||||
ArduinoDAO.closeConnection();
|
ArduinoDAOUtil.closeConnection();
|
||||||
}
|
}
|
||||||
return device;
|
return device;
|
||||||
}
|
}
|
||||||
@ -77,7 +77,7 @@ public class ArduinoDeviceDAOImpl {
|
|||||||
Connection conn = null;
|
Connection conn = null;
|
||||||
PreparedStatement stmt = null;
|
PreparedStatement stmt = null;
|
||||||
try {
|
try {
|
||||||
conn = ArduinoDAO.getConnection();
|
conn = ArduinoDAOUtil.getConnection();
|
||||||
String createDBQuery =
|
String createDBQuery =
|
||||||
"INSERT INTO ARDUINO_DEVICE(ARDUINO_DEVICE_ID, DEVICE_NAME) VALUES (?, ?)";
|
"INSERT INTO ARDUINO_DEVICE(ARDUINO_DEVICE_ID, DEVICE_NAME) VALUES (?, ?)";
|
||||||
|
|
||||||
@ -108,7 +108,7 @@ public class ArduinoDeviceDAOImpl {
|
|||||||
Connection conn = null;
|
Connection conn = null;
|
||||||
PreparedStatement stmt = null;
|
PreparedStatement stmt = null;
|
||||||
try {
|
try {
|
||||||
conn = ArduinoDAO.getConnection();
|
conn = ArduinoDAOUtil.getConnection();
|
||||||
String updateDBQuery =
|
String updateDBQuery =
|
||||||
"UPDATE ARDUINO_DEVICE SET DEVICE_NAME = ? WHERE ARDUINO_DEVICE_ID = ?";
|
"UPDATE ARDUINO_DEVICE SET DEVICE_NAME = ? WHERE ARDUINO_DEVICE_ID = ?";
|
||||||
|
|
||||||
@ -139,7 +139,7 @@ public class ArduinoDeviceDAOImpl {
|
|||||||
Connection conn = null;
|
Connection conn = null;
|
||||||
PreparedStatement stmt = null;
|
PreparedStatement stmt = null;
|
||||||
try {
|
try {
|
||||||
conn = ArduinoDAO.getConnection();
|
conn = ArduinoDAOUtil.getConnection();
|
||||||
String deleteDBQuery =
|
String deleteDBQuery =
|
||||||
"DELETE FROM ARDUINO_DEVICE WHERE ARDUINO_DEVICE_ID = ?";
|
"DELETE FROM ARDUINO_DEVICE WHERE ARDUINO_DEVICE_ID = ?";
|
||||||
stmt = conn.prepareStatement(deleteDBQuery);
|
stmt = conn.prepareStatement(deleteDBQuery);
|
||||||
@ -170,7 +170,7 @@ public class ArduinoDeviceDAOImpl {
|
|||||||
Device device;
|
Device device;
|
||||||
List<Device> devices = new ArrayList<Device>();
|
List<Device> devices = new ArrayList<Device>();
|
||||||
try {
|
try {
|
||||||
conn = ArduinoDAO.getConnection();
|
conn = ArduinoDAOUtil.getConnection();
|
||||||
String selectDBQuery =
|
String selectDBQuery =
|
||||||
"SELECT ARDUINO_DEVICE_ID, DEVICE_NAME FROM ARDUINO_DEVICE";
|
"SELECT ARDUINO_DEVICE_ID, DEVICE_NAME FROM ARDUINO_DEVICE";
|
||||||
stmt = conn.prepareStatement(selectDBQuery);
|
stmt = conn.prepareStatement(selectDBQuery);
|
||||||
@ -190,7 +190,7 @@ public class ArduinoDeviceDAOImpl {
|
|||||||
throw new ArduinoDeviceMgtPluginException(msg, e);
|
throw new ArduinoDeviceMgtPluginException(msg, e);
|
||||||
} finally {
|
} finally {
|
||||||
ArduinoUtils.cleanupResources(stmt, resultSet);
|
ArduinoUtils.cleanupResources(stmt, resultSet);
|
||||||
ArduinoDAO.closeConnection();
|
ArduinoDAOUtil.closeConnection();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -59,7 +59,7 @@
|
|||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Get Devices</name>
|
<name>Get Devices</name>
|
||||||
<path>/device-mgt/user/devices/devices</path>
|
<path>/device-mgt/user/devices/list</path>
|
||||||
<url>/enrollment/devices</url>
|
<url>/enrollment/devices</url>
|
||||||
<method>GET</method>
|
<method>GET</method>
|
||||||
<scope>raspberrypi_user</scope>
|
<scope>raspberrypi_user</scope>
|
||||||
@ -73,7 +73,7 @@
|
|||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Get Temperature Data</name>
|
<name>Get Temperature Data</name>
|
||||||
<path>/device-mgt/user/operations</path>
|
<path>/device-mgt/user/stats</path>
|
||||||
<url>/device/stats/*</url>
|
<url>/device/stats/*</url>
|
||||||
<method>GET</method>
|
<method>GET</method>
|
||||||
<scope>raspberrypi_user</scope>
|
<scope>raspberrypi_user</scope>
|
||||||
|
|||||||
@ -30,7 +30,7 @@ import org.wso2.carbon.device.mgt.common.configuration.mgt.TenantConfiguration;
|
|||||||
import org.wso2.carbon.device.mgt.common.license.mgt.License;
|
import org.wso2.carbon.device.mgt.common.license.mgt.License;
|
||||||
import org.wso2.carbon.device.mgt.common.license.mgt.LicenseManagementException;
|
import org.wso2.carbon.device.mgt.common.license.mgt.LicenseManagementException;
|
||||||
import org.wso2.carbon.device.mgt.iot.raspberrypi.plugin.exception.RaspberrypiDeviceMgtPluginException;
|
import org.wso2.carbon.device.mgt.iot.raspberrypi.plugin.exception.RaspberrypiDeviceMgtPluginException;
|
||||||
import org.wso2.carbon.device.mgt.iot.raspberrypi.plugin.impl.dao.RaspberrypiDAO;
|
import org.wso2.carbon.device.mgt.iot.raspberrypi.plugin.impl.dao.RaspberrypiDAOUtil;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -38,7 +38,7 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
public class RaspberrypiManager implements DeviceManager {
|
public class RaspberrypiManager implements DeviceManager {
|
||||||
|
|
||||||
private static final RaspberrypiDAO raspberrypiDAO = new RaspberrypiDAO();
|
private static final RaspberrypiDAOUtil raspberrypiDAO = new RaspberrypiDAOUtil();
|
||||||
private static final Log log = LogFactory.getLog(RaspberrypiManager.class);
|
private static final Log log = LogFactory.getLog(RaspberrypiManager.class);
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -64,12 +64,12 @@ public class RaspberrypiManager implements DeviceManager {
|
|||||||
if (log.isDebugEnabled()) {
|
if (log.isDebugEnabled()) {
|
||||||
log.debug("Enrolling a new Raspberrypi device : " + device.getDeviceIdentifier());
|
log.debug("Enrolling a new Raspberrypi device : " + device.getDeviceIdentifier());
|
||||||
}
|
}
|
||||||
RaspberrypiDAO.beginTransaction();
|
RaspberrypiDAOUtil.beginTransaction();
|
||||||
status = raspberrypiDAO.getDeviceDAO().addDevice(device);
|
status = raspberrypiDAO.getDeviceDAO().addDevice(device);
|
||||||
RaspberrypiDAO.commitTransaction();
|
RaspberrypiDAOUtil.commitTransaction();
|
||||||
} catch (RaspberrypiDeviceMgtPluginException e) {
|
} catch (RaspberrypiDeviceMgtPluginException e) {
|
||||||
try {
|
try {
|
||||||
RaspberrypiDAO.rollbackTransaction();
|
RaspberrypiDAOUtil.rollbackTransaction();
|
||||||
} catch (RaspberrypiDeviceMgtPluginException iotDAOEx) {
|
} catch (RaspberrypiDeviceMgtPluginException iotDAOEx) {
|
||||||
String msg = "Error occurred while roll back the device enrol transaction :" + device.toString();
|
String msg = "Error occurred while roll back the device enrol transaction :" + device.toString();
|
||||||
log.warn(msg, iotDAOEx);
|
log.warn(msg, iotDAOEx);
|
||||||
@ -88,12 +88,12 @@ public class RaspberrypiManager implements DeviceManager {
|
|||||||
if (log.isDebugEnabled()) {
|
if (log.isDebugEnabled()) {
|
||||||
log.debug("Modifying the Raspberrypi device enrollment data");
|
log.debug("Modifying the Raspberrypi device enrollment data");
|
||||||
}
|
}
|
||||||
RaspberrypiDAO.beginTransaction();
|
RaspberrypiDAOUtil.beginTransaction();
|
||||||
status = raspberrypiDAO.getDeviceDAO().updateDevice(device);
|
status = raspberrypiDAO.getDeviceDAO().updateDevice(device);
|
||||||
RaspberrypiDAO.commitTransaction();
|
RaspberrypiDAOUtil.commitTransaction();
|
||||||
} catch (RaspberrypiDeviceMgtPluginException e) {
|
} catch (RaspberrypiDeviceMgtPluginException e) {
|
||||||
try {
|
try {
|
||||||
RaspberrypiDAO.rollbackTransaction();
|
RaspberrypiDAOUtil.rollbackTransaction();
|
||||||
} catch (RaspberrypiDeviceMgtPluginException iotDAOEx) {
|
} catch (RaspberrypiDeviceMgtPluginException iotDAOEx) {
|
||||||
String msg = "Error occurred while roll back the update device transaction :" + device.toString();
|
String msg = "Error occurred while roll back the update device transaction :" + device.toString();
|
||||||
log.warn(msg, iotDAOEx);
|
log.warn(msg, iotDAOEx);
|
||||||
@ -113,12 +113,12 @@ public class RaspberrypiManager implements DeviceManager {
|
|||||||
if (log.isDebugEnabled()) {
|
if (log.isDebugEnabled()) {
|
||||||
log.debug("Dis-enrolling Raspberrypi device : " + deviceId);
|
log.debug("Dis-enrolling Raspberrypi device : " + deviceId);
|
||||||
}
|
}
|
||||||
RaspberrypiDAO.beginTransaction();
|
RaspberrypiDAOUtil.beginTransaction();
|
||||||
status = raspberrypiDAO.getDeviceDAO().deleteDevice(deviceId.getId());
|
status = raspberrypiDAO.getDeviceDAO().deleteDevice(deviceId.getId());
|
||||||
RaspberrypiDAO.commitTransaction();
|
RaspberrypiDAOUtil.commitTransaction();
|
||||||
} catch (RaspberrypiDeviceMgtPluginException e) {
|
} catch (RaspberrypiDeviceMgtPluginException e) {
|
||||||
try {
|
try {
|
||||||
RaspberrypiDAO.rollbackTransaction();
|
RaspberrypiDAOUtil.rollbackTransaction();
|
||||||
} catch (RaspberrypiDeviceMgtPluginException iotDAOEx) {
|
} catch (RaspberrypiDeviceMgtPluginException iotDAOEx) {
|
||||||
String msg = "Error occurred while roll back the device dis enrol transaction :" + deviceId.toString();
|
String msg = "Error occurred while roll back the device dis enrol transaction :" + deviceId.toString();
|
||||||
log.warn(msg, iotDAOEx);
|
log.warn(msg, iotDAOEx);
|
||||||
@ -216,12 +216,12 @@ public class RaspberrypiManager implements DeviceManager {
|
|||||||
log.debug(
|
log.debug(
|
||||||
"updating the details of Raspberrypi device : " + deviceIdentifier);
|
"updating the details of Raspberrypi device : " + deviceIdentifier);
|
||||||
}
|
}
|
||||||
RaspberrypiDAO.beginTransaction();
|
RaspberrypiDAOUtil.beginTransaction();
|
||||||
status = raspberrypiDAO.getDeviceDAO().updateDevice(device);
|
status = raspberrypiDAO.getDeviceDAO().updateDevice(device);
|
||||||
RaspberrypiDAO.commitTransaction();
|
RaspberrypiDAOUtil.commitTransaction();
|
||||||
} catch (RaspberrypiDeviceMgtPluginException e) {
|
} catch (RaspberrypiDeviceMgtPluginException e) {
|
||||||
try {
|
try {
|
||||||
RaspberrypiDAO.rollbackTransaction();
|
RaspberrypiDAOUtil.rollbackTransaction();
|
||||||
} catch (RaspberrypiDeviceMgtPluginException iotDAOEx) {
|
} catch (RaspberrypiDeviceMgtPluginException iotDAOEx) {
|
||||||
String msg = "Error occurred while roll back the update device info transaction :" + device.toString();
|
String msg = "Error occurred while roll back the update device info transaction :" + device.toString();
|
||||||
log.warn(msg, iotDAOEx);
|
log.warn(msg, iotDAOEx);
|
||||||
|
|||||||
@ -22,7 +22,7 @@ import org.apache.commons.logging.Log;
|
|||||||
import org.apache.commons.logging.LogFactory;
|
import org.apache.commons.logging.LogFactory;
|
||||||
import org.wso2.carbon.device.mgt.iot.raspberrypi.plugin.exception.RaspberrypiDeviceMgtPluginException;
|
import org.wso2.carbon.device.mgt.iot.raspberrypi.plugin.exception.RaspberrypiDeviceMgtPluginException;
|
||||||
import org.wso2.carbon.device.mgt.iot.raspberrypi.plugin.constants.RaspberrypiConstants;
|
import org.wso2.carbon.device.mgt.iot.raspberrypi.plugin.constants.RaspberrypiConstants;
|
||||||
import org.wso2.carbon.device.mgt.iot.raspberrypi.plugin.impl.dao.impl.RaspberrypiDeviceDAOImpl;
|
|
||||||
import javax.naming.Context;
|
import javax.naming.Context;
|
||||||
import javax.naming.InitialContext;
|
import javax.naming.InitialContext;
|
||||||
import javax.naming.NamingException;
|
import javax.naming.NamingException;
|
||||||
@ -30,18 +30,18 @@ import javax.sql.DataSource;
|
|||||||
import java.sql.Connection;
|
import java.sql.Connection;
|
||||||
import java.sql.SQLException;
|
import java.sql.SQLException;
|
||||||
|
|
||||||
public class RaspberrypiDAO {
|
public class RaspberrypiDAOUtil {
|
||||||
|
|
||||||
private static final Log log = LogFactory.getLog(RaspberrypiDAO.class);
|
private static final Log log = LogFactory.getLog(RaspberrypiDAOUtil.class);
|
||||||
static DataSource dataSource;
|
static DataSource dataSource;
|
||||||
private static ThreadLocal<Connection> currentConnection = new ThreadLocal<Connection>();
|
private static ThreadLocal<Connection> currentConnection = new ThreadLocal<Connection>();
|
||||||
|
|
||||||
public RaspberrypiDAO() {
|
public RaspberrypiDAOUtil() {
|
||||||
initRaspberrypiDAO();
|
initRaspberrypiDAO();
|
||||||
}
|
}
|
||||||
|
|
||||||
public RaspberrypiDeviceDAOImpl getDeviceDAO() {
|
public RaspberrypiDeviceDAO getDeviceDAO() {
|
||||||
return new RaspberrypiDeviceDAOImpl();
|
return new RaspberrypiDeviceDAO();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void initRaspberrypiDAO() {
|
public static void initRaspberrypiDAO() {
|
||||||
@ -16,14 +16,13 @@
|
|||||||
* under the License.
|
* under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package org.wso2.carbon.device.mgt.iot.raspberrypi.plugin.impl.dao.impl;
|
package org.wso2.carbon.device.mgt.iot.raspberrypi.plugin.impl.dao;
|
||||||
|
|
||||||
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.Log;
|
||||||
import org.apache.commons.logging.LogFactory;
|
import org.apache.commons.logging.LogFactory;
|
||||||
import org.wso2.carbon.device.mgt.common.Device;
|
import org.wso2.carbon.device.mgt.common.Device;
|
||||||
import org.wso2.carbon.device.mgt.iot.raspberrypi.plugin.exception.RaspberrypiDeviceMgtPluginException;
|
import org.wso2.carbon.device.mgt.iot.raspberrypi.plugin.exception.RaspberrypiDeviceMgtPluginException;
|
||||||
import org.wso2.carbon.device.mgt.iot.raspberrypi.plugin.impl.util.RaspberrypiUtils;
|
import org.wso2.carbon.device.mgt.iot.raspberrypi.plugin.impl.util.RaspberrypiUtils;
|
||||||
import org.wso2.carbon.device.mgt.iot.raspberrypi.plugin.impl.dao.RaspberrypiDAO;
|
|
||||||
import org.wso2.carbon.device.mgt.iot.raspberrypi.plugin.constants.RaspberrypiConstants;
|
import org.wso2.carbon.device.mgt.iot.raspberrypi.plugin.constants.RaspberrypiConstants;
|
||||||
import java.sql.Connection;
|
import java.sql.Connection;
|
||||||
import java.sql.PreparedStatement;
|
import java.sql.PreparedStatement;
|
||||||
@ -35,9 +34,9 @@ import java.util.List;
|
|||||||
/**
|
/**
|
||||||
* Implements CRUD for Raspberrypi Devices.
|
* Implements CRUD for Raspberrypi Devices.
|
||||||
*/
|
*/
|
||||||
public class RaspberrypiDeviceDAOImpl {
|
public class RaspberrypiDeviceDAO {
|
||||||
|
|
||||||
private static final Log log = LogFactory.getLog(RaspberrypiDeviceDAOImpl.class);
|
private static final Log log = LogFactory.getLog(RaspberrypiDeviceDAO.class);
|
||||||
|
|
||||||
public Device getDevice(String iotDeviceId) throws RaspberrypiDeviceMgtPluginException {
|
public Device getDevice(String iotDeviceId) throws RaspberrypiDeviceMgtPluginException {
|
||||||
Connection conn;
|
Connection conn;
|
||||||
@ -45,7 +44,7 @@ public class RaspberrypiDeviceDAOImpl {
|
|||||||
Device device = null;
|
Device device = null;
|
||||||
ResultSet resultSet = null;
|
ResultSet resultSet = null;
|
||||||
try {
|
try {
|
||||||
conn = RaspberrypiDAO.getConnection();
|
conn = RaspberrypiDAOUtil.getConnection();
|
||||||
String selectDBQuery =
|
String selectDBQuery =
|
||||||
"SELECT RASPBERRYPI_DEVICE_ID, DEVICE_NAME FROM RASPBERRYPI_DEVICE WHERE RASPBERRYPI_DEVICE_ID = ?";
|
"SELECT RASPBERRYPI_DEVICE_ID, DEVICE_NAME FROM RASPBERRYPI_DEVICE WHERE RASPBERRYPI_DEVICE_ID = ?";
|
||||||
stmt = conn.prepareStatement(selectDBQuery);
|
stmt = conn.prepareStatement(selectDBQuery);
|
||||||
@ -66,7 +65,7 @@ public class RaspberrypiDeviceDAOImpl {
|
|||||||
throw new RaspberrypiDeviceMgtPluginException(msg, e);
|
throw new RaspberrypiDeviceMgtPluginException(msg, e);
|
||||||
} finally {
|
} finally {
|
||||||
RaspberrypiUtils.cleanupResources(stmt, resultSet);
|
RaspberrypiUtils.cleanupResources(stmt, resultSet);
|
||||||
RaspberrypiDAO.closeConnection();
|
RaspberrypiDAOUtil.closeConnection();
|
||||||
}
|
}
|
||||||
return device;
|
return device;
|
||||||
}
|
}
|
||||||
@ -76,7 +75,7 @@ public class RaspberrypiDeviceDAOImpl {
|
|||||||
Connection conn;
|
Connection conn;
|
||||||
PreparedStatement stmt = null;
|
PreparedStatement stmt = null;
|
||||||
try {
|
try {
|
||||||
conn = RaspberrypiDAO.getConnection();
|
conn = RaspberrypiDAOUtil.getConnection();
|
||||||
String createDBQuery =
|
String createDBQuery =
|
||||||
"INSERT INTO RASPBERRYPI_DEVICE(RASPBERRYPI_DEVICE_ID, DEVICE_NAME) VALUES (?, ?)";
|
"INSERT INTO RASPBERRYPI_DEVICE(RASPBERRYPI_DEVICE_ID, DEVICE_NAME) VALUES (?, ?)";
|
||||||
|
|
||||||
@ -107,7 +106,7 @@ public class RaspberrypiDeviceDAOImpl {
|
|||||||
Connection conn;
|
Connection conn;
|
||||||
PreparedStatement stmt = null;
|
PreparedStatement stmt = null;
|
||||||
try {
|
try {
|
||||||
conn = RaspberrypiDAO.getConnection();
|
conn = RaspberrypiDAOUtil.getConnection();
|
||||||
String updateDBQuery = "UPDATE RASPBERRYPI_DEVICE SET DEVICE_NAME = ? WHERE RASPBERRYPI_DEVICE_ID = ?";
|
String updateDBQuery = "UPDATE RASPBERRYPI_DEVICE SET DEVICE_NAME = ? WHERE RASPBERRYPI_DEVICE_ID = ?";
|
||||||
stmt = conn.prepareStatement(updateDBQuery);
|
stmt = conn.prepareStatement(updateDBQuery);
|
||||||
stmt.setString(1, device.getName());
|
stmt.setString(1, device.getName());
|
||||||
@ -136,7 +135,7 @@ public class RaspberrypiDeviceDAOImpl {
|
|||||||
Connection conn;
|
Connection conn;
|
||||||
PreparedStatement stmt = null;
|
PreparedStatement stmt = null;
|
||||||
try {
|
try {
|
||||||
conn = RaspberrypiDAO.getConnection();
|
conn = RaspberrypiDAOUtil.getConnection();
|
||||||
String deleteDBQuery = "DELETE FROM RASPBERRYPI_DEVICE WHERE RASPBERRYPI_DEVICE_ID = ?";
|
String deleteDBQuery = "DELETE FROM RASPBERRYPI_DEVICE WHERE RASPBERRYPI_DEVICE_ID = ?";
|
||||||
stmt = conn.prepareStatement(deleteDBQuery);
|
stmt = conn.prepareStatement(deleteDBQuery);
|
||||||
stmt.setString(1, iotDeviceId);
|
stmt.setString(1, iotDeviceId);
|
||||||
@ -165,7 +164,7 @@ public class RaspberrypiDeviceDAOImpl {
|
|||||||
Device device;
|
Device device;
|
||||||
List<Device> devices = new ArrayList<>();
|
List<Device> devices = new ArrayList<>();
|
||||||
try {
|
try {
|
||||||
conn = RaspberrypiDAO.getConnection();
|
conn = RaspberrypiDAOUtil.getConnection();
|
||||||
String selectDBQuery = "SELECT RASPBERRYPI_DEVICE_ID, DEVICE_NAME FROM RASPBERRYPI_DEVICE";
|
String selectDBQuery = "SELECT RASPBERRYPI_DEVICE_ID, DEVICE_NAME FROM RASPBERRYPI_DEVICE";
|
||||||
stmt = conn.prepareStatement(selectDBQuery);
|
stmt = conn.prepareStatement(selectDBQuery);
|
||||||
resultSet = stmt.executeQuery();
|
resultSet = stmt.executeQuery();
|
||||||
@ -185,7 +184,7 @@ public class RaspberrypiDeviceDAOImpl {
|
|||||||
throw new RaspberrypiDeviceMgtPluginException(msg, e);
|
throw new RaspberrypiDeviceMgtPluginException(msg, e);
|
||||||
} finally {
|
} finally {
|
||||||
RaspberrypiUtils.cleanupResources(stmt, resultSet);
|
RaspberrypiUtils.cleanupResources(stmt, resultSet);
|
||||||
RaspberrypiDAO.closeConnection();
|
RaspberrypiDAOUtil.closeConnection();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -160,47 +160,6 @@ public class APIUtil {
|
|||||||
return threadLocalCarbonContext.getTenantDomain();
|
return threadLocalCarbonContext.getTenantDomain();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static UserStoreManager getUserStoreManager() {
|
|
||||||
RealmService realmService;
|
|
||||||
UserStoreManager userStoreManager;
|
|
||||||
try {
|
|
||||||
PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
|
||||||
realmService = (RealmService) ctx.getOSGiService(RealmService.class, null);
|
|
||||||
if (realmService == null) {
|
|
||||||
String msg = "Realm service has not initialized.";
|
|
||||||
log.error(msg);
|
|
||||||
throw new IllegalStateException(msg);
|
|
||||||
}
|
|
||||||
int tenantId = ctx.getTenantId();
|
|
||||||
userStoreManager = realmService.getTenantUserRealm(tenantId).getUserStoreManager();
|
|
||||||
} catch (UserStoreException e) {
|
|
||||||
String msg = "Error occurred while retrieving current user store manager";
|
|
||||||
log.error(msg, e);
|
|
||||||
throw new IllegalStateException(msg);
|
|
||||||
}
|
|
||||||
return userStoreManager;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void registerApiAccessRoles(String user) {
|
|
||||||
UserStoreManager userStoreManager = null;
|
|
||||||
try {
|
|
||||||
userStoreManager = getUserStoreManager();
|
|
||||||
String[] userList = new String[]{user};
|
|
||||||
if (userStoreManager != null) {
|
|
||||||
String rolesOfUser[] = userStoreManager.getRoleListOfUser(user);
|
|
||||||
if (!userStoreManager.isExistingRole(Constants.DEFAULT_ROLE_NAME)) {
|
|
||||||
userStoreManager.addRole(Constants.DEFAULT_ROLE_NAME, userList, Constants.DEFAULT_PERMISSION);
|
|
||||||
} else if (rolesOfUser != null && Arrays.asList(rolesOfUser).contains(Constants.DEFAULT_ROLE_NAME)) {
|
|
||||||
return;
|
|
||||||
} else {
|
|
||||||
userStoreManager.updateUserListOfRole(Constants.DEFAULT_ROLE_NAME, new String[0], userList);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} catch (UserStoreException e) {
|
|
||||||
log.error("Error while creating a role and adding a user for virtual_firealarm.", e);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public static DeviceAccessAuthorizationService getDeviceAccessAuthorizationService() {
|
public static DeviceAccessAuthorizationService getDeviceAccessAuthorizationService() {
|
||||||
PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
PrivilegedCarbonContext ctx = PrivilegedCarbonContext.getThreadLocalCarbonContext();
|
||||||
DeviceAccessAuthorizationService deviceAccessAuthorizationService =
|
DeviceAccessAuthorizationService deviceAccessAuthorizationService =
|
||||||
|
|||||||
@ -1,32 +0,0 @@
|
|||||||
/*
|
|
||||||
* 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.iot.virtualfirealarm.service.impl.util;
|
|
||||||
|
|
||||||
import org.wso2.carbon.user.core.Permission;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* This hold the constants related to the device type.
|
|
||||||
*/
|
|
||||||
public class Constants {
|
|
||||||
|
|
||||||
public static final String DEFAULT_PERMISSION_RESOURCE = "/permission/admin/device-mgt/virtual_firealarm/user";
|
|
||||||
public static final String DEFAULT_ROLE_NAME = "virtual_firealarm_user";
|
|
||||||
public static final Permission DEFAULT_PERMISSION[] = new Permission[]{new Permission(Constants.DEFAULT_PERMISSION_RESOURCE,
|
|
||||||
"ui.execute")};
|
|
||||||
}
|
|
||||||
@ -30,14 +30,14 @@
|
|||||||
<!-- Device related APIs -->
|
<!-- Device related APIs -->
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Get device</name>
|
<name>Get device</name>
|
||||||
<path>/device-mgt/virtual_firealarm/user</path>
|
<path>/device-mgt/user/devices/list</path>
|
||||||
<url>/enrollment/devices/*</url>
|
<url>/enrollment/devices/*</url>
|
||||||
<method>GET</method>
|
<method>GET</method>
|
||||||
<scope>virtual_firealarm_user</scope>
|
<scope>virtual_firealarm_user</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Remove device</name>
|
<name>Remove device</name>
|
||||||
<path>/device-mgt/virtual_firealarm/user</path>
|
<path>/device-mgt/user/devices/remove</path>
|
||||||
<url>/enrollment/devices/*</url>
|
<url>/enrollment/devices/*</url>
|
||||||
<method>DELETE</method>
|
<method>DELETE</method>
|
||||||
<scope>virtual_firealarm_user</scope>
|
<scope>virtual_firealarm_user</scope>
|
||||||
@ -51,42 +51,42 @@
|
|||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Update device</name>
|
<name>Update device</name>
|
||||||
<path>/device-mgt/virtual_firealarm/user</path>
|
<path>/device-mgt/user/devices/update</path>
|
||||||
<url>/enrollment/devices/*</url>
|
<url>/enrollment/devices/*</url>
|
||||||
<method>POST</method>
|
<method>POST</method>
|
||||||
<scope>virtual_firealarm_user</scope>
|
<scope>virtual_firealarm_user</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Get Devices</name>
|
<name>Get Devices</name>
|
||||||
<path>/device-mgt/virtual_firealarm/user</path>
|
<path>/device-mgt/user/devices/list</path>
|
||||||
<url>/enrollment/devices</url>
|
<url>/enrollment/devices</url>
|
||||||
<method>GET</method>
|
<method>GET</method>
|
||||||
<scope>virtual_firealarm_user</scope>
|
<scope>virtual_firealarm_user</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Register Device</name>
|
<name>Register Device</name>
|
||||||
<path>/device-mgt/virtual_firealarm/user</path>
|
<path>/device-mgt/user/operations</path>
|
||||||
<url>/device/register/*/*/*</url>
|
<url>/device/register/*/*/*</url>
|
||||||
<method>POST</method>
|
<method>POST</method>
|
||||||
<scope>virtual_firealarm_device</scope>
|
<scope>virtual_firealarm_device</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Control Buzz</name>
|
<name>Control Buzz</name>
|
||||||
<path>/device-mgt/virtual_firealarm/user</path>
|
<path>/device-mgt/user/operations</path>
|
||||||
<url>/device/*/buzz</url>
|
<url>/device/*/buzz</url>
|
||||||
<method>POST</method>
|
<method>POST</method>
|
||||||
<scope>virtual_firealarm_user</scope>
|
<scope>virtual_firealarm_user</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Push Temperature</name>
|
<name>Push Temperature</name>
|
||||||
<path>/device-mgt/virtual_firealarm/user</path>
|
<path>/device-mgt/user/stats</path>
|
||||||
<url>/device/temperature</url>
|
<url>/device/temperature</url>
|
||||||
<method>POST</method>
|
<method>POST</method>
|
||||||
<scope>virtual_firealarm_device</scope>
|
<scope>virtual_firealarm_device</scope>
|
||||||
</Permission>
|
</Permission>
|
||||||
<Permission>
|
<Permission>
|
||||||
<name>Get Stats</name>
|
<name>Get Stats</name>
|
||||||
<path>/device-mgt/virtual_firealarm/user</path>
|
<path>/device-mgt/user/stats</path>
|
||||||
<url>/device/stats/*</url>
|
<url>/device/stats/*</url>
|
||||||
<method>GET</method>
|
<method>GET</method>
|
||||||
<scope>virtual_firealarm_device</scope>
|
<scope>virtual_firealarm_device</scope>
|
||||||
|
|||||||
@ -30,7 +30,7 @@ import org.wso2.carbon.device.mgt.common.configuration.mgt.TenantConfiguration;
|
|||||||
import org.wso2.carbon.device.mgt.common.license.mgt.License;
|
import org.wso2.carbon.device.mgt.common.license.mgt.License;
|
||||||
import org.wso2.carbon.device.mgt.common.license.mgt.LicenseManagementException;
|
import org.wso2.carbon.device.mgt.common.license.mgt.LicenseManagementException;
|
||||||
import org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.exception.VirtualFirealarmDeviceMgtPluginException;
|
import org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.exception.VirtualFirealarmDeviceMgtPluginException;
|
||||||
import org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.impl.dao.VirtualFireAlarmDAO;
|
import org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.impl.dao.VirtualFireAlarmDAOUtil;
|
||||||
import org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.impl.feature.VirtualFirealarmFeatureManager;
|
import org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.impl.feature.VirtualFirealarmFeatureManager;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -40,7 +40,7 @@ import java.util.List;
|
|||||||
*/
|
*/
|
||||||
public class VirtualFireAlarmManager implements DeviceManager {
|
public class VirtualFireAlarmManager implements DeviceManager {
|
||||||
|
|
||||||
private static final VirtualFireAlarmDAO virtualFireAlarmDAO = new VirtualFireAlarmDAO();
|
private static final VirtualFireAlarmDAOUtil virtualFireAlarmDAO = new VirtualFireAlarmDAOUtil();
|
||||||
private static final Log log = LogFactory.getLog(VirtualFireAlarmManager.class);
|
private static final Log log = LogFactory.getLog(VirtualFireAlarmManager.class);
|
||||||
private FeatureManager virtualFirealarmFeatureManager = new VirtualFirealarmFeatureManager();
|
private FeatureManager virtualFirealarmFeatureManager = new VirtualFirealarmFeatureManager();
|
||||||
|
|
||||||
@ -67,12 +67,12 @@ public class VirtualFireAlarmManager implements DeviceManager {
|
|||||||
if (log.isDebugEnabled()) {
|
if (log.isDebugEnabled()) {
|
||||||
log.debug("Enrolling a new Virtual Firealarm device : " + device.getDeviceIdentifier());
|
log.debug("Enrolling a new Virtual Firealarm device : " + device.getDeviceIdentifier());
|
||||||
}
|
}
|
||||||
VirtualFireAlarmDAO.beginTransaction();
|
VirtualFireAlarmDAOUtil.beginTransaction();
|
||||||
status = virtualFireAlarmDAO.getDeviceDAO().addDevice(device);
|
status = virtualFireAlarmDAO.getDeviceDAO().addDevice(device);
|
||||||
VirtualFireAlarmDAO.commitTransaction();
|
VirtualFireAlarmDAOUtil.commitTransaction();
|
||||||
} catch (VirtualFirealarmDeviceMgtPluginException e) {
|
} catch (VirtualFirealarmDeviceMgtPluginException e) {
|
||||||
try {
|
try {
|
||||||
VirtualFireAlarmDAO.rollbackTransaction();
|
VirtualFireAlarmDAOUtil.rollbackTransaction();
|
||||||
} catch (VirtualFirealarmDeviceMgtPluginException iotDAOEx) {
|
} catch (VirtualFirealarmDeviceMgtPluginException iotDAOEx) {
|
||||||
String msg = "Error occurred while roll back the device enrol transaction :" + device.toString();
|
String msg = "Error occurred while roll back the device enrol transaction :" + device.toString();
|
||||||
log.warn(msg, iotDAOEx);
|
log.warn(msg, iotDAOEx);
|
||||||
@ -91,12 +91,12 @@ public class VirtualFireAlarmManager implements DeviceManager {
|
|||||||
if (log.isDebugEnabled()) {
|
if (log.isDebugEnabled()) {
|
||||||
log.debug("Modifying the Virtual Firealarm device enrollment data");
|
log.debug("Modifying the Virtual Firealarm device enrollment data");
|
||||||
}
|
}
|
||||||
VirtualFireAlarmDAO.beginTransaction();
|
VirtualFireAlarmDAOUtil.beginTransaction();
|
||||||
status = virtualFireAlarmDAO.getDeviceDAO().updateDevice(device);
|
status = virtualFireAlarmDAO.getDeviceDAO().updateDevice(device);
|
||||||
VirtualFireAlarmDAO.commitTransaction();
|
VirtualFireAlarmDAOUtil.commitTransaction();
|
||||||
} catch (VirtualFirealarmDeviceMgtPluginException e) {
|
} catch (VirtualFirealarmDeviceMgtPluginException e) {
|
||||||
try {
|
try {
|
||||||
VirtualFireAlarmDAO.rollbackTransaction();
|
VirtualFireAlarmDAOUtil.rollbackTransaction();
|
||||||
} catch (VirtualFirealarmDeviceMgtPluginException iotDAOEx) {
|
} catch (VirtualFirealarmDeviceMgtPluginException iotDAOEx) {
|
||||||
String msg = "Error occurred while roll back the update device transaction :" + device.toString();
|
String msg = "Error occurred while roll back the update device transaction :" + device.toString();
|
||||||
log.warn(msg, iotDAOEx);
|
log.warn(msg, iotDAOEx);
|
||||||
@ -116,12 +116,12 @@ public class VirtualFireAlarmManager implements DeviceManager {
|
|||||||
if (log.isDebugEnabled()) {
|
if (log.isDebugEnabled()) {
|
||||||
log.debug("Dis-enrolling Virtual Firealarm device : " + deviceId);
|
log.debug("Dis-enrolling Virtual Firealarm device : " + deviceId);
|
||||||
}
|
}
|
||||||
VirtualFireAlarmDAO.beginTransaction();
|
VirtualFireAlarmDAOUtil.beginTransaction();
|
||||||
status = virtualFireAlarmDAO.getDeviceDAO().deleteDevice(deviceId.getId());
|
status = virtualFireAlarmDAO.getDeviceDAO().deleteDevice(deviceId.getId());
|
||||||
VirtualFireAlarmDAO.commitTransaction();
|
VirtualFireAlarmDAOUtil.commitTransaction();
|
||||||
} catch (VirtualFirealarmDeviceMgtPluginException e) {
|
} catch (VirtualFirealarmDeviceMgtPluginException e) {
|
||||||
try {
|
try {
|
||||||
VirtualFireAlarmDAO.rollbackTransaction();
|
VirtualFireAlarmDAOUtil.rollbackTransaction();
|
||||||
} catch (VirtualFirealarmDeviceMgtPluginException iotDAOEx) {
|
} catch (VirtualFirealarmDeviceMgtPluginException iotDAOEx) {
|
||||||
String msg = "Error occurred while roll back the device dis enrol transaction :" + deviceId.toString();
|
String msg = "Error occurred while roll back the device dis enrol transaction :" + deviceId.toString();
|
||||||
log.warn(msg, iotDAOEx);
|
log.warn(msg, iotDAOEx);
|
||||||
@ -219,12 +219,12 @@ public class VirtualFireAlarmManager implements DeviceManager {
|
|||||||
log.debug(
|
log.debug(
|
||||||
"updating the details of Virtual Firealarm device : " + deviceIdentifier);
|
"updating the details of Virtual Firealarm device : " + deviceIdentifier);
|
||||||
}
|
}
|
||||||
VirtualFireAlarmDAO.beginTransaction();
|
VirtualFireAlarmDAOUtil.beginTransaction();
|
||||||
status = virtualFireAlarmDAO.getDeviceDAO().updateDevice(device);
|
status = virtualFireAlarmDAO.getDeviceDAO().updateDevice(device);
|
||||||
VirtualFireAlarmDAO.commitTransaction();
|
VirtualFireAlarmDAOUtil.commitTransaction();
|
||||||
} catch (VirtualFirealarmDeviceMgtPluginException e) {
|
} catch (VirtualFirealarmDeviceMgtPluginException e) {
|
||||||
try {
|
try {
|
||||||
VirtualFireAlarmDAO.rollbackTransaction();
|
VirtualFireAlarmDAOUtil.rollbackTransaction();
|
||||||
} catch (VirtualFirealarmDeviceMgtPluginException iotDAOEx) {
|
} catch (VirtualFirealarmDeviceMgtPluginException iotDAOEx) {
|
||||||
String msg = "Error occurred while roll back the update device info transaction :" + device.toString();
|
String msg = "Error occurred while roll back the update device info transaction :" + device.toString();
|
||||||
log.warn(msg, iotDAOEx);
|
log.warn(msg, iotDAOEx);
|
||||||
|
|||||||
@ -22,7 +22,7 @@ import org.apache.commons.logging.Log;
|
|||||||
import org.apache.commons.logging.LogFactory;
|
import org.apache.commons.logging.LogFactory;
|
||||||
import org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.constants.VirtualFireAlarmConstants;
|
import org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.constants.VirtualFireAlarmConstants;
|
||||||
import org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.exception.VirtualFirealarmDeviceMgtPluginException;
|
import org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.exception.VirtualFirealarmDeviceMgtPluginException;
|
||||||
import org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.impl.dao.impl.VirtualFireAlarmDeviceDAOImpl;
|
|
||||||
import javax.naming.Context;
|
import javax.naming.Context;
|
||||||
import javax.naming.InitialContext;
|
import javax.naming.InitialContext;
|
||||||
import javax.naming.NamingException;
|
import javax.naming.NamingException;
|
||||||
@ -30,13 +30,13 @@ import javax.sql.DataSource;
|
|||||||
import java.sql.Connection;
|
import java.sql.Connection;
|
||||||
import java.sql.SQLException;
|
import java.sql.SQLException;
|
||||||
|
|
||||||
public class VirtualFireAlarmDAO {
|
public class VirtualFireAlarmDAOUtil {
|
||||||
|
|
||||||
private static final Log log = LogFactory.getLog(VirtualFireAlarmDAO.class);
|
private static final Log log = LogFactory.getLog(VirtualFireAlarmDAOUtil.class);
|
||||||
static DataSource dataSource;
|
static DataSource dataSource;
|
||||||
private static ThreadLocal<Connection> currentConnection = new ThreadLocal<Connection>();
|
private static ThreadLocal<Connection> currentConnection = new ThreadLocal<Connection>();
|
||||||
|
|
||||||
public VirtualFireAlarmDAO() {
|
public VirtualFireAlarmDAOUtil() {
|
||||||
initFireAlarmDAO();
|
initFireAlarmDAO();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -49,8 +49,8 @@ public class VirtualFireAlarmDAO {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public VirtualFireAlarmDeviceDAOImpl getDeviceDAO() {
|
public VirtualFireAlarmDeviceDAO getDeviceDAO() {
|
||||||
return new VirtualFireAlarmDeviceDAOImpl();
|
return new VirtualFireAlarmDeviceDAO();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void beginTransaction() throws VirtualFirealarmDeviceMgtPluginException {
|
public static void beginTransaction() throws VirtualFirealarmDeviceMgtPluginException {
|
||||||
@ -16,14 +16,13 @@
|
|||||||
* under the License.
|
* under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.impl.dao.impl;
|
package org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.impl.dao;
|
||||||
|
|
||||||
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.Log;
|
||||||
import org.apache.commons.logging.LogFactory;
|
import org.apache.commons.logging.LogFactory;
|
||||||
import org.wso2.carbon.device.mgt.common.Device;
|
import org.wso2.carbon.device.mgt.common.Device;
|
||||||
import org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.constants.VirtualFireAlarmConstants;
|
import org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.constants.VirtualFireAlarmConstants;
|
||||||
import org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.exception.VirtualFirealarmDeviceMgtPluginException;
|
import org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.exception.VirtualFirealarmDeviceMgtPluginException;
|
||||||
import org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.impl.dao.VirtualFireAlarmDAO;
|
|
||||||
import org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.impl.util.VirtualFireAlarmUtils;
|
import org.wso2.carbon.device.mgt.iot.virtualfirealarm.plugin.impl.util.VirtualFireAlarmUtils;
|
||||||
import java.sql.Connection;
|
import java.sql.Connection;
|
||||||
import java.sql.PreparedStatement;
|
import java.sql.PreparedStatement;
|
||||||
@ -35,9 +34,9 @@ import java.util.List;
|
|||||||
/**
|
/**
|
||||||
* Implements CRUD for virtual firealarm Devices.
|
* Implements CRUD for virtual firealarm Devices.
|
||||||
*/
|
*/
|
||||||
public class VirtualFireAlarmDeviceDAOImpl {
|
public class VirtualFireAlarmDeviceDAO {
|
||||||
|
|
||||||
private static final Log log = LogFactory.getLog(VirtualFireAlarmDeviceDAOImpl.class);
|
private static final Log log = LogFactory.getLog(VirtualFireAlarmDeviceDAO.class);
|
||||||
|
|
||||||
public Device getDevice(String deviceId) throws VirtualFirealarmDeviceMgtPluginException {
|
public Device getDevice(String deviceId) throws VirtualFirealarmDeviceMgtPluginException {
|
||||||
Connection conn = null;
|
Connection conn = null;
|
||||||
@ -45,7 +44,7 @@ public class VirtualFireAlarmDeviceDAOImpl {
|
|||||||
Device device = null;
|
Device device = null;
|
||||||
ResultSet resultSet = null;
|
ResultSet resultSet = null;
|
||||||
try {
|
try {
|
||||||
conn = VirtualFireAlarmDAO.getConnection();
|
conn = VirtualFireAlarmDAOUtil.getConnection();
|
||||||
String selectDBQuery =
|
String selectDBQuery =
|
||||||
"SELECT VIRTUAL_FIREALARM_DEVICE_ID, DEVICE_NAME" +
|
"SELECT VIRTUAL_FIREALARM_DEVICE_ID, DEVICE_NAME" +
|
||||||
" FROM VIRTUAL_FIREALARM_DEVICE WHERE VIRTUAL_FIREALARM_DEVICE_ID = ?";
|
" FROM VIRTUAL_FIREALARM_DEVICE WHERE VIRTUAL_FIREALARM_DEVICE_ID = ?";
|
||||||
@ -67,7 +66,7 @@ public class VirtualFireAlarmDeviceDAOImpl {
|
|||||||
throw new VirtualFirealarmDeviceMgtPluginException(msg, e);
|
throw new VirtualFirealarmDeviceMgtPluginException(msg, e);
|
||||||
} finally {
|
} finally {
|
||||||
VirtualFireAlarmUtils.cleanupResources(stmt, resultSet);
|
VirtualFireAlarmUtils.cleanupResources(stmt, resultSet);
|
||||||
VirtualFireAlarmDAO.closeConnection();
|
VirtualFireAlarmDAOUtil.closeConnection();
|
||||||
}
|
}
|
||||||
|
|
||||||
return device;
|
return device;
|
||||||
@ -78,7 +77,7 @@ public class VirtualFireAlarmDeviceDAOImpl {
|
|||||||
Connection conn = null;
|
Connection conn = null;
|
||||||
PreparedStatement stmt = null;
|
PreparedStatement stmt = null;
|
||||||
try {
|
try {
|
||||||
conn = VirtualFireAlarmDAO.getConnection();
|
conn = VirtualFireAlarmDAOUtil.getConnection();
|
||||||
String createDBQuery =
|
String createDBQuery =
|
||||||
"INSERT INTO VIRTUAL_FIREALARM_DEVICE(VIRTUAL_FIREALARM_DEVICE_ID, DEVICE_NAME) VALUES (?, ?)";
|
"INSERT INTO VIRTUAL_FIREALARM_DEVICE(VIRTUAL_FIREALARM_DEVICE_ID, DEVICE_NAME) VALUES (?, ?)";
|
||||||
|
|
||||||
@ -109,7 +108,7 @@ public class VirtualFireAlarmDeviceDAOImpl {
|
|||||||
Connection conn = null;
|
Connection conn = null;
|
||||||
PreparedStatement stmt = null;
|
PreparedStatement stmt = null;
|
||||||
try {
|
try {
|
||||||
conn = VirtualFireAlarmDAO.getConnection();
|
conn = VirtualFireAlarmDAOUtil.getConnection();
|
||||||
String updateDBQuery =
|
String updateDBQuery =
|
||||||
"UPDATE VIRTUAL_FIREALARM_DEVICE SET DEVICE_NAME = ? WHERE VIRTUAL_FIREALARM_DEVICE_ID = ?";
|
"UPDATE VIRTUAL_FIREALARM_DEVICE SET DEVICE_NAME = ? WHERE VIRTUAL_FIREALARM_DEVICE_ID = ?";
|
||||||
|
|
||||||
@ -140,7 +139,7 @@ public class VirtualFireAlarmDeviceDAOImpl {
|
|||||||
Connection conn = null;
|
Connection conn = null;
|
||||||
PreparedStatement stmt = null;
|
PreparedStatement stmt = null;
|
||||||
try {
|
try {
|
||||||
conn = VirtualFireAlarmDAO.getConnection();
|
conn = VirtualFireAlarmDAOUtil.getConnection();
|
||||||
String deleteDBQuery = "DELETE FROM VIRTUAL_FIREALARM_DEVICE WHERE VIRTUAL_FIREALARM_DEVICE_ID = ?";
|
String deleteDBQuery = "DELETE FROM VIRTUAL_FIREALARM_DEVICE WHERE VIRTUAL_FIREALARM_DEVICE_ID = ?";
|
||||||
stmt = conn.prepareStatement(deleteDBQuery);
|
stmt = conn.prepareStatement(deleteDBQuery);
|
||||||
stmt.setString(1, iotDeviceId);
|
stmt.setString(1, iotDeviceId);
|
||||||
@ -169,7 +168,7 @@ public class VirtualFireAlarmDeviceDAOImpl {
|
|||||||
Device device;
|
Device device;
|
||||||
List<Device> devices = new ArrayList<>();
|
List<Device> devices = new ArrayList<>();
|
||||||
try {
|
try {
|
||||||
conn = VirtualFireAlarmDAO.getConnection();
|
conn = VirtualFireAlarmDAOUtil.getConnection();
|
||||||
String selectDBQuery =
|
String selectDBQuery =
|
||||||
"SELECT VIRTUAL_FIREALARM_DEVICE_ID, DEVICE_NAME FROM VIRTUAL_FIREALARM_DEVICE";
|
"SELECT VIRTUAL_FIREALARM_DEVICE_ID, DEVICE_NAME FROM VIRTUAL_FIREALARM_DEVICE";
|
||||||
stmt = conn.prepareStatement(selectDBQuery);
|
stmt = conn.prepareStatement(selectDBQuery);
|
||||||
@ -190,7 +189,7 @@ public class VirtualFireAlarmDeviceDAOImpl {
|
|||||||
throw new VirtualFirealarmDeviceMgtPluginException(msg, e);
|
throw new VirtualFirealarmDeviceMgtPluginException(msg, e);
|
||||||
} finally {
|
} finally {
|
||||||
VirtualFireAlarmUtils.cleanupResources(stmt, resultSet);
|
VirtualFireAlarmUtils.cleanupResources(stmt, resultSet);
|
||||||
VirtualFireAlarmDAO.closeConnection();
|
VirtualFireAlarmDAOUtil.closeConnection();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue
Block a user