11320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// Copyright (c) 2014 The Chromium Authors. All rights reserved.
21320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// Use of this source code is governed by a BSD-style license that can be
31320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// found in the LICENSE file.
41320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
51320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci#include "chrome/common/content_settings_pattern_serializer.h"
61320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
71320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci#include "chrome/common/render_messages.h"
81320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci#include "components/content_settings/core/common/content_settings_pattern.h"
91320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
101320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// static
111320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccivoid ContentSettingsPatternSerializer::WriteToMessage(
121320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci    const ContentSettingsPattern& pattern,
131320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci    IPC::Message* m) {
141320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  IPC::WriteParam(m, pattern.is_valid_);
151320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  IPC::WriteParam(m, pattern.parts_);
161320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci}
171320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci
181320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci// static
191320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tuccibool ContentSettingsPatternSerializer::ReadFromMessage(
201320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci    const IPC::Message* m,
211320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci    PickleIterator* iter,
221320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci    ContentSettingsPattern* pattern) {
231320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  DCHECK(pattern);
241320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci  return IPC::ReadParam(m, iter, &pattern->is_valid_) &&
251320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci         IPC::ReadParam(m, iter, &pattern->parts_);
261320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci}
27