• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2021-2023 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 #ifndef OS_ACCOUNT_SERVICES_ACCOUNTMGR_INCLUDE_OSACCOUNT_IOS_ACCOUNT_CONTROL_H
16 #define OS_ACCOUNT_SERVICES_ACCOUNTMGR_INCLUDE_OSACCOUNT_IOS_ACCOUNT_CONTROL_H
17 #include "os_account_info.h"
18 #include "account_error_no.h"
19 namespace OHOS {
20 namespace AccountSA {
21 class IOsAccountControl {
22 public:
23     virtual void Init() = 0;
24     virtual ErrCode GetOsAccountList(std::vector<OsAccountInfo> &osAccountList) = 0;
25     virtual ErrCode GetOsAccountInfoById(const int id, OsAccountInfo &osAccountInfo) = 0;
26     virtual ErrCode GetConstraintsByType(const OsAccountType type, std::vector<std::string> &constraints) = 0;
27     virtual ErrCode InsertOsAccount(OsAccountInfo &osAccountInfo) = 0;
28     virtual ErrCode DelOsAccount(const int id) = 0;
29     virtual ErrCode UpdateOsAccount(OsAccountInfo &osAccountInfo) = 0;
30     virtual ErrCode GetMaxCreatedOsAccountNum(int &maxCreatedOsAccountNum) = 0;
31     virtual ErrCode GetSerialNumber(int64_t &serialNumber) = 0;
32     virtual ErrCode GetAllowCreateId(int &id) = 0;
33     virtual ErrCode IsOsAccountExists(const int id, bool &isExists) = 0;
34     virtual ErrCode GetPhotoById(const int id, std::string &photo) = 0;
35     virtual ErrCode SetPhotoById(const int id, const std::string &photo) = 0;
36     virtual ErrCode GetIsMultiOsAccountEnable(bool &isMultiOsAccountEnable) = 0;
37     virtual ErrCode CheckConstraintsList(const std::vector<std::string> &constraints,
38         bool &isExists, bool &isOverSize) = 0;
39     virtual ErrCode IsAllowedCreateAdmin(bool &isAllowedCreateAdmin) = 0;
40 
41     virtual ErrCode GetCreatedOsAccountNumFromDatabase(const std::string& storeID,
42         int &createdOsAccountNum) = 0;
43     virtual ErrCode GetSerialNumberFromDatabase(const std::string& storeID,
44         int64_t &serialNumber) = 0;
45     virtual ErrCode GetMaxAllowCreateIdFromDatabase(const std::string& storeID, int &id) = 0;
46     virtual ErrCode GetOsAccountFromDatabase(const std::string& storeID,
47         const int id, OsAccountInfo &osAccountInfo) = 0;
48     virtual ErrCode GetOsAccountListFromDatabase(const std::string& storeID,
49         std::vector<OsAccountInfo> &osAccountList) = 0;
50 
51     virtual ErrCode RemoveOAConstraintsInfo(const int32_t id) = 0;
52     virtual ErrCode IsFromBaseOAConstraintsList(const int32_t id, const std::string constraint, bool &isExits) = 0;
53     virtual ErrCode IsFromGlobalOAConstraintsList(const int32_t id, const int32_t deviceOwnerId,
54         const std::string constraint, std::vector<ConstraintSourceTypeInfo> &globalSourceList) = 0;
55     virtual ErrCode IsFromSpecificOAConstraintsList(const int32_t id, const int32_t deviceOwnerId,
56         const std::string constraint, std::vector<ConstraintSourceTypeInfo> &specificSourceList) = 0;
57     virtual ErrCode GetGlobalOAConstraintsList(std::vector<std::string> &constraintsList) = 0;
58     virtual ErrCode GetSpecificOAConstraintsList(const int32_t id, std::vector<std::string> &constraintsList) = 0;
59     virtual ErrCode UpdateBaseOAConstraints(const std::string& idStr,
60         const std::vector<std::string>& ConstraintStr, bool isAdd) = 0;
61     virtual ErrCode UpdateGlobalOAConstraints(const std::string& idStr,
62         const std::vector<std::string>& ConstraintStr, bool isAdd) = 0;
63     virtual ErrCode UpdateSpecificOAConstraints(const std::string& idStr,
64         const std::string& targetIdStr, const std::vector<std::string>& ConstraintStr, bool isAdd) = 0;
65     virtual ErrCode GetDeviceOwnerId(int32_t &deviceOwnerId) = 0;
66     virtual ErrCode UpdateDeviceOwnerId(const int32_t deviceOwnerId) = 0;
67     virtual ErrCode SetDefaultActivatedOsAccount(const int32_t id) = 0;
68     virtual ErrCode GetDefaultActivatedOsAccount(int32_t &id) = 0;
69 };
70 }  // namespace AccountSA
71 }  // namespace OHOS
72 
73 #endif  // OS_ACCOUNT_SERVICES_ACCOUNTMGR_INCLUDE_OSACCOUNT_IOS_ACCOUNT_CONTROL_H
74