1 /* 2 * Copyright (C) 2021 Huawei Device Co., Ltd. 3 * Licensed under the Apache License, Version 2.0 (the "License"); 4 * you may not use this file except in compliance with the License. 5 * You may obtain a copy of the License at 6 * 7 * http://www.apache.org/licenses/LICENSE-2.0 8 * 9 * Unless required by applicable law or agreed to in writing, software 10 * distributed under the License is distributed on an "AS IS" BASIS, 11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 * See the License for the specific language governing permissions and 13 * limitations under the License. 14 */ 15 16 #ifndef OHOS_COMMON_EVENT_TEST_H 17 #define OHOS_COMMON_EVENT_TEST_H 18 19 #include "common_event_manager.h" 20 #include "common_event_support.h" 21 #include "sim_constant.h" 22 23 namespace OHOS { 24 namespace Telephony { 25 using CommonEventSupport = OHOS::EventFwk::CommonEventSupport; 26 const int32_t DEFAULT_PARAM = -1; 27 const std::string PARAM_SLOTID = "slotId"; 28 const std::string PARAM_STATE = "state"; 29 const std::string PARAM_REASON = "reason"; 30 const std::string PARAM_STK_SLOTID = "slotId"; 31 const std::string PARAM_STK_MSG_CMD = "msgCmd"; 32 const std::string PARAM_STK_CARD_STATUS = "cardStatus"; 33 const std::string PARAM_STK_REFRESH_RESULT = "refreshResult"; 34 const std::string PARAM_STK_ALPHA_STRING = "alphaString"; 35 36 enum CommentEventTestIntValue { 37 COMMON_EVENT_SIM_STATE_CHANGED, 38 COMMON_EVENT_SIM_CARD_DEFAULT_VOICE_SUBSCRIPTION_CHANGED, 39 COMMON_EVENT_SIM_CARD_DEFAULT_SMS_SUBSCRIPTION_CHANGED, 40 COMMON_EVENT_SIM_CARD_DEFAULT_DATA_SUBSCRIPTION_CHANGED, 41 COMMON_EVENT_SIM_CARD_DEFAULT_MAIN_SUBSCRIPTION_CHANGED, 42 COMMON_EVENT_STK_SESSION_END, 43 COMMON_EVENT_STK_COMMAND, 44 COMMON_EVENT_STK_ALPHA_IDENTIFIER, 45 COMMON_EVENT_STK_CARD_STATE_CHANGED, 46 COMMON_EVENT_TEST_UNKNOWN, 47 }; 48 49 class CommonEventTest : public EventFwk::CommonEventSubscriber { 50 public: CommonEventTest(const EventFwk::CommonEventSubscribeInfo & sp)51 explicit CommonEventTest(const EventFwk::CommonEventSubscribeInfo &sp) 52 : EventFwk::CommonEventSubscriber(sp) {} ~CommonEventTest()53 ~CommonEventTest() {} 54 GetCommentEventTestIntValue(std::string & event)55 int32_t GetCommentEventTestIntValue(std::string &event) const 56 { 57 auto iter = commentEventTestIntValues_.find(event); 58 if (iter == commentEventTestIntValues_.end()) { 59 return COMMON_EVENT_TEST_UNKNOWN; 60 } 61 return iter->second; 62 } 63 OnReceiveEvent(const EventFwk::CommonEventData & data)64 void OnReceiveEvent(const EventFwk::CommonEventData &data) 65 { 66 OHOS::EventFwk::Want want = data.GetWant(); 67 std::string action = want.GetAction(); 68 switch (GetCommentEventTestIntValue(action)) { 69 case COMMON_EVENT_SIM_STATE_CHANGED: 70 std::cout << "receive a CommonEvent action = " << action 71 << ", slotId = " << want.GetIntParam(PARAM_SLOTID, DEFAULT_PARAM) 72 << ", state = " << want.GetIntParam(PARAM_STATE, DEFAULT_PARAM) 73 << ", reason = " << want.GetStringParam(PARAM_REASON) << ", code = " << data.GetCode() 74 << ", event = " << data.GetData() << std::endl; 75 break; 76 case COMMON_EVENT_SIM_CARD_DEFAULT_VOICE_SUBSCRIPTION_CHANGED: 77 case COMMON_EVENT_SIM_CARD_DEFAULT_SMS_SUBSCRIPTION_CHANGED: 78 case COMMON_EVENT_SIM_CARD_DEFAULT_DATA_SUBSCRIPTION_CHANGED: 79 case COMMON_EVENT_SIM_CARD_DEFAULT_MAIN_SUBSCRIPTION_CHANGED: 80 std::cout << "receive a CommonEvent action = " << action << ", code = " << data.GetCode() 81 << ", event = " << data.GetData() 82 << ", slotId = " << want.GetIntParam(PARAM_SLOTID, DEFAULT_PARAM) << std::endl; 83 break; 84 case COMMON_EVENT_STK_SESSION_END: 85 std::cout << "receive a CommonEvent action = " << action 86 << ", slotId = " << want.GetIntParam(PARAM_STK_SLOTID, DEFAULT_PARAM) << std::endl; 87 break; 88 case COMMON_EVENT_STK_COMMAND: 89 std::cout << "receive a CommonEvent action = " << action 90 << ", slotId = " << want.GetIntParam(PARAM_SLOTID, DEFAULT_PARAM) 91 << ", stkData = " << want.GetStringParam(PARAM_STK_MSG_CMD) << std::endl; 92 break; 93 case COMMON_EVENT_STK_ALPHA_IDENTIFIER: 94 std::cout << "receive a CommonEvent action = " << action 95 << ", slotId = " << want.GetIntParam(PARAM_SLOTID, DEFAULT_PARAM) 96 << ", alphaData = " << want.GetStringParam(PARAM_STK_ALPHA_STRING) << std::endl; 97 break; 98 case COMMON_EVENT_STK_CARD_STATE_CHANGED: 99 std::cout << "receive a CommonEvent action = " << action 100 << ", slotId = " << want.GetIntParam(PARAM_SLOTID, DEFAULT_PARAM) 101 << ", newSimState = " << want.GetStringParam(PARAM_STK_CARD_STATUS) 102 << ", refreshResult = " << want.GetStringParam(PARAM_STK_REFRESH_RESULT) << std::endl; 103 break; 104 default: 105 std::cout << "receive a CommonEvent action = " << action << std::endl; 106 break; 107 } 108 }; 109 110 private: 111 const std::map<std::string, CommentEventTestIntValue> commentEventTestIntValues_ = { 112 {CommonEventSupport::COMMON_EVENT_SIM_STATE_CHANGED, COMMON_EVENT_SIM_STATE_CHANGED}, 113 {CommonEventSupport::COMMON_EVENT_SIM_CARD_DEFAULT_VOICE_SUBSCRIPTION_CHANGED, 114 COMMON_EVENT_SIM_CARD_DEFAULT_VOICE_SUBSCRIPTION_CHANGED}, 115 {CommonEventSupport::COMMON_EVENT_SIM_CARD_DEFAULT_SMS_SUBSCRIPTION_CHANGED, 116 COMMON_EVENT_SIM_CARD_DEFAULT_SMS_SUBSCRIPTION_CHANGED}, 117 {CommonEventSupport::COMMON_EVENT_SIM_CARD_DEFAULT_DATA_SUBSCRIPTION_CHANGED, 118 COMMON_EVENT_SIM_CARD_DEFAULT_DATA_SUBSCRIPTION_CHANGED}, 119 {CommonEventSupport::COMMON_EVENT_SIM_CARD_DEFAULT_MAIN_SUBSCRIPTION_CHANGED, 120 COMMON_EVENT_SIM_CARD_DEFAULT_MAIN_SUBSCRIPTION_CHANGED}, 121 {CommonEventSupport::COMMON_EVENT_STK_SESSION_END, COMMON_EVENT_STK_SESSION_END}, 122 {CommonEventSupport::COMMON_EVENT_STK_COMMAND, COMMON_EVENT_STK_COMMAND}, 123 {CommonEventSupport::COMMON_EVENT_STK_ALPHA_IDENTIFIER, COMMON_EVENT_STK_ALPHA_IDENTIFIER}, 124 {CommonEventSupport::COMMON_EVENT_STK_CARD_STATE_CHANGED, COMMON_EVENT_STK_CARD_STATE_CHANGED}, 125 }; 126 }; 127 } // namespace Telephony 128 } // namespace OHOS 129 #endif // OHOS_COMMON_EVENT_TEST_H 130