blob: 4f4c2b9d1f8c706ac6771dfae91009199c8669dc [file] [log] [blame]
// Copyright 2015 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_NAVIGATION_SERIALIZED_NAVIGATION_MANAGER_BUILDER_H_
#define IOS_WEB_NAVIGATION_SERIALIZED_NAVIGATION_MANAGER_BUILDER_H_
#include <memory>
@class CRWSessionStorage;
namespace web {
class WebStateImpl;
// Class that can serialize and deserialize session information.
class SessionStorageBuilder {
public:
// Creates a serializable session storage from |web_state|.
CRWSessionStorage* BuildStorage(WebStateImpl* web_state) const;
// Populates |web_state| with |storage|'s session information.
void ExtractSessionState(WebStateImpl* web_state,
CRWSessionStorage* storage) const;
};
} // namespace web
#endif // IOS_WEB_NAVIGATION_SERIALIZED_NAVIGATION_MANAGER_BUILDER_H_