summaryrefslogtreecommitdiffstats
path: root/content/public/common/common_param_traits.cc
diff options
context:
space:
mode:
authoryhirano@chromium.org <yhirano@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-13 10:22:57 +0000
committeryhirano@chromium.org <yhirano@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-03-13 10:22:57 +0000
commit7824cf82df8244b5f66a56e663ce6e121c25de88 (patch)
tree3a2908a3687bc00a80d2ca49b7324ce3cd71c088 /content/public/common/common_param_traits.cc
parented8fd9152e0dff6c26f69f968e0d4aa4bd890d57 (diff)
downloadchromium_src-7824cf82df8244b5f66a56e663ce6e121c25de88.zip
chromium_src-7824cf82df8244b5f66a56e663ce6e121c25de88.tar.gz
chromium_src-7824cf82df8244b5f66a56e663ce6e121c25de88.tar.bz2
Introduce url::Origin to represent Web Origin.
Introduce url::Origin to represent a serialized Web Origin defined in RFC6455. This class wraps a string representation of blink-side SecurityOrigin object. BUG=339373 R=tyoshino@chromium.org, ricea@chromium.org Review URL: https://codereview.chromium.org/170843007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@256789 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/public/common/common_param_traits.cc')
-rw-r--r--content/public/common/common_param_traits.cc23
1 files changed, 23 insertions, 0 deletions
diff --git a/content/public/common/common_param_traits.cc b/content/public/common/common_param_traits.cc
index 474fb7a..956801a 100644
--- a/content/public/common/common_param_traits.cc
+++ b/content/public/common/common_param_traits.cc
@@ -4,6 +4,8 @@
#include "content/public/common/common_param_traits.h"
+#include <string>
+
#include "content/public/common/content_constants.h"
#include "content/public/common/page_state.h"
#include "content/public/common/referrer.h"
@@ -87,6 +89,27 @@ void ParamTraits<GURL>::Log(const GURL& p, std::string* l) {
l->append(p.spec());
}
+void ParamTraits<url::Origin>::Write(Message* m,
+ const url::Origin& p) {
+ m->WriteString(p.string());
+}
+
+bool ParamTraits<url::Origin>::Read(const Message* m,
+ PickleIterator* iter,
+ url::Origin* p) {
+ std::string s;
+ if (!m->ReadString(iter, &s)) {
+ *p = url::Origin();
+ return false;
+ }
+ *p = url::Origin(s);
+ return true;
+}
+
+void ParamTraits<url::Origin>::Log(const url::Origin& p, std::string* l) {
+ l->append(p.string());
+}
+
void ParamTraits<net::HostPortPair>::Write(Message* m, const param_type& p) {
WriteParam(m, p.host());
WriteParam(m, p.port());