Home | History | Annotate | Download | only in sessions
      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 "sync/internal_api/public/sessions/status_counters.h"
      6 
      7 #include "base/json/json_string_value_serializer.h"
      8 #include "base/values.h"
      9 
     10 namespace syncer {
     11 
     12 StatusCounters::StatusCounters()
     13   : num_entries(0),
     14     num_entries_and_tombstones(0) {}
     15 
     16 StatusCounters::~StatusCounters() {}
     17 
     18 scoped_ptr<base::DictionaryValue> StatusCounters::ToValue() const {
     19   scoped_ptr<base::DictionaryValue> value(new base::DictionaryValue());
     20   value->SetInteger("numEntries", num_entries);
     21   value->SetInteger("numEntriesAndTombstones", num_entries_and_tombstones);
     22   return value.Pass();
     23 }
     24 
     25 std::string StatusCounters::ToString() const {
     26   std::string result;
     27   scoped_ptr<base::DictionaryValue> value = ToValue();
     28   JSONStringValueSerializer serializer(&result);
     29   serializer.Serialize(*value);
     30   return result;
     31 }
     32 
     33 }  // namespace syncer
     34