12d43be4eSopenharmony_ci/* 22d43be4eSopenharmony_ci * Copyright (C) 2021 Huawei Device Co., Ltd. 32d43be4eSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 42d43be4eSopenharmony_ci * you may not use this file except in compliance with the License. 52d43be4eSopenharmony_ci * You may obtain a copy of the License at 62d43be4eSopenharmony_ci * 72d43be4eSopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 82d43be4eSopenharmony_ci * 92d43be4eSopenharmony_ci * Unless required by applicable law or agreed to in writing, software 102d43be4eSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 112d43be4eSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 122d43be4eSopenharmony_ci * See the License for the specific language governing permissions and 132d43be4eSopenharmony_ci * limitations under the License. 142d43be4eSopenharmony_ci */ 152d43be4eSopenharmony_ci 162d43be4eSopenharmony_ci#ifndef ACTIVATING_H 172d43be4eSopenharmony_ci#define ACTIVATING_H 182d43be4eSopenharmony_ci 192d43be4eSopenharmony_ci#include <memory> 202d43be4eSopenharmony_ci#include <string> 212d43be4eSopenharmony_ci 222d43be4eSopenharmony_ci#include "cellular_data_state_machine.h" 232d43be4eSopenharmony_ci#include "inner_event.h" 242d43be4eSopenharmony_ci 252d43be4eSopenharmony_cinamespace OHOS { 262d43be4eSopenharmony_cinamespace Telephony { 272d43be4eSopenharmony_ciclass Activating : public State { 282d43be4eSopenharmony_cipublic: 292d43be4eSopenharmony_ci Activating(std::weak_ptr<CellularDataStateMachine> &&cellularService, std::string &&name) 302d43be4eSopenharmony_ci : State(std::move(name)), stateMachine_(std::move(cellularService)) 312d43be4eSopenharmony_ci {} 322d43be4eSopenharmony_ci virtual ~Activating() = default; 332d43be4eSopenharmony_ci virtual void StateBegin(); 342d43be4eSopenharmony_ci virtual void StateEnd(); 352d43be4eSopenharmony_ci virtual bool StateProcess(const AppExecFwk::InnerEvent::Pointer &event); 362d43be4eSopenharmony_ci 372d43be4eSopenharmony_ciprivate: 382d43be4eSopenharmony_ci bool RilActivatePdpContextDone(const AppExecFwk::InnerEvent::Pointer &event); 392d43be4eSopenharmony_ci bool RilErrorResponse(const AppExecFwk::InnerEvent::Pointer &event); 402d43be4eSopenharmony_ci void ProcessConnectTimeout(const AppExecFwk::InnerEvent::Pointer &event); 412d43be4eSopenharmony_ci std::weak_ptr<CellularDataStateMachine> stateMachine_; 422d43be4eSopenharmony_ci}; 432d43be4eSopenharmony_ci} // namespace Telephony 442d43be4eSopenharmony_ci} // namespace OHOS 452d43be4eSopenharmony_ci#endif // ACTIVATING_H 46