RDK Documentation (Open Sourced RDK Components)
x_rdk_profile.h
Go to the documentation of this file.
1 /*
2  * If not stated otherwise in this file or this component's Licenses.txt file the
3  * following copyright and licenses apply:
4  *
5  * Copyright 2022 RDK Management
6  *
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  * http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18 */
19 
20 /**
21  * @file X_rdk_profile.h
22  * @brief The header file provides components Xrdk SDCard information APIs.
23  */
24 
25 /**
26  * @defgroup DEVICE_X_RDK Profile Object (Device.X_RDK_<>)
27  * @par
28  * @ingroup DEVICE.X_rdk_profile
29  *
30  */
31 
32 /**
33 * @defgroup tr69hostif
34 * @{
35 * @defgroup hostif
36 * @{
37 **/
38 
39 #ifndef X_RDK_PROFILE_H_
40 #define X_RDK_PROFILE_H_
41 
42 
43 #include "hostIf_utils.h"
44 #include "hostIf_tr69ReqHandler.h"
45 #include "hostIf_updateHandler.h"
46 #include "XrdkCentralComBSStore.h"
47 
48 
49 #define X_RDK_PREFIX_STR "Device.X_RDK_"
50 #define X_RDK_WebPA_SERVER_URL_STPRING "Device.X_RDK_WebPA_Server.URL"
51 #define X_RDK_WebPA_TokenServer_URL_STRING "Device.X_RDK_WebPA_TokenServer.URL"
52 #define X_RDK_WebPA_DNSText_URL_STRING "Device.X_RDK_WebPA_DNSText.URL"
53 
54 
55 /**
56  * @brief This class provides the TR-069 components Bluetooth devices information.
57  * @ingroup DEVICE.X_RDK_PROFILE_CLASSES
58  */
60 {
61 private:
62  X_rdk_profile();
63  ~X_rdk_profile() {};
64 
65  static std::mutex m;
66  static X_rdk_profile* m_instance;
67  static XBSStore *m_bsStore;
68 
69  /* Discovered Device Methods */
70  int get_WebPA_Server_URL(HOSTIF_MsgData_t *);
71  int get_WebPA_TokenServer_URL(HOSTIF_MsgData_t *);
72  int get_WebPA_DNSText_URL(HOSTIF_MsgData_t *);
73  int get_WebConfig_URL(HOSTIF_MsgData_t *);
74  int get_WebConfig_SupplementaryServiceUrls_Telemetry(HOSTIF_MsgData_t *);
75  int getWebcfgData(HOSTIF_MsgData_t *);
76 
77  int setWebcfgForceSync(HOSTIF_MsgData_t *);
78  int set_WebConfig_URL(HOSTIF_MsgData_t *);
79  int set_WebPA_DNSText_URL(HOSTIF_MsgData_t *);
80  int set_WebConfig_SupplementaryServiceUrls_Telemetry(HOSTIF_MsgData_t *);
81 public:
82  static X_rdk_profile *getInstance();
83  static void closeInstance();
86 };
87 
88 #endif /* X_rdk_profile_H_ */
89 
90 
91 /** @} */
92 /** @} */
XBSStore
Definition: XrdkCentralComBSStore.h:33
_HostIf_MsgData_t
Definition: hostIf_tr69ReqHandler.h:170
X_rdk_profile::handleSetMsg
int handleSetMsg(HOSTIF_MsgData_t *)
This function set the bluetooth profile attributes.
Definition: x_rdk_profile.cpp:97
X_rdk_profile
This class provides the TR-069 components Bluetooth devices information.
Definition: x_rdk_profile.h:59
X_rdk_profile::handleGetMsg
int handleGetMsg(HOSTIF_MsgData_t *)
This function get the bluetooth attributes such as name, profile, count and others for paired and con...
Definition: x_rdk_profile.cpp:147
X_rdk_profile::X_rdk_profile
X_rdk_profile()
Class default Constructor.
Definition: x_rdk_profile.cpp:83