1  /*
2   * Copyright (c) 2021-2022 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 NET_POLICY_SERVICE_COMMON_H
17  #define NET_POLICY_SERVICE_COMMON_H
18  
19  #include "net_policy_base_service.h"
20  
21  namespace OHOS {
22  namespace NetManagerStandard {
23  class NetPolicyServiceCommon : public NetPolicyBaseService {
24  public:
25      /**
26       * Reset net policies.
27       *
28       * @return Returns 0 success.
29       */
30      int32_t ResetPolicies() override;
31  
32      /**
33       * Get the status whether the specified uid app can access the metered network or non-metered network.
34       *
35       * @param uid The specified UID of application.
36       * @param metered Indicates metered network or non-metered network.
37       * @return Returns it's allowed or not to access the network.
38       */
39      bool IsUidNetAllowed(uint32_t uid, bool metered) override;
40  };
41  } // namespace NetManagerStandard
42  } // namespace OHOS
43  #endif // NET_POLICY_SERVICE_COMMON_H