1b8a72a62Sopenharmony_ci/* 2b8a72a62Sopenharmony_ci * Copyright (c) 2023 Huawei Device Co., Ltd. 3b8a72a62Sopenharmony_ci * 4b8a72a62Sopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 5b8a72a62Sopenharmony_ci * you may not use this file except in compliance with the License. 6b8a72a62Sopenharmony_ci * You may obtain a copy of the License at 7b8a72a62Sopenharmony_ci * 8b8a72a62Sopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 9b8a72a62Sopenharmony_ci * 10b8a72a62Sopenharmony_ci * Unless required by applicable law or agreed to in writing, software 11b8a72a62Sopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 12b8a72a62Sopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13b8a72a62Sopenharmony_ci * See the License for the specific language governing permissions and 14b8a72a62Sopenharmony_ci * limitations under the License. 15b8a72a62Sopenharmony_ci */ 16b8a72a62Sopenharmony_ci 17b8a72a62Sopenharmony_cipackage ohos; 18b8a72a62Sopenharmony_ci 19b8a72a62Sopenharmony_ci/** 20b8a72a62Sopenharmony_ci * scanEntrance info 21b8a72a62Sopenharmony_ci * 22b8a72a62Sopenharmony_ci * @since 2023/11/23 23b8a72a62Sopenharmony_ci */ 24b8a72a62Sopenharmony_ci 25b8a72a62Sopenharmony_cipublic class ScanEntrance { 26b8a72a62Sopenharmony_ci private static final int EXIT_STATUS_NORMAL = 0; 27b8a72a62Sopenharmony_ci private static final int EXIT_STATUS_EXCEPTION = 1; 28b8a72a62Sopenharmony_ci private static final Log LOG = new Log(ScanEntrance.class.toString()); 29b8a72a62Sopenharmony_ci 30b8a72a62Sopenharmony_ci 31b8a72a62Sopenharmony_ci /** 32b8a72a62Sopenharmony_ci * scan tool main function. 33b8a72a62Sopenharmony_ci * 34b8a72a62Sopenharmony_ci * @param args command line 35b8a72a62Sopenharmony_ci */ 36b8a72a62Sopenharmony_ci 37b8a72a62Sopenharmony_ci public static void main(String[] args) { 38b8a72a62Sopenharmony_ci Utility utility = new Utility(); 39b8a72a62Sopenharmony_ci 40b8a72a62Sopenharmony_ci if (!CommandParser.commandParser(utility, args)) { 41b8a72a62Sopenharmony_ci LOG.error(ScanErrorEnum.SCAN_ENTRANCE_PARSER_ERROR.toString()); 42b8a72a62Sopenharmony_ci ShowHelp.scanHelp(); 43b8a72a62Sopenharmony_ci System.exit(EXIT_STATUS_EXCEPTION); 44b8a72a62Sopenharmony_ci } 45b8a72a62Sopenharmony_ci 46b8a72a62Sopenharmony_ci if (!ScanVerify.commandVerify(utility)) { 47b8a72a62Sopenharmony_ci LOG.error(ScanErrorEnum.SCAN_ENTRANCE_VERIFY_ERROR.toString()); 48b8a72a62Sopenharmony_ci ShowHelp.scanHelp(); 49b8a72a62Sopenharmony_ci System.exit(EXIT_STATUS_EXCEPTION); 50b8a72a62Sopenharmony_ci } 51b8a72a62Sopenharmony_ci 52b8a72a62Sopenharmony_ci Scan scan = new Scan(); 53b8a72a62Sopenharmony_ci if (!scan.scanProcess(utility)) { 54b8a72a62Sopenharmony_ci LOG.error(ScanErrorEnum.SCAN_ENTRANCE_COMPRESS_ERROR.toString()); 55b8a72a62Sopenharmony_ci ShowHelp.scanHelp(); 56b8a72a62Sopenharmony_ci System.exit(EXIT_STATUS_EXCEPTION); 57b8a72a62Sopenharmony_ci } 58b8a72a62Sopenharmony_ci 59b8a72a62Sopenharmony_ci System.exit(EXIT_STATUS_NORMAL); 60b8a72a62Sopenharmony_ci } 61b8a72a62Sopenharmony_ci}