190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// Copyright 2013 The Chromium Authors. All rights reserved.
25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file.
45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
52385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen Murdoch#ifndef CHROME_BROWSER_SYNC_FILE_SYSTEM_SYNC_FILE_METADATA_H_
62385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen Murdoch#define CHROME_BROWSER_SYNC_FILE_SYSTEM_SYNC_FILE_METADATA_H_
75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "base/basictypes.h"
9eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch#include "base/time/time.h"
102385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen Murdoch#include "chrome/browser/sync_file_system/file_change.h"
111320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci#include "storage/browser/fileapi/file_system_url.h"
125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
132a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)namespace sync_file_system {
145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
152385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen Murdochclass SyncFileMetadata {
165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) public:
175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  SyncFileMetadata();
185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  SyncFileMetadata(SyncFileType file_type,
195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                   int64 size,
205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)                   const base::Time& last_modified);
215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  ~SyncFileMetadata();
225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  SyncFileType file_type;
245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  int64 size;
255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  base::Time last_modified;
265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
272a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  bool operator==(const SyncFileMetadata& that) const;
285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)};
295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
302385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen Murdochstruct LocalFileSyncInfo {
315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  LocalFileSyncInfo();
325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  ~LocalFileSyncInfo();
335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
3403b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)  storage::FileSystemURL url;
352a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  base::FilePath local_file_path;
365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  SyncFileMetadata metadata;
375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)  FileChangeList changes;
385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)};
395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
402a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}  // namespace sync_file_system
415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
422385ea399aae016c0806a4f9ef3c9cfe3d2a39dfBen Murdoch#endif  // CHROME_BROWSER_SYNC_FILE_SYSTEM_SYNC_FILE_METADATA_H_
43