| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 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/cloud_devices/common/printer_description.h" | 5 #include "components/cloud_devices/common/printer_description.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include <algorithm> | 9 #include <algorithm> |
| 10 #include <memory> | 10 #include <memory> |
| 11 #include <utility> | 11 #include <utility> |
| 12 | 12 |
| 13 #include "base/json/json_reader.h" | 13 #include "base/json/json_reader.h" |
| 14 #include "base/json/json_writer.h" | 14 #include "base/json/json_writer.h" |
| 15 #include "base/macros.h" | 15 #include "base/macros.h" |
| 16 #include "base/memory/ptr_util.h" |
| 16 #include "base/strings/string_util.h" | 17 #include "base/strings/string_util.h" |
| 17 #include "base/values.h" | 18 #include "base/values.h" |
| 18 #include "components/cloud_devices/common/cloud_device_description_consts.h" | 19 #include "components/cloud_devices/common/cloud_device_description_consts.h" |
| 19 #include "components/cloud_devices/common/description_items_inl.h" | 20 #include "components/cloud_devices/common/description_items_inl.h" |
| 20 | 21 |
| 21 namespace cloud_devices { | 22 namespace cloud_devices { |
| 22 | 23 |
| 23 namespace printer { | 24 namespace printer { |
| 24 | 25 |
| 25 namespace { | 26 namespace { |
| (...skipping 700 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 726 Interval new_interval(1, kMaxPageNumber); | 727 Interval new_interval(1, kMaxPageNumber); |
| 727 interval->GetInteger(kPageRangeStart, &new_interval.start); | 728 interval->GetInteger(kPageRangeStart, &new_interval.start); |
| 728 interval->GetInteger(kPageRangeEnd, &new_interval.end); | 729 interval->GetInteger(kPageRangeEnd, &new_interval.end); |
| 729 option->push_back(new_interval); | 730 option->push_back(new_interval); |
| 730 } | 731 } |
| 731 return true; | 732 return true; |
| 732 } | 733 } |
| 733 | 734 |
| 734 static void Save(const PageRange& option, base::DictionaryValue* dict) { | 735 static void Save(const PageRange& option, base::DictionaryValue* dict) { |
| 735 if (!option.empty()) { | 736 if (!option.empty()) { |
| 736 base::ListValue* list = new base::ListValue; | 737 auto list = base::MakeUnique<base::ListValue>(); |
| 737 dict->Set(kPageRangeInterval, list); | |
| 738 for (size_t i = 0; i < option.size(); ++i) { | 738 for (size_t i = 0; i < option.size(); ++i) { |
| 739 std::unique_ptr<base::DictionaryValue> interval( | 739 auto interval = base::MakeUnique<base::DictionaryValue>(); |
| 740 new base::DictionaryValue); | |
| 741 interval->SetInteger(kPageRangeStart, option[i].start); | 740 interval->SetInteger(kPageRangeStart, option[i].start); |
| 742 if (option[i].end < kMaxPageNumber) | 741 if (option[i].end < kMaxPageNumber) |
| 743 interval->SetInteger(kPageRangeEnd, option[i].end); | 742 interval->SetInteger(kPageRangeEnd, option[i].end); |
| 744 list->Append(std::move(interval)); | 743 list->Append(std::move(interval)); |
| 745 } | 744 } |
| 745 dict->Set(kPageRangeInterval, std::move(list)); |
| 746 } | 746 } |
| 747 } | 747 } |
| 748 }; | 748 }; |
| 749 | 749 |
| 750 class MediaTraits : public ItemsTraits<kOptionMediaSize> { | 750 class MediaTraits : public ItemsTraits<kOptionMediaSize> { |
| 751 public: | 751 public: |
| 752 static bool IsValid(const Media& option) { return option.IsValid(); } | 752 static bool IsValid(const Media& option) { return option.IsValid(); } |
| 753 | 753 |
| 754 static bool Load(const base::DictionaryValue& dict, Media* option) { | 754 static bool Load(const base::DictionaryValue& dict, Media* option) { |
| 755 std::string type_str; | 755 std::string type_str; |
| (...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 835 template class TicketItem<Margins, MarginsTraits>; | 835 template class TicketItem<Margins, MarginsTraits>; |
| 836 template class TicketItem<Dpi, DpiTraits>; | 836 template class TicketItem<Dpi, DpiTraits>; |
| 837 template class TicketItem<FitToPageType, FitToPageTraits>; | 837 template class TicketItem<FitToPageType, FitToPageTraits>; |
| 838 template class TicketItem<Media, MediaTraits>; | 838 template class TicketItem<Media, MediaTraits>; |
| 839 template class TicketItem<int32_t, CopiesTraits>; | 839 template class TicketItem<int32_t, CopiesTraits>; |
| 840 template class TicketItem<PageRange, PageRangeTraits>; | 840 template class TicketItem<PageRange, PageRangeTraits>; |
| 841 template class TicketItem<bool, CollateTraits>; | 841 template class TicketItem<bool, CollateTraits>; |
| 842 template class TicketItem<bool, ReverseTraits>; | 842 template class TicketItem<bool, ReverseTraits>; |
| 843 | 843 |
| 844 } // namespace cloud_devices | 844 } // namespace cloud_devices |
| OLD | NEW |