--- /dev/null
+package org.commscope.tr069adapter.mapper.ves.impl;\r
+\r
+import org.commscope.tr069adapter.acs.common.DeviceRPCRequest;\r
+import org.commscope.tr069adapter.acs.common.DeviceRPCResponse;\r
+import org.commscope.tr069adapter.acs.common.OperationResponse;\r
+import org.commscope.tr069adapter.mapper.MapperConfigProperties;\r
+import org.commscope.tr069adapter.mapper.model.ErrorCodeDetails;\r
+import org.commscope.tr069adapter.mapper.sync.SynchronizedRequestHandler;\r
+import org.commscope.tr069adapter.mapper.util.ErrorCodeUtil;\r
+import org.commscope.tr069adapter.mapper.util.MapperConstants;\r
+import org.commscope.tr069adapter.mapper.ves.VesRequestHandler;\r
+import org.slf4j.Logger;\r
+import org.slf4j.LoggerFactory;\r
+import org.springframework.beans.factory.annotation.Autowired;\r
+import org.springframework.stereotype.Component;\r
+\r
+@Component\r
+public class VesRequestHandlerImpl implements VesRequestHandler {\r
+\r
+ private static final Logger LOG = LoggerFactory.getLogger(VesRequestHandlerImpl.class);\r
+\r
+ @Autowired\r
+ SynchronizedRequestHandler syncHandler;\r
+\r
+ @Autowired\r
+ MapperConfigProperties config;\r
+\r
+ @Autowired\r
+ private ErrorCodeUtil errorCodeUtil;\r
+\r
+\r
+ @Override\r
+ public DeviceRPCResponse handleDeviceConnectivityRequest(DeviceRPCRequest deviceRPCRequest) {\r
+ DeviceRPCResponse deviceRPCResponse = syncHandler.performDeviceOperation(deviceRPCRequest);\r
+ if (null == deviceRPCResponse) {\r
+ return getTimeOutResponse(deviceRPCRequest);\r
+ }\r
+\r
+ return deviceRPCResponse;\r
+ }\r
+\r
+ private DeviceRPCResponse getTimeOutResponse(DeviceRPCRequest deviceRPCRequest) {\r
+ DeviceRPCResponse timeOutErrorResponse = new DeviceRPCResponse();\r
+\r
+ timeOutErrorResponse.setDeviceDetails(deviceRPCRequest.getDeviceDetails());\r
+\r
+ OperationResponse operationResponse = new OperationResponse();\r
+ operationResponse.setStatus(MapperConstants.DEVICE_REACHABILITY_OP_FAILURE_CODE);// device\r
+ // reachable...change\r
+ // value 1 to\r
+ // some\r
+ // constant or\r
+ // enum\r
+ operationResponse.setOperationCode(deviceRPCRequest.getOpDetails().getOpCode());\r
+\r
+ timeOutErrorResponse.setOperationResponse(operationResponse);\r
+ timeOutErrorResponse.setFaultKey(MapperConstants.DEVICE_TIMEOUT_STATUS_CODE);\r
+ ErrorCodeDetails errorCodeDetails =\r
+ errorCodeUtil.getErrorCodeMetaData(MapperConstants.DEVICE_TIMEOUT_STATUS_CODE);\r
+ if (null != errorCodeDetails) {\r
+ timeOutErrorResponse.setFaultString(errorCodeDetails.getErrorMessage());\r
+ } else {\r
+ timeOutErrorResponse.setFaultString(MapperConstants.DEFAULT_OP_TIMEOUT_MSG);\r
+ }\r
+ return timeOutErrorResponse;\r
+ }\r
+}\r