1 /*******************************************************************************
2 ################################################################################
3 # Copyright (c) [2020] [HCL Technologies Ltd.] #
5 # Licensed under the Apache License, Version 2.0 (the "License"); #
6 # you may not use this file except in compliance with the License. #
7 # You may obtain a copy of the License at #
9 # http://www.apache.org/licenses/LICENSE-2.0 #
11 # Unless required by applicable law or agreed to in writing, software #
12 # distributed under the License is distributed on an "AS IS" BASIS, #
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. #
14 # See the License for the specific language governing permissions and #
15 # limitations under the License. #
16 ################################################################################
17 *******************************************************************************/
19 /* This class is the netconf manager class. It creates instance of the
20 SessionHandler that provides connections/sessions related funtionality
24 #ifndef __NETCONF_MANAGER_HPP__
25 #define __NETCONF_MANAGER_HPP__
27 #include "SessionHandler.hpp"
28 #include "Singleton.hpp"
30 class NetconfManager : public Singleton<NetconfManager>
33 friend Singleton<NetconfManager>;
36 /*initialize variables*/
39 /*handler for netopeer server*/
40 bool startNetopeerServer(void);
41 static bool stopNetopeerServer(void);
42 static void sigintHandler(int signum);
44 /*getter setter for SessionHandler obj*/
45 bool setSessionHandler (SessionHandler sessMgr);
46 SessionHandler getSessionHandler(void);
54 SessionHandler *mSessHndl;
60 /**********************************************************************
62 **********************************************************************/