1 // Copyright (c) 2010 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 "net/base/address_list_net_log_param.h" 6 7 #include "base/values.h" 8 #include "net/base/net_util.h" 9 #include "net/base/sys_addrinfo.h" 10 11 namespace net { 12 13 AddressListNetLogParam::AddressListNetLogParam(const AddressList& address_list) 14 : address_list_(address_list) { 15 } 16 17 Value* AddressListNetLogParam::ToValue() const { 18 DictionaryValue* dict = new DictionaryValue(); 19 ListValue* list = new ListValue(); 20 21 for (const addrinfo* head = address_list_.head(); 22 head != NULL ; head = head->ai_next) { 23 list->Append(Value::CreateStringValue(NetAddressToStringWithPort(head))); 24 } 25 26 dict->Set("address_list", list); 27 return dict; 28 } 29 30 } // namespace 31