Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(40)

Side by Side Diff: chrome/browser/local_discovery/storage/privet_filesystem_attribute_cache.cc

Issue 492693004: Delete Privet filesystem code (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
1 // Copyright 2014 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.
4
5 #include "chrome/browser/local_discovery/storage/privet_filesystem_attribute_cac he.h"
6
7 #include "chrome/browser/local_discovery/storage/path_util.h"
8 #include "chrome/browser/local_discovery/storage/privet_filesystem_constants.h"
9
10 namespace local_discovery {
11
12 PrivetFileSystemAttributeCache::PrivetFileSystemAttributeCache() {}
13
14 PrivetFileSystemAttributeCache::~PrivetFileSystemAttributeCache() {}
15
16 const base::File::Info* PrivetFileSystemAttributeCache::GetFileInfo(
17 const base::FilePath& full_path) {
18 FileInfoMap::iterator found =
19 file_info_map_.find(NormalizeFilePath(full_path));
20
21 if (found != file_info_map_.end()) {
22 return &found->second;
23 }
24
25 return NULL;
26 }
27
28 void PrivetFileSystemAttributeCache::AddFileInfoFromJSON(
29 const base::FilePath& full_path,
30 const base::DictionaryValue* json) {
31 AddEntryInfoFromJSON(full_path, json);
32
33 const base::ListValue* entry_list;
34 if (!json->GetList(kPrivetListEntries, &entry_list))
35 return;
36
37 for (size_t i = 0; i < entry_list->GetSize(); i++) {
38 const base::DictionaryValue* entry_value;
39 if (!entry_list->GetDictionary(i, &entry_value))
40 break;
41
42 std::string name;
43 if (!entry_value->GetString(kPrivetListKeyName, &name))
44 break;
45
46 AddEntryInfoFromJSON(full_path.AppendASCII(name), entry_value);
47 }
48 }
49
50 void PrivetFileSystemAttributeCache::AddEntryInfoFromJSON(
51 const base::FilePath& full_path,
52 const base::DictionaryValue* json) {
53 base::File::Info file_info;
54
55 std::string type;
56 int size = 0;
57
58 json->GetString(kPrivetListKeyType, &type);
59 json->GetInteger(kPrivetListKeySize, &size);
60
61 file_info.size = size;
62 file_info.is_directory = (type == kPrivetListTypeDir);
63 file_info.is_symbolic_link = false;
64
65 file_info_map_[NormalizeFilePath(full_path)] = file_info;
66 }
67
68 } // namespace local_discovery
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698