| Index: chrome/browser/resources/net_internals/dnsview.js
|
| ===================================================================
|
| --- chrome/browser/resources/net_internals/dnsview.js (revision 0)
|
| +++ chrome/browser/resources/net_internals/dnsview.js (revision 0)
|
| @@ -0,0 +1,82 @@
|
| +// Copyright (c) 2010 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +/**
|
| + * This view displays information on the host resolver:
|
| + *
|
| + * - Shows the current host cache contents.
|
| + * - Has a button to clear the host cache.
|
| + * - Shows the parameters used to construct the host cache (capacity, ttl).
|
| + *
|
| + * @constructor
|
| + */
|
| +function DnsView(mainBoxId,
|
| + cacheTbodyId,
|
| + clearCacheButtonId,
|
| + capacitySpanId,
|
| + ttlSuccessSpanId,
|
| + ttlFailureSpanId) {
|
| + DivView.call(this, mainBoxId);
|
| +
|
| + // Hook up the UI components.
|
| + this.cacheTbody_ = document.getElementById(cacheTbodyId);
|
| + this.capacitySpan_ = document.getElementById(capacitySpanId);
|
| + this.ttlSuccessSpan_ = document.getElementById(ttlSuccessSpanId);
|
| + this.ttlFailureSpan_ = document.getElementById(ttlFailureSpanId);
|
| +
|
| + var clearCacheButton = document.getElementById(clearCacheButtonId);
|
| + clearCacheButton.onclick =
|
| + g_browser.sendClearHostResolverCache.bind(g_browser);
|
| +
|
| + // Register to receive changes to the host resolver cache.
|
| + g_browser.addHostResolverCacheObserver(this);
|
| +}
|
| +
|
| +inherits(DnsView, DivView);
|
| +
|
| +DnsView.prototype.onHostResolverCacheChanged = function(hostResolverCache) {
|
| + // Clear the existing values.
|
| + this.capacitySpan_.innerHTML = '';
|
| + this.ttlSuccessSpan_.innerHTML = '';
|
| + this.ttlFailureSpan_.innerHTML = '';
|
| + this.cacheTbody_.innerHTML = '';
|
| +
|
| + // No cache.
|
| + if (!hostResolverCache)
|
| + return;
|
| +
|
| + // Fill in the basic cache information.
|
| + addTextNode(this.capacitySpan_, hostResolverCache.capacity);
|
| + addTextNode(this.ttlSuccessSpan_, hostResolverCache.ttl_success_ms);
|
| + addTextNode(this.ttlFailureSpan_, hostResolverCache.ttl_failure_ms);
|
| +
|
| + // Fill in the cache contents table.
|
| + for (var i = 0; i < hostResolverCache.entries.length; ++i) {
|
| + var e = hostResolverCache.entries[i];
|
| + var tr = addNode(this.cacheTbody_, 'tr');
|
| +
|
| + var hostnameCell = addNode(tr, 'td');
|
| + addTextNode(hostnameCell, e.hostname);
|
| +
|
| + var familyCell = addNode(tr, 'td');
|
| + addTextNode(familyCell, e.address_family);
|
| +
|
| + var addressesCell = addNode(tr, 'td');
|
| +
|
| + if (e.error != undefined) {
|
| + addTextNode(addressesCell, 'error: ' + e.error);
|
| + } else {
|
| + for (var j = 0; j < e.addresses.length; ++j) {
|
| + var address = e.addresses[j];
|
| + if (j != 0)
|
| + addNode(addressesCell, 'br');
|
| + addTextNode(addressesCell, address);
|
| + }
|
| + }
|
| +
|
| + var expiresDate = g_browser.convertTimeTicksToDate(e.expiration);
|
| + var expiresCell = addNode(tr, 'td');
|
| + addTextNode(expiresCell, expiresDate.toLocaleString());
|
| + }
|
| +};
|
|
|
| Property changes on: chrome/browser/resources/net_internals/dnsview.js
|
| ___________________________________________________________________
|
| Name: svn:eol-style
|
| + LF
|
|
|
|
|