1 /* 2 * Copyright (c) 2024 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 UPDATE_SERVICE_TASK_BODY_MEMBER_MASK_H 17 #define UPDATE_SERVICE_TASK_BODY_MEMBER_MASK_H 18 19 #include <map> 20 21 #include "event_id.h" 22 23 namespace OHOS::UpdateEngine { 24 enum TaskBodyMemberMask { 25 VERSION_DIGEST_INFO = 0x00000001, 26 UPGRADE_STATUS = 0x00000010, 27 SUB_STATUS = 0x00000100, 28 PROGRESS = 0x00001000, 29 INSTALL_MODE = 0x00010000, 30 ERROR_MESSAGE = 0x00100000, 31 VERSION_COMPONENT = 0x01000000 32 }; 33 34 const std::map<EventId, uint32_t> g_taskBodyTemplateMap = { 35 { EventId::EVENT_TASK_RECEIVE, VERSION_DIGEST_INFO }, 36 { EventId::EVENT_TASK_CHANGE, VERSION_DIGEST_INFO | UPGRADE_STATUS | PROGRESS }, 37 { EventId::EVENT_TASK_CANCEL, VERSION_DIGEST_INFO }, 38 { EventId::EVENT_VERSION_INFO_CHANGE, VERSION_DIGEST_INFO | UPGRADE_STATUS }, 39 { EventId::EVENT_DOWNLOAD_WAIT, VERSION_DIGEST_INFO | UPGRADE_STATUS | INSTALL_MODE }, 40 { EventId::EVENT_DOWNLOAD_START, VERSION_DIGEST_INFO | INSTALL_MODE }, 41 { EventId::EVENT_DOWNLOAD_UPDATE, VERSION_DIGEST_INFO | UPGRADE_STATUS | PROGRESS | INSTALL_MODE | SUB_STATUS }, 42 { EventId::EVENT_DOWNLOAD_PAUSE, VERSION_DIGEST_INFO | UPGRADE_STATUS | PROGRESS | INSTALL_MODE | ERROR_MESSAGE }, 43 { EventId::EVENT_DOWNLOAD_RESUME, VERSION_DIGEST_INFO | UPGRADE_STATUS | PROGRESS | INSTALL_MODE }, 44 { EventId::EVENT_DOWNLOAD_SUCCESS, VERSION_DIGEST_INFO | INSTALL_MODE | SUB_STATUS }, 45 { EventId::EVENT_DOWNLOAD_CANCEL, VERSION_DIGEST_INFO | UPGRADE_STATUS }, 46 { EventId::EVENT_DOWNLOAD_FAIL, VERSION_DIGEST_INFO | INSTALL_MODE | ERROR_MESSAGE }, 47 { EventId::EVENT_TRANSFER_WAIT, VERSION_DIGEST_INFO | UPGRADE_STATUS | INSTALL_MODE | SUB_STATUS }, 48 { EventId::EVENT_TRANSFER_START, VERSION_DIGEST_INFO | INSTALL_MODE }, 49 { EventId::EVENT_TRANSFERING, VERSION_DIGEST_INFO | UPGRADE_STATUS | PROGRESS | INSTALL_MODE | SUB_STATUS }, 50 { EventId::EVENT_TRANSFER_SUCCESS, VERSION_DIGEST_INFO | INSTALL_MODE }, 51 { EventId::EVENT_TRANSFER_FAIL, VERSION_DIGEST_INFO | ERROR_MESSAGE | INSTALL_MODE }, 52 { EventId::EVENT_UPGRADE_WAIT, VERSION_DIGEST_INFO | UPGRADE_STATUS | INSTALL_MODE | ERROR_MESSAGE }, 53 { EventId::EVENT_UPGRADE_START, VERSION_DIGEST_INFO | UPGRADE_STATUS | INSTALL_MODE }, 54 { EventId::EVENT_UPGRADE_UPDATE, VERSION_DIGEST_INFO | UPGRADE_STATUS | PROGRESS | INSTALL_MODE }, 55 { EventId::EVENT_APPLY_WAIT, VERSION_DIGEST_INFO | UPGRADE_STATUS | ERROR_MESSAGE }, 56 { EventId::EVENT_APPLY_START, VERSION_DIGEST_INFO }, 57 { EventId::EVENT_UPGRADE_SUCCESS, VERSION_DIGEST_INFO | VERSION_COMPONENT | SUB_STATUS }, 58 { EventId::EVENT_UPGRADE_FAIL, VERSION_DIGEST_INFO | VERSION_COMPONENT | ERROR_MESSAGE }, 59 { EventId::EVENT_AUTH_START, VERSION_DIGEST_INFO | VERSION_COMPONENT | UPGRADE_STATUS }, 60 { EventId::EVENT_AUTH_SUCCESS, VERSION_DIGEST_INFO | VERSION_COMPONENT | UPGRADE_STATUS }, 61 { EventId::EVENT_INITIALIZE, UPGRADE_STATUS }, 62 }; 63 } // namespace OHOS::UpdateEngine 64 #endif // UPDATE_SERVICE_TASK_BODY_MEMBER_MASK_H 65