1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef COMPONENTS_DOM_DISTILLER_CORE_ARTICLE_ENTRY_H_
6 #define COMPONENTS_DOM_DISTILLER_CORE_ARTICLE_ENTRY_H_
10 #include "components/dom_distiller/core/proto/distilled_article.pb.h"
11 #include "sync/api/sync_data.h"
12 #include "sync/protocol/article_specifics.pb.h"
13 #include "sync/protocol/sync.pb.h"
19 namespace dom_distiller
{
21 typedef sync_pb::ArticleSpecifics ArticleEntry
;
22 typedef sync_pb::ArticlePage ArticleEntryPage
;
24 // A valid entry has an entry_id and all its pages have a URL.
25 bool IsEntryValid(const ArticleEntry
& entry
);
27 bool AreEntriesEqual(const ArticleEntry
& left
, const ArticleEntry
& right
);
29 sync_pb::EntitySpecifics
SpecificsFromEntry(const ArticleEntry
& entry
);
30 ArticleEntry
EntryFromSpecifics(const sync_pb::EntitySpecifics
& specifics
);
32 ArticleEntry
GetEntryFromChange(const syncer::SyncChange
& change
);
33 std::string
GetEntryIdFromSyncData(const syncer::SyncData
& data
);
34 syncer::SyncData
CreateLocalData(const ArticleEntry
& entry
);
36 } // namespace dom_distiller
38 #endif // COMPONENTS_DOM_DISTILLER_CORE_ARTICLE_ENTRY_H_