-/*\r
- * ============LICENSE_START========================================================================\r
- * ONAP : tr-069-adapter\r
- * =================================================================================================\r
- * Copyright (C) 2020 CommScope Inc Intellectual Property.\r
- * =================================================================================================\r
- * This tr-069-adapter software file is distributed by CommScope Inc under the Apache License,\r
- * Version 2.0 (the "License"); you may not use this file except in compliance with the License. You\r
- * may obtain a copy of the License at\r
- *\r
- * http://www.apache.org/licenses/LICENSE-2.0\r
- *\r
- * This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,\r
- * either express or implied. See the License for the specific language governing permissions and\r
- * limitations under the License.\r
- * ===============LICENSE_END=======================================================================\r
- */\r
-\r
-package org.commscope.tr069adapter.acs.common.requestprocessor.service;\r
-\r
-import org.commscope.tr069adapter.acs.common.DeviceInform;\r
-import org.commscope.tr069adapter.acs.common.DeviceRPCRequest;\r
-import org.commscope.tr069adapter.acs.common.DeviceRPCResponse;\r
-import org.commscope.tr069adapter.acs.common.dto.DeviceOperationRequestDetails;\r
-import org.commscope.tr069adapter.acs.common.dto.TR069DeviceDetails;\r
-import org.commscope.tr069adapter.acs.common.exception.DeviceOperationException;\r
-import org.commscope.tr069adapter.acs.common.exception.SessionManagerException;\r
-import org.commscope.tr069adapter.acs.common.response.DeviceInformResponse;\r
-\r
-public interface TR069DeviceEventHandler {\r
-\r
- /**\r
- * @param deviceNotification\r
- * @return\r
- */\r
- public DeviceInformResponse processDeviceInform(DeviceInform deviceNotification) throws Exception;\r
-\r
- /**\r
- * Return type can be null, such case Empty HTTP response to be sent to the device\r
- * \r
- * @param operationResult\r
- * @return\r
- */\r
- public DeviceRPCRequest processDeviceRPCResponse(DeviceRPCResponse operationResult)\r
- throws Exception;\r
-\r
- /**\r
- * Return type can be null, such case Empty HTTP response to be sent to the device\r
- * \r
- * @return\r
- */\r
- public DeviceRPCRequest processEmptyDeviceRequest(TR069DeviceDetails deviceDetails)\r
- throws Exception;\r
-\r
- /**\r
- * @param sessionId\r
- * @return\r
- * @throws SessionManagerException\r
- */\r
- public DeviceOperationRequestDetails getOpRequestDetailsBySessionId(String sessionId)\r
- throws SessionManagerException;\r
-\r
- /**\r
- * @param deviceId\r
- * @return\r
- * @throws DeviceOperationException\r
- */\r
- public TR069DeviceDetails getDeviceDetails(String deviceId) throws DeviceOperationException;\r
-\r
-}\r
+/*
+ * ============LICENSE_START========================================================================
+ * ONAP : tr-069-adapter
+ * =================================================================================================
+ * Copyright (C) 2020 CommScope Inc Intellectual Property.
+ * =================================================================================================
+ * This tr-069-adapter software file is distributed by CommScope Inc 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
+ *
+ * This file 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.
+ * ===============LICENSE_END=======================================================================
+ */
+
+package org.commscope.tr069adapter.acs.common.requestprocessor.service;
+
+import org.commscope.tr069adapter.acs.common.DeviceInform;
+import org.commscope.tr069adapter.acs.common.DeviceRPCRequest;
+import org.commscope.tr069adapter.acs.common.DeviceRPCResponse;
+import org.commscope.tr069adapter.acs.common.dto.DeviceOperationRequestDetails;
+import org.commscope.tr069adapter.acs.common.dto.TR069DeviceDetails;
+import org.commscope.tr069adapter.acs.common.exception.DeviceOperationException;
+import org.commscope.tr069adapter.acs.common.exception.SessionConcurrentAccessException;
+import org.commscope.tr069adapter.acs.common.exception.SessionManagerException;
+import org.commscope.tr069adapter.acs.common.response.DeviceInformResponse;
+
+public interface TR069DeviceEventHandler {
+
+ /**
+ * @param deviceNotification
+ * @return
+ * @throws SessionConcurrentAccessException
+ */
+ public DeviceInformResponse processDeviceInform(DeviceInform deviceNotification)
+ throws InterruptedException, SessionConcurrentAccessException;
+
+ /**
+ * Return type can be null, such case Empty HTTP response to be sent to the device
+ *
+ * @param operationResult
+ * @return
+ */
+ public DeviceRPCRequest processDeviceRPCResponse(DeviceRPCResponse operationResult)
+ throws SessionConcurrentAccessException, InterruptedException;
+
+ /**
+ * Return type can be null, such case Empty HTTP response to be sent to the device
+ *
+ * @return
+ */
+ public DeviceRPCRequest processEmptyDeviceRequest(TR069DeviceDetails deviceDetails)
+ throws SessionConcurrentAccessException, InterruptedException;
+
+ /**
+ * @param sessionId
+ * @return
+ * @throws SessionManagerException
+ */
+ public DeviceOperationRequestDetails getOpRequestDetailsBySessionId(String sessionId)
+ throws SessionManagerException;
+
+ /**
+ * @param deviceId
+ * @return
+ * @throws DeviceOperationException
+ */
+ public TR069DeviceDetails getDeviceDetails(String deviceId) throws DeviceOperationException;
+
+ public void processConnectionRequest(String errorMsg, String deviceId, boolean isSuccess);
+
+}