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
11namespace net {
12
13AddressListNetLogParam::AddressListNetLogParam(const AddressList& address_list)
14    : address_list_(address_list) {
15}
16
17Value* 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