| OLD | NEW |
| 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 "chrome/browser/chromeos/gdata/drive_api_parser.h" | 5 #include "chrome/browser/chromeos/gdata/drive_api_parser.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 | 8 |
| 9 #include "base/basictypes.h" | 9 #include "base/basictypes.h" |
| 10 #include "base/file_path.h" | 10 #include "base/file_path.h" |
| (...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 91 const char kModifiedByMeDate[] = "modifiedByMeDate"; | 91 const char kModifiedByMeDate[] = "modifiedByMeDate"; |
| 92 const char kDownloadUrl[] = "downloadUrl"; | 92 const char kDownloadUrl[] = "downloadUrl"; |
| 93 const char kFileExtension[] = "fileExtension"; | 93 const char kFileExtension[] = "fileExtension"; |
| 94 const char kMd5Checksum[] = "md5Checksum"; | 94 const char kMd5Checksum[] = "md5Checksum"; |
| 95 const char kFileSize[] = "fileSize"; | 95 const char kFileSize[] = "fileSize"; |
| 96 const char kAlternateLink[] = "alternateLink"; | 96 const char kAlternateLink[] = "alternateLink"; |
| 97 const char kEmbedLink[] = "embedLink"; | 97 const char kEmbedLink[] = "embedLink"; |
| 98 const char kParents[] = "parents"; | 98 const char kParents[] = "parents"; |
| 99 const char kThumbnailLink[] = "thumbnailLink"; | 99 const char kThumbnailLink[] = "thumbnailLink"; |
| 100 const char kWebContentLink[] = "webContentLink"; | 100 const char kWebContentLink[] = "webContentLink"; |
| 101 const char kLabels[] = "labels"; |
| 102 // These 5 flags are defined under |labels|. |
| 103 const char kLabelStarred[] = "starred"; |
| 104 const char kLabelHidden[] = "hidden"; |
| 105 const char kLabelTrashed[] = "trashed"; |
| 106 const char kLabelRestricted[] = "restricted"; |
| 107 const char kLabelViewed[] = "viewed"; |
| 101 | 108 |
| 102 const char kDriveFolderMimeType[] = "application/vnd.google-apps.folder"; | 109 const char kDriveFolderMimeType[] = "application/vnd.google-apps.folder"; |
| 103 | 110 |
| 104 // Files List | 111 // Files List |
| 105 // https://developers.google.com/drive/v2/reference/files/list | 112 // https://developers.google.com/drive/v2/reference/files/list |
| 106 const char kFileListKind[] = "drive#fileList"; | 113 const char kFileListKind[] = "drive#fileList"; |
| 107 const char kNextPageToken[] = "nextPageToken"; | 114 const char kNextPageToken[] = "nextPageToken"; |
| 108 const char kNextLink[] = "nextLink"; | 115 const char kNextLink[] = "nextLink"; |
| 109 | 116 |
| 110 // Change Resource | 117 // Change Resource |
| (...skipping 265 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 376 // static | 383 // static |
| 377 void FileResource::RegisterJSONConverter( | 384 void FileResource::RegisterJSONConverter( |
| 378 base::JSONValueConverter<FileResource>* converter) { | 385 base::JSONValueConverter<FileResource>* converter) { |
| 379 converter->RegisterStringField(kId, &FileResource::file_id_); | 386 converter->RegisterStringField(kId, &FileResource::file_id_); |
| 380 converter->RegisterStringField(kETag, &FileResource::etag_); | 387 converter->RegisterStringField(kETag, &FileResource::etag_); |
| 381 converter->RegisterCustomField<GURL>(kSelfLink, | 388 converter->RegisterCustomField<GURL>(kSelfLink, |
| 382 &FileResource::self_link_, | 389 &FileResource::self_link_, |
| 383 GetGURLFromString); | 390 GetGURLFromString); |
| 384 converter->RegisterStringField(kTitle, &FileResource::title_); | 391 converter->RegisterStringField(kTitle, &FileResource::title_); |
| 385 converter->RegisterStringField(kMimeType, &FileResource::mime_type_); | 392 converter->RegisterStringField(kMimeType, &FileResource::mime_type_); |
| 393 converter->RegisterNestedField(kLabels, &FileResource::labels_); |
| 386 converter->RegisterCustomField<base::Time>( | 394 converter->RegisterCustomField<base::Time>( |
| 387 kCreatedDate, | 395 kCreatedDate, |
| 388 &FileResource::created_date_, | 396 &FileResource::created_date_, |
| 389 &gdata::util::GetTimeFromString); | 397 &gdata::util::GetTimeFromString); |
| 390 converter->RegisterCustomField<base::Time>( | 398 converter->RegisterCustomField<base::Time>( |
| 391 kModifiedByMeDate, | 399 kModifiedByMeDate, |
| 392 &FileResource::modified_by_me_date_, | 400 &FileResource::modified_by_me_date_, |
| 393 &gdata::util::GetTimeFromString); | 401 &gdata::util::GetTimeFromString); |
| 394 converter->RegisterCustomField<GURL>(kDownloadUrl, | 402 converter->RegisterCustomField<GURL>(kDownloadUrl, |
| 395 &FileResource::download_url_, | 403 &FileResource::download_url_, |
| (...skipping 155 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 551 | 559 |
| 552 bool ChangeList::Parse(const base::Value& value) { | 560 bool ChangeList::Parse(const base::Value& value) { |
| 553 base::JSONValueConverter<ChangeList> converter; | 561 base::JSONValueConverter<ChangeList> converter; |
| 554 if (!converter.Convert(value, this)) { | 562 if (!converter.Convert(value, this)) { |
| 555 LOG(ERROR) << "Unable to parse: Invalid ChangeList"; | 563 LOG(ERROR) << "Unable to parse: Invalid ChangeList"; |
| 556 return false; | 564 return false; |
| 557 } | 565 } |
| 558 return true; | 566 return true; |
| 559 } | 567 } |
| 560 | 568 |
| 569 |
| 570 //////////////////////////////////////////////////////////////////////////////// |
| 571 // FileLabels implementation |
| 572 |
| 573 FileLabels::FileLabels() |
| 574 : starred_(false), |
| 575 hidden_(false), |
| 576 trashed_(false), |
| 577 restricted_(false), |
| 578 viewed_(false) {} |
| 579 |
| 580 FileLabels::~FileLabels() {} |
| 581 |
| 582 // static |
| 583 void FileLabels::RegisterJSONConverter( |
| 584 base::JSONValueConverter<FileLabels>* converter) { |
| 585 converter->RegisterBoolField(kLabelStarred, &FileLabels::starred_); |
| 586 converter->RegisterBoolField(kLabelHidden, &FileLabels::hidden_); |
| 587 converter->RegisterBoolField(kLabelTrashed, &FileLabels::trashed_); |
| 588 converter->RegisterBoolField(kLabelRestricted, &FileLabels::restricted_); |
| 589 converter->RegisterBoolField(kLabelViewed, &FileLabels::viewed_); |
| 590 } |
| 591 |
| 592 // static |
| 593 scoped_ptr<FileLabels> FileLabels::CreateFrom(const base::Value& value) { |
| 594 scoped_ptr<FileLabels> resource(new FileLabels()); |
| 595 if (!resource->Parse(value)) { |
| 596 LOG(ERROR) << "Unable to create: Invalid FileLabels JSON!"; |
| 597 return scoped_ptr<FileLabels>(NULL); |
| 598 } |
| 599 return resource.Pass(); |
| 600 } |
| 601 |
| 602 bool FileLabels::Parse(const base::Value& value) { |
| 603 base::JSONValueConverter<FileLabels> converter; |
| 604 if (!converter.Convert(value, this)) { |
| 605 LOG(ERROR) << "Unable to parse: Invalid FileLabels"; |
| 606 return false; |
| 607 } |
| 608 return true; |
| 609 } |
| 610 |
| 561 } // namespace gdata | 611 } // namespace gdata |
| OLD | NEW |