| Index: native_client_sdk/src/examples/api/network_monitor/example.js
|
| diff --git a/native_client_sdk/src/examples/api/network_monitor/example.js b/native_client_sdk/src/examples/api/network_monitor/example.js
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..981ac299a50c0bc8556c89b18481d081be97bd43
|
| --- /dev/null
|
| +++ b/native_client_sdk/src/examples/api/network_monitor/example.js
|
| @@ -0,0 +1,57 @@
|
| +// Copyright (c) 2013 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.
|
| +
|
| +// Called by the common.js module.
|
| +function moduleDidLoad() {
|
| + // The module is not hidden by default so we can easily see if the plugin
|
| + // failed to load.
|
| + common.hideModule();
|
| +}
|
| +
|
| +// Called by the common.js module.
|
| +function handleMessage(message) {
|
| + if (typeof message.data === "string") {
|
| + // We got an error from the NaCl module.
|
| + common.logMessage('Error: ' + message.data);
|
| + return;
|
| + }
|
| +
|
| + // We expect that the message looks like this:
|
| + // [{
|
| + // name: "...", displayName: "...", state: "...", type: "...", MTU: 1234,
|
| + // ipAddresses: ["...", "..."]},
|
| + // {...},
|
| + // ]
|
| + //
|
| + // Append a <tr> to the <tbody> for each interface in the array.
|
| + // The order in the .html file is:
|
| + // index, display name, name, type, state, ip addresses, MTU.
|
| + var net_interfaces = message.data;
|
| +
|
| + var tbodyEl = document.querySelector('tbody');
|
| + // First, clear the tbody.
|
| + while (tbodyEl.firstChild) {
|
| + tbodyEl.removeChild(tbodyEl.firstChild);
|
| + }
|
| +
|
| + for (var i = 0; i < net_interfaces.length; ++i) {
|
| + var net_interface = net_interfaces[i];
|
| + var trEl = document.createElement('tr');
|
| + trEl.appendChild(makeTd(i));
|
| + trEl.appendChild(makeTd(net_interface.displayName));
|
| + trEl.appendChild(makeTd(net_interface.name));
|
| + trEl.appendChild(makeTd(net_interface.type));
|
| + trEl.appendChild(makeTd(net_interface.state));
|
| + // ipAddresses is an array of strings. Let's join them with a comma.
|
| + trEl.appendChild(makeTd(net_interface.ipAddresses.join(', ')));
|
| + trEl.appendChild(makeTd(net_interface.MTU));
|
| + tbodyEl.appendChild(trEl);
|
| + }
|
| +}
|
| +
|
| +function makeTd(text) {
|
| + var tdEl = document.createElement('td');
|
| + tdEl.textContent = text;
|
| + return tdEl;
|
| +}
|
|
|