1c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. 2c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// Use of this source code is governed by a BSD-style license that can be 3c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// found in the LICENSE file. 4c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// 5c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// A struct for managing data being dropped on a webview. This represents a 6c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// union of all the types of data that can be dropped in a platform neutral 7c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch// way. 8c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 9c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch#ifndef WEBKIT_GLUE_WEBCOOKIE_H_ 10c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch#define WEBKIT_GLUE_WEBCOOKIE_H_ 11c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 12c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch#include "net/base/cookie_monster.h" 13c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 14c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdochnamespace webkit_glue { 15c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 16c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdochstruct WebCookie { 173345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick WebCookie(); 183345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick explicit WebCookie(const net::CookieMonster::CanonicalCookie& c); 19c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch WebCookie(const std::string& name, const std::string& value, 20c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch const std::string& domain, const std::string& path, double expires, 213345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick bool http_only, bool secure, bool session); 223345a6884c488ff3a535c2c9acdd33d74b37e311Iain Merrick ~WebCookie(); 23c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 24c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch // Cookie name. 25c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch std::string name; 26c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 27c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch // Cookie value. 28c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch std::string value; 29c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 30c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch // Cookie domain. 31c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch std::string domain; 32c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 33c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch // Cookie path. 34c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch std::string path; 35c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 36c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch // Cookie expires param if any. 37c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch double expires; 38c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 39c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch // Cookie HTTPOnly param. 40c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch bool http_only; 41c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 42c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch // Cookie secure param. 43c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch bool secure; 44c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 45c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch // Session cookie flag. 46c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch bool session; 47c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch}; 48c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 49c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch} // namespace webkit_glue 50c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch 51c407dc5cd9bdc5668497f21b26b09d988ab439deBen Murdoch#endif // WEBKIT_GLUE_WEBCOOKIE_H_ 52