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

Side by Side Diff: components/drive/resource_entry_conversion.cc

Issue 2799603002: Process TeamDrive change in change list. (Closed)
Patch Set: Remove unnecessary return value, as the TeamDriveResource conversion always succeeds. Created 3 years, 8 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
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "components/drive/resource_entry_conversion.h" 5 #include "components/drive/resource_entry_conversion.h"
6 6
7 #include <stdint.h> 7 #include <stdint.h>
8 8
9 #include <string> 9 #include <string>
10 10
11 #include "base/logging.h" 11 #include "base/logging.h"
12 #include "base/time/time.h" 12 #include "base/time/time.h"
13 #include "components/drive/drive.pb.h" 13 #include "components/drive/drive.pb.h"
14 #include "components/drive/drive_api_util.h" 14 #include "components/drive/drive_api_util.h"
15 #include "components/drive/file_system_core_util.h" 15 #include "components/drive/file_system_core_util.h"
16 #include "google_apis/drive/drive_api_parser.h" 16 #include "google_apis/drive/drive_api_parser.h"
17 17
18 namespace drive { 18 namespace drive {
19 19
20 bool ConvertChangeResourceToResourceEntry( 20 bool ConvertChangeResourceToResourceEntry(
21 const google_apis::ChangeResource& input, 21 const google_apis::ChangeResource& input,
22 ResourceEntry* out_entry, 22 ResourceEntry* out_entry,
23 std::string* out_parent_resource_id) { 23 std::string* out_parent_resource_id) {
24 DCHECK(out_entry); 24 DCHECK(out_entry);
25 DCHECK(out_parent_resource_id); 25 DCHECK(out_parent_resource_id);
26 26
27 ResourceEntry converted; 27 ResourceEntry converted;
28 std::string parent_resource_id; 28 std::string parent_resource_id;
29 if (input.file() && 29 if (input.type() == google_apis::ChangeResource::TEAM_DRIVE) {
30 !ConvertFileResourceToResourceEntry(*input.file(), &converted, 30 converted.mutable_file_info()->set_is_directory(true);
31 &parent_resource_id)) 31 converted.set_parent_local_id(util::kDriveTeamDrivesDirLocalId);
32 if (input.team_drive())
33 ConvertTeamDriveResourceToResourceEntry(*input.team_drive(), &converted);
34 converted.set_resource_id(input.team_drive_id());
35 } else {
36 if (input.file() && !ConvertFileResourceToResourceEntry(
37 *input.file(), &converted, &parent_resource_id))
32 return false; 38 return false;
33 39 converted.set_resource_id(input.file_id());
34 converted.set_resource_id(input.file_id()); 40 }
35 converted.set_deleted(converted.deleted() || input.is_deleted()); 41 converted.set_deleted(converted.deleted() || input.is_deleted());
36 converted.set_modification_date(input.modification_date().ToInternalValue()); 42 converted.set_modification_date(input.modification_date().ToInternalValue());
37 43
38 out_entry->Swap(&converted); 44 out_entry->Swap(&converted);
39 swap(*out_parent_resource_id, parent_resource_id); 45 swap(*out_parent_resource_id, parent_resource_id);
40 return true; 46 return true;
41 } 47 }
42 48
43 bool ConvertFileResourceToResourceEntry( 49 bool ConvertFileResourceToResourceEntry(
44 const google_apis::FileResource& input, 50 const google_apis::FileResource& input,
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
121 const int64_t image_rotation = input.image_media_metadata().rotation(); 127 const int64_t image_rotation = input.image_media_metadata().rotation();
122 if (image_rotation != -1) 128 if (image_rotation != -1)
123 file_specific_info->set_image_rotation(image_rotation); 129 file_specific_info->set_image_rotation(image_rotation);
124 } 130 }
125 131
126 out_entry->Swap(&converted); 132 out_entry->Swap(&converted);
127 swap(*out_parent_resource_id, parent_resource_id); 133 swap(*out_parent_resource_id, parent_resource_id);
128 return true; 134 return true;
129 } 135 }
130 136
137 void ConvertTeamDriveResourceToResourceEntry(
138 const google_apis::TeamDriveResource& input,
139 ResourceEntry* out_entry) {
140 DCHECK(out_entry);
141 out_entry->set_title(input.name());
142 out_entry->set_base_name(input.name());
143 }
144
131 void ConvertResourceEntryToFileInfo(const ResourceEntry& entry, 145 void ConvertResourceEntryToFileInfo(const ResourceEntry& entry,
132 base::File::Info* file_info) { 146 base::File::Info* file_info) {
133 file_info->size = entry.file_info().size(); 147 file_info->size = entry.file_info().size();
134 file_info->is_directory = entry.file_info().is_directory(); 148 file_info->is_directory = entry.file_info().is_directory();
135 file_info->is_symbolic_link = entry.file_info().is_symbolic_link(); 149 file_info->is_symbolic_link = entry.file_info().is_symbolic_link();
136 file_info->last_modified = base::Time::FromInternalValue( 150 file_info->last_modified = base::Time::FromInternalValue(
137 entry.file_info().last_modified()); 151 entry.file_info().last_modified());
138 file_info->last_accessed = base::Time::FromInternalValue( 152 file_info->last_accessed = base::Time::FromInternalValue(
139 entry.file_info().last_accessed()); 153 entry.file_info().last_accessed());
140 file_info->creation_time = base::Time::FromInternalValue( 154 file_info->creation_time = base::Time::FromInternalValue(
141 entry.file_info().creation_time()); 155 entry.file_info().creation_time());
142 } 156 }
143 157
144 } // namespace drive 158 } // namespace drive
OLDNEW
« no previous file with comments | « components/drive/resource_entry_conversion.h ('k') | components/drive/resource_entry_conversion_unittest.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698