1 /******************************************************************************
4 * Company XS Embedded GmbH
5 *****************************************************************************/
6 /******************************************************************************
7 * This Source Code Form is subject to the terms of the
8 * Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed
9 * with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
10 ******************************************************************************/
12 * @file persistence_client_library_dbus_test.c
13 * @ingroup Persistence client library test
14 * @author Ingo Huerner
15 * @brief Test of persistence client library
19 #include "../include/persistence_client_library_key.h"
20 #include "../include/persistence_client_library_file.h"
21 #include "../include/persistence_client_library_error_def.h"
26 #include <dlt/dlt_common.h>
29 int myChangeCallback(pclNotification_s * notifyStruct)
31 printf(" ==> * - * myChangeCallback * - *\n");
33 printf("Notification received ==> lbid: %d | resource_id: %s | seat: %d | user: %d | status: %d \n", notifyStruct->ldbid,
34 notifyStruct->resource_id,
35 notifyStruct->seat_no,
36 notifyStruct->user_no,
37 notifyStruct->pclKeyNotify_Status );
39 printf(" <== * - * myChangeCallback * - *\n");
45 int main(int argc, char *argv[])
48 unsigned int shutdownReg = PCL_SHUTDOWN_TYPE_FAST | PCL_SHUTDOWN_TYPE_NORMAL;
50 printf("Dbus interface test application\n");
52 /// debug log and trace (DLT) setup
53 DLT_REGISTER_APP("noty","tests the persistence client library");
54 ret = pclInitLibrary("lt-persistence_client_library_test", shutdownReg);
55 printf("pclInitLibrary: %d\n", ret);
57 printf("Press a key to end application\n");
58 ret = pclKeyHandleOpen(0xFF, "posHandle/last_position", 0, 0);
60 printf("Register for change notification\n");
61 ret = pclKeyRegisterNotifyOnChange(0x84, "links/last_link2", 2/*user_no*/, 1/*seat_no*/, &myChangeCallback);
62 ret = pclKeyRegisterNotifyOnChange(0x84, "links/last_link3", 3/*user_no*/, 2/*seat_no*/, &myChangeCallback);
63 ret = pclKeyRegisterNotifyOnChange(0x84, "links/last_link4", 4/*user_no*/, 1/*seat_no*/, &myChangeCallback);
65 ret = pclKeyRegisterNotifyOnChange(0xFF, "69", 1/*user_no*/, 2/*seat_no*/, &myChangeCallback);
66 printf("Reg => 69: %d\n", ret);
67 ret = pclKeyRegisterNotifyOnChange(0xFF, "70", 1/*user_no*/, 2/*seat_no*/, &myChangeCallback);
68 printf("Reg => 70: %d\n", ret);
69 ret = pclKeyRegisterNotifyOnChange(0xFF, "key_70", 1/*user_no*/, 2/*seat_no*/, &myChangeCallback);
70 printf("Reg => key_70: %d\n", ret);
73 printf("Press enter to unregister to notifications\n");
76 ret = pclKeyUnRegisterNotifyOnChange(0x84, "links/last_link2", 2/*user_no*/, 1/*seat_no*/, &myChangeCallback);
77 ret = pclKeyUnRegisterNotifyOnChange(0x84, "links/last_link3", 3/*user_no*/, 2/*seat_no*/, &myChangeCallback);
78 ret = pclKeyUnRegisterNotifyOnChange(0x84, "links/last_link4", 4/*user_no*/, 1/*seat_no*/, &myChangeCallback);
80 printf("Press enter to register to notifications\n");
83 ret = pclKeyRegisterNotifyOnChange(0x84, "links/last_link2", 2/*user_no*/, 1/*seat_no*/, &myChangeCallback);
84 ret = pclKeyRegisterNotifyOnChange(0x84, "links/last_link3", 3/*user_no*/, 2/*seat_no*/, &myChangeCallback);
85 ret = pclKeyRegisterNotifyOnChange(0x84, "links/last_link4", 4/*user_no*/, 1/*seat_no*/, &myChangeCallback);
87 printf("Press enter to end\n");
94 // unregister debug log and trace