12345678910111213141516171819202122232425262728293031323334353637 |
- // Copyright 2013 The Chromium Authors. All rights reserved.
- // Use of this source code is governed by a BSD-style license that can be
- // found in the LICENSE file.
- #ifndef IOS_WEB_COMMON_REFERRER_UTIL_H_
- #define IOS_WEB_COMMON_REFERRER_UTIL_H_
- #include <string>
- #include "ios/web/public/navigation/referrer.h"
- #include "net/url_request/referrer_policy.h"
- class GURL;
- namespace web {
- // Returns the string that should be sent as the Referer header value for
- // navigating to |destination| from the given referrer, taking the referrer
- // policy into account. Returns an empty string if no Referer should be sent.
- std::string ReferrerHeaderValueForNavigation(const GURL& destination,
- const web::Referrer& referrer);
- // Returns the policy that should be used to process subsequent forwards, if
- // any.
- // TODO(stuartmorgan): Replace this with ReferrerForNavigation, since it should
- // always be used with ReferrerHeaderValueForNavigation anyway.
- net::ReferrerPolicy PolicyForNavigation(const GURL& destination,
- const web::Referrer& referrer);
- // Returns the WebReferrerPolicy corresponding to the given policy string
- // (e.g., 'always', 'never', 'origin', 'default'). The string is assumed to
- // be lowercase already. Unrecognized values will be treated as Default.
- ReferrerPolicy ReferrerPolicyFromString(const std::string& policy);
- } // namespace web
- #endif // IOS_WEB_COMMON_REFERRER_UTIL_H_
|