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 WEB_COOKIE_MANAGER_H
17  #define WEB_COOKIE_MANAGER_H
18  
19  #include <string>
20  
21  namespace OHOS {
22  namespace NWeb {
23  class WebCookieManager {
24  public:
WebCookieManager()25      WebCookieManager() {}
26      ~WebCookieManager() = default;
27  
28      static std::string CjGetCookie(const std::string &url, bool incognitoMode, int32_t& errCode);
29      static int32_t CjSetCookie(const std::string& url, const std::string& value, bool incognitoMode);
30      static void CjPutAcceptCookieEnabled(bool accept);
31      static bool CjIsCookieAllowed();
32      static void CjPutAcceptThirdPartyCookieEnabled(bool accept);
33      static bool CjIsThirdPartyCookieAllowed();
34      static bool CjExistCookie(bool incognitoMode);
35      static void CjDeleteEntireCookie(bool incognitoMode);
36      static void CjDeleteSessionCookie();
37  };
38  }
39  }
40  
41  #endif