2 * ============LICENSE_START========================================================================
3 * ONAP : tr-069-adapter
4 * =================================================================================================
5 * Copyright (C) 2020 CommScope Inc Intellectual Property.
6 * =================================================================================================
7 * This tr-069-adapter software file is distributed by CommScope Inc under the Apache License,
8 * Version 2.0 (the "License"); you may not use this file except in compliance with the License. You
9 * may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * This file is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,
14 * either express or implied. See the License for the specific language governing permissions and
15 * limitations under the License.
16 * ===============LICENSE_END=======================================================================
19 package org.commscope.tr069adapter.acs.common.requestprocessor.service;
21 import org.commscope.tr069adapter.acs.common.DeviceInform;
22 import org.commscope.tr069adapter.acs.common.DeviceRPCRequest;
23 import org.commscope.tr069adapter.acs.common.DeviceRPCResponse;
24 import org.commscope.tr069adapter.acs.common.dto.DeviceOperationRequestDetails;
25 import org.commscope.tr069adapter.acs.common.dto.TR069DeviceDetails;
26 import org.commscope.tr069adapter.acs.common.exception.DeviceOperationException;
27 import org.commscope.tr069adapter.acs.common.exception.SessionConcurrentAccessException;
28 import org.commscope.tr069adapter.acs.common.exception.SessionManagerException;
29 import org.commscope.tr069adapter.acs.common.response.DeviceInformResponse;
31 public interface TR069DeviceEventHandler {
34 * @param deviceNotification
36 * @throws SessionConcurrentAccessException
38 public DeviceInformResponse processDeviceInform(DeviceInform deviceNotification)
39 throws InterruptedException, SessionConcurrentAccessException;
42 * Return type can be null, such case Empty HTTP response to be sent to the device
44 * @param operationResult
47 public DeviceRPCRequest processDeviceRPCResponse(DeviceRPCResponse operationResult)
48 throws SessionConcurrentAccessException, InterruptedException;
51 * Return type can be null, such case Empty HTTP response to be sent to the device
55 public DeviceRPCRequest processEmptyDeviceRequest(TR069DeviceDetails deviceDetails)
56 throws SessionConcurrentAccessException, InterruptedException;
61 * @throws SessionManagerException
63 public DeviceOperationRequestDetails getOpRequestDetailsBySessionId(String sessionId)
64 throws SessionManagerException;
69 * @throws DeviceOperationException
71 public TR069DeviceDetails getDeviceDetails(String deviceId) throws DeviceOperationException;
73 public void processConnectionRequest(String errorMsg, String deviceId, boolean isSuccess);