merge-requests/1/head
charithag 9 years ago
parent 09fbbad7d7
commit ae08246052

@ -224,10 +224,5 @@
<artifactId>org.wso2.carbon.user.core</artifactId>
<version>4.4.3</version>
</dependency>
<dependency>
<groupId>org.wso2.carbon</groupId>
<artifactId>org.wso2.carbon.user.core</artifactId>
<version>4.4.3</version>
</dependency>
</dependencies>
</project>

@ -58,16 +58,17 @@ import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;
import java.util.*;
import java.util.Calendar;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
@API(name = "doormanager", version = "1.0.0", context = "/doormanager")
@DeviceType(value = "doormanager")
public class DoorManagerControllerService {
private static final DoorManagerDAO DOOR_MANAGER_DAO = new DoorManagerDAO();
@Context //injected response proxy supporting multiple thread
private static Log log = LogFactory.getLog(DoorManagerControllerService.class);
private HttpServletResponse response;
@ -76,6 +77,8 @@ public class DoorManagerControllerService {
private PrivilegedCarbonContext ctx;
@Context //injected response proxy supporting multiple thread
private UserStoreManager getUserStoreManager() throws UserStoreException {
String tenantDomain = CarbonContext.getThreadLocalCarbonContext().getTenantDomain();
PrivilegedCarbonContext.startTenantFlow();
@ -144,36 +147,36 @@ public class DoorManagerControllerService {
@FormParam("policy") String policy,
@FormParam("cardNumber") String cardNumber,
@FormParam("userName") String userName,
@Context HttpServletResponse response){
@Context HttpServletResponse response) {
try {
if (userName != null && cardNumber != null && deviceId != null) {
try {
UserStoreManager userStoreManager = this.getUserStoreManager();
if (userStoreManager.isExistingUser(userName)) {
TokenClient accessTokenClient = new TokenClient(DoorManagerConstants.DEVICE_TYPE);
AccessTokenInfo accessTokenInfo = accessTokenClient.getAccessToken(deviceId, userName);
String accessToken = accessTokenInfo.getAccess_token();
if (accessToken == null) {
response.setStatus(Response.Status.UNAUTHORIZED.getStatusCode());
return;
}
Map<String, String> claims = new HashMap<>();
claims.put("http://wso2.org/claims/lock/accesstoken", accessToken);
claims.put("http://wso2.org/claims/lock/refreshtoken", accessTokenInfo.getRefresh_token());
claims.put("http://wso2.org/claims/lock/cardnumber", cardNumber);
userStoreManager.setUserClaimValues(userName, claims, null);
//TODO: Add content to dto
} else {
response.setStatus(Response.Status.NOT_FOUND.getStatusCode());
if (userName != null && cardNumber != null && deviceId != null) {
try {
UserStoreManager userStoreManager = this.getUserStoreManager();
if (userStoreManager.isExistingUser(userName)) {
TokenClient accessTokenClient = new TokenClient(DoorManagerConstants.DEVICE_TYPE);
AccessTokenInfo accessTokenInfo = accessTokenClient.getAccessToken(deviceId, userName);
String accessToken = accessTokenInfo.getAccess_token();
if (accessToken == null) {
response.setStatus(Response.Status.UNAUTHORIZED.getStatusCode());
return;
}
} catch (UserStoreException e) {
response.setStatus(Response.Status.INTERNAL_SERVER_ERROR.getStatusCode());
log.error(e);
Map<String, String> claims = new HashMap<>();
claims.put("http://wso2.org/claims/lock/accesstoken", accessToken);
claims.put("http://wso2.org/claims/lock/refreshtoken", accessTokenInfo.getRefresh_token());
claims.put("http://wso2.org/claims/lock/cardnumber", cardNumber);
userStoreManager.setUserClaimValues(userName, claims, null);
//TODO: Add content to dto
response.setStatus(Response.Status.OK.getStatusCode());
} else {
response.setStatus(Response.Status.NOT_FOUND.getStatusCode());
}
} catch (UserStoreException e) {
response.setStatus(Response.Status.INTERNAL_SERVER_ERROR.getStatusCode());
log.error(e);
}
else {
response.setStatus(Response.Status.BAD_REQUEST.getStatusCode());
}
} else {
response.setStatus(Response.Status.BAD_REQUEST.getStatusCode());
}
} catch (AccessTokenException e) {
response.setStatus(Response.Status.INTERNAL_SERVER_ERROR.getStatusCode());
@ -326,14 +329,14 @@ public class DoorManagerControllerService {
@Context HttpServletResponse response) {
try {
int lockerCurrentState;
if(state.toUpperCase().equals("LOCK")){
if (state.toUpperCase().equals("LOCK")) {
lockerCurrentState = 0;
}else{
} else {
lockerCurrentState = 1;
}
SensorDataManager.getInstance().setSensorRecord(deviceId, "door_locker_state",
String.valueOf(lockerCurrentState), Calendar.getInstance().getTimeInMillis());
doorManagerMQTTConnector.sendCommandViaMQTT(owner, deviceId,"DoorManager:", state.toUpperCase());
String.valueOf(lockerCurrentState), Calendar.getInstance().getTimeInMillis());
doorManagerMQTTConnector.sendCommandViaMQTT(owner, deviceId, "DoorManager:", state.toUpperCase());
response.setStatus(Response.Status.OK.getStatusCode());
} catch (DeviceManagementException e) {
log.error(e);

@ -57,7 +57,6 @@ public class DoorManagerDAOImpl {
stmt = conn.prepareStatement(selectDBQuery);
stmt.setString(1, deviceId);
resultSet = stmt.executeQuery();
if (resultSet.next()) {
automaticDoorLockerDevice = new Device();
automaticDoorLockerDevice.setName(resultSet.getString(

Loading…
Cancel
Save