Merge "fix oauth code"
[ccsdk/features.git] / sdnr / wt / netconfnode-state-service / model / src / main / java / org / onap / ccsdk / features / sdnr / wt / netconfnodestateservice / NetconfNodeStateService.java
1 /*
2  * ============LICENSE_START========================================================================
3  * ONAP : ccsdk feature sdnr wt
4  * =================================================================================================
5  * Copyright (C) 2019 highstreet technologies GmbH Intellectual Property. All rights reserved.
6  * =================================================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except
8  * in compliance with the License. You may obtain a copy of the License at
9  *
10  * http://www.apache.org/licenses/LICENSE-2.0
11  *
12  * Unless required by applicable law or agreed to in writing, software distributed under the License
13  * is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express
14  * or implied. See the License for the specific language governing permissions and limitations under
15  * the License.
16  * ============LICENSE_END==========================================================================
17  */
18
19 package org.onap.ccsdk.features.sdnr.wt.netconfnodestateservice;
20
21 import org.eclipse.jdt.annotation.NonNull;
22 import org.opendaylight.yangtools.concepts.ListenerRegistration;
23 import org.opendaylight.yangtools.concepts.Registration;
24
25 public interface NetconfNodeStateService extends Registration {
26
27     /**
28      * Register for indication that Master NetconNode is entering or leaving Connected state.
29      * 
30      * @param netconfNodeConnectListener
31      * @return managing object for listener
32      */
33     @NonNull
34     <L extends NetconfNodeConnectListener> ListenerRegistration<L> registerNetconfNodeConnectListener(
35             @NonNull L netconfNodeConnectListener);
36
37     /**
38      * Register for all NetconfNode specific state changes
39      * 
40      * @param netconfNodeStateListener
41      * @return managing object for listener
42      */
43     @NonNull
44     <L extends NetconfNodeStateListener> ListenerRegistration<L> registerNetconfNodeStateListener(
45             @NonNull L netconfNodeStateListener);
46
47     /**
48      * Register for Ves/DmaaP provided messages
49      * 
50      * @param netconfNodeStateListener
51      * @return managing object for listener
52      */
53     @NonNull
54     <L extends VesNotificationListener> ListenerRegistration<L> registerVesNotifications(
55             @NonNull L netconfNodeStateListener);
56
57 }