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 #include "sim_file_controller.h" 17 18 namespace OHOS { 19 namespace Telephony { SimFileController(int slotId)20SimFileController::SimFileController(int slotId) : IccFileController("SimFileController", slotId) {} 21 ObtainElementFilePath(int efId)22std::string SimFileController::ObtainElementFilePath(int efId) 23 { 24 std::string mf = MASTER_FILE_SIM; 25 switch (efId) { 26 case ELEMENTARY_FILE_SMS: 27 mf.append(DEDICATED_FILE_TELECOM); 28 return mf; 29 case ELEMENTARY_FILE_VOICE_MAIL_INDICATOR_CPHS: 30 case ELEMENTARY_FILE_CFF_CPHS: 31 case ELEMENTARY_FILE_SPN_CPHS: 32 case ELEMENTARY_FILE_INFO_CPHS: 33 case ELEMENTARY_FILE_MAILBOX_CPHS: 34 case ELEMENTARY_FILE_SPN_SHORT_CPHS: 35 case ELEMENTARY_FILE_SST: 36 case ELEMENTARY_FILE_GID1: 37 case ELEMENTARY_FILE_GID2: 38 case ELEMENTARY_FILE_SPN: 39 case ELEMENTARY_FILE_AD: 40 case ELEMENTARY_FILE_PNN: 41 case ELEMENTARY_FILE_MBDN: 42 case ELEMENTARY_FILE_EXT6: 43 case ELEMENTARY_FILE_MBI: 44 case ELEMENTARY_FILE_MWIS: 45 case ELEMENTARY_FILE_CFIS: 46 case ELEMENTARY_FILE_CSP_CPHS: 47 mf.append(DEDICATED_FILE_GSM); 48 return mf; 49 default: 50 break; 51 } 52 std::string path = ObtainElementFileForPublic(efId); 53 if (path.empty()) { 54 TELEPHONY_LOGE("SimFileController ObtainElementFilePath Error: EF Path being returned in null"); 55 } 56 return path; 57 } 58 ~SimFileController()59SimFileController::~SimFileController() {} 60 } // namespace Telephony 61 } // namespace OHOS 62