Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(209)

Unified Diff: native_client_sdk/src/examples/demo/nacl_io/example.js

Issue 306973002: [NaCl SDK] rename nacl_io demo. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: native_client_sdk/src/examples/demo/nacl_io/example.js
diff --git a/native_client_sdk/src/examples/demo/nacl_io/example.js b/native_client_sdk/src/examples/demo/nacl_io/example.js
deleted file mode 100644
index 128bcd037013552b9f62742984e069d5f908498e..0000000000000000000000000000000000000000
--- a/native_client_sdk/src/examples/demo/nacl_io/example.js
+++ /dev/null
@@ -1,349 +0,0 @@
-// Copyright (c) 2012 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.
-
-function moduleDidLoad() {
- common.hideModule();
-}
-
-function $(id) {
- return document.getElementById(id);
-}
-
-// Called by the common.js module.
-function domContentLoaded(name, tc, config, width, height) {
- navigator.webkitPersistentStorage.requestQuota(1024 * 1024,
- function(bytes) {
- common.updateStatus(
- 'Allocated ' + bytes + ' bytes of persistant storage.');
- common.attachDefaultListeners();
- common.createNaClModule(name, tc, config, width, height);
- },
- function(e) { alert('Failed to allocate space') });
-}
-
-// Called by the common.js module.
-function attachListeners() {
- var radioEls = document.querySelectorAll('input[type="radio"]');
- for (var i = 0; i < radioEls.length; ++i) {
- radioEls[i].addEventListener('click', onRadioClicked);
- }
-
- // Wire up the 'click' event for each function's button.
- var functionEls = document.querySelectorAll('.function');
- for (var i = 0; i < functionEls.length; ++i) {
- var functionEl = functionEls[i];
- var id = functionEl.getAttribute('id');
- var buttonEl = functionEl.querySelector('button');
-
- // The function name matches the element id.
- var func = window[id];
- buttonEl.addEventListener('click', func);
- }
-
- $('pipe_input_box').addEventListener('keypress', onPipeInput)
- $('pipe_output').disabled = true;
-
- $('pipe_name').addEventListener('change',
- function() { $('pipe_output').value = ''; })
-}
-
-// Called with keypress events on the pipe input box
-function onPipeInput(e) {
- // Create an arraybuffer containing the 16-bit char code
- // from the keypress event.
- var buffer = new ArrayBuffer(1*2);
- var bufferView = new Uint16Array(buffer);
- bufferView[0] = e.charCode;
-
- // Pass the buffer in a dictionary over the NaCl module
- var pipeSelect = $('pipe_name');
- var pipeName = pipeSelect[pipeSelect.selectedIndex].value;
- var message = {
- pipe: pipeName,
- operation: 'write',
- payload: buffer,
- };
- nacl_module.postMessage(message);
- e.preventDefault();
- return false;
-}
-
-function onRadioClicked(e) {
- var divId = this.id.slice(5); // skip "radio"
- var functionEls = document.querySelectorAll('.function');
- for (var i = 0; i < functionEls.length; ++i) {
- var visible = functionEls[i].id === divId;
- if (functionEls[i].id === divId)
- functionEls[i].removeAttribute('hidden');
- else
- functionEls[i].setAttribute('hidden', '');
- }
-}
-
-function addNameToSelectElements(cssClass, handle, name) {
- var text = '[' + handle + '] ' + name;
- var selectEls = document.querySelectorAll(cssClass);
- for (var i = 0; i < selectEls.length; ++i) {
- var optionEl = document.createElement('option');
- optionEl.setAttribute('value', handle);
- optionEl.appendChild(document.createTextNode(text));
- selectEls[i].appendChild(optionEl);
- }
-}
-
-function removeNameFromSelectElements(cssClass, handle) {
- var optionEls = document.querySelectorAll(cssClass + ' > option');
- for (var i = 0; i < optionEls.length; ++i) {
- var optionEl = optionEls[i];
- if (optionEl.value == handle) {
- var selectEl = optionEl.parentNode;
- selectEl.removeChild(optionEl);
- }
- }
-}
-
-var filehandle_map = {};
-var dirhandle_map = {};
-
-function fopen(e) {
- var filename = $('fopenFilename').value;
- var access = $('fopenMode').value;
- postCall('fopen', filename, access, function(filename, filehandle) {
- filehandle_map[filehandle] = filename;
-
- addNameToSelectElements('.file-handle', filehandle, filename);
- common.logMessage('File ' + filename + ' opened successfully.');
- });
-}
-
-function fclose(e) {
- var filehandle = parseInt($('fcloseHandle').value, 10);
- postCall('fclose', filehandle, function(filehandle) {
- var filename = filehandle_map[filehandle];
- removeNameFromSelectElements('.file-handle', filehandle, filename);
- common.logMessage('File ' + filename + ' closed successfully.');
- });
-}
-
-function fread(e) {
- var filehandle = parseInt($('freadHandle').value, 10);
- var numBytes = parseInt($('freadBytes').value, 10);
- postCall('fread', filehandle, numBytes, function(filehandle, data) {
- var filename = filehandle_map[filehandle];
- common.logMessage('Read "' + data + '" from file ' + filename + '.');
- });
-}
-
-function fwrite(e) {
- var filehandle = parseInt($('fwriteHandle').value, 10);
- var data = $('fwriteData').value;
- postCall('fwrite', filehandle, data, function(filehandle, bytesWritten) {
- var filename = filehandle_map[filehandle];
- common.logMessage('Wrote ' + bytesWritten + ' bytes to file ' + filename +
- '.');
- });
-}
-
-function fseek(e) {
- var filehandle = parseInt($('fseekHandle').value, 10);
- var offset = parseInt($('fseekOffset').value, 10);
- var whence = parseInt($('fseekWhence').value, 10);
- postCall('fseek', filehandle, offset, whence, function(filehandle, filepos) {
- var filename = filehandle_map[filehandle];
- common.logMessage('Seeked to location ' + filepos + ' in file ' + filename +
- '.');
- });
-}
-
-function fflush(e) {
- var filehandle = parseInt($('fflushHandle').value, 10);
- postCall('fflush', filehandle, function(filehandle, filepos) {
- var filename = filehandle_map[filehandle];
- common.logMessage('flushed ' + filename + '.');
- });
-}
-
-function stat(e) {
- var filename = $('statFilename').value;
- postCall('stat', filename, function(filename, size) {
- common.logMessage('File ' + filename + ' has size ' + size + '.');
- });
-}
-
-function opendir(e) {
- var dirname = $('opendirDirname').value;
- postCall('opendir', dirname, function(dirname, dirhandle) {
- dirhandle_map[dirhandle] = dirname;
-
- addNameToSelectElements('.dir-handle', dirhandle, dirname);
- common.logMessage('Directory ' + dirname + ' opened successfully.');
- });
-}
-
-function readdir(e) {
- var dirhandle = parseInt($('readdirHandle').value, 10);
- postCall('readdir', dirhandle, function(dirhandle, ino, name) {
- var dirname = dirhandle_map[dirhandle];
- if (ino === undefined) {
- common.logMessage('End of directory.');
- } else {
- common.logMessage('Read entry ("' + name + '", ino = ' + ino +
- ') from directory ' + dirname + '.');
- }
- });
-}
-
-function closedir(e) {
- var dirhandle = parseInt($('closedirHandle').value, 10);
- postCall('closedir', dirhandle, function(dirhandle) {
- var dirname = dirhandle_map[dirhandle];
- delete dirhandle_map[dirhandle];
-
- removeNameFromSelectElements('.dir-handle', dirhandle, dirname);
- common.logMessage('Directory ' + dirname + ' closed successfully.');
- });
-}
-
-function mkdir(e) {
- var dirname = $('mkdirDirname').value;
- var mode = parseInt($('mkdirMode').value, 10);
- postCall('mkdir', dirname, mode, function(dirname) {
- common.logMessage('Directory ' + dirname + ' created successfully.');
- });
-}
-
-function rmdir(e) {
- var dirname = $('rmdirDirname').value;
- postCall('rmdir', dirname, function(dirname) {
- common.logMessage('Directory ' + dirname + ' removed successfully.');
- });
-}
-
-function chdir(e) {
- var dirname = $('chdirDirname').value;
- postCall('chdir', dirname, function(dirname) {
- common.logMessage('Changed directory to: ' + dirname + '.');
- });
-}
-
-function getcwd(e) {
- postCall('getcwd', function(dirname) {
- common.logMessage('getcwd: ' + dirname + '.');
- });
-}
-
-function getaddrinfo(e) {
- var name = $('getaddrinfoName').value;
- var family = $('getaddrinfoFamily').value;
- postCall('getaddrinfo', name, family, function(name, addrType) {
- common.logMessage('getaddrinfo returned successfully');
- common.logMessage('ai_cannonname = ' + name + '.');
- var count = 1;
- for (var i = 1; i < arguments.length; i+=2) {
- var msg = 'Address number ' + count + ' = ' + arguments[i] +
- ' (' + arguments[i+1] + ')';
- common.logMessage(msg);
- count += 1;
- }
- });
-}
-
-function gethostbyname(e) {
- var name = $('gethostbynameName').value;
- postCall('gethostbyname', name, function(name, addrType) {
- common.logMessage('gethostbyname returned successfully');
- common.logMessage('h_name = ' + name + '.');
- common.logMessage('h_addr_type = ' + addrType + '.');
- for (var i = 2; i < arguments.length; i++) {
- common.logMessage('Address number ' + (i-1) + ' = ' + arguments[i] + '.');
- }
- });
-}
-
-function connect(e) {
- var host = $('connectHost').value;
- var port = parseInt($('connectPort').value, 10);
- postCall('connect', host, port, function(sockhandle) {
- common.logMessage('connected');
- addNameToSelectElements('.sock-handle', sockhandle, '[socket]');
- });
-}
-
-function recv(e) {
- var handle = parseInt($('recvHandle').value, 10);
- var bufferSize = parseInt($('recvBufferSize').value, 10);
- postCall('recv', handle, bufferSize, function(messageLen, message) {
- common.logMessage("received " + messageLen + ' bytes: ' + message);
- });
-}
-
-function send(e) {
- var handle = parseInt($('sendHandle').value, 10);
- var message = $('sendMessage').value;
- postCall('send', handle, message, function(sentBytes) {
- common.logMessage("sent bytes: " + sentBytes);
- });
-}
-
-function close(e) {
- var handle = parseInt($('closeHandle').value, 10);
- postCall('close', handle, function(sock) {
- removeNameFromSelectElements('.sock-handle', sock, "[socket]");
- common.logMessage("closed socket: " + sock);
- });
-}
-
-var funcToCallback = {};
-
-function postCall(func) {
- var callback = arguments[arguments.length - 1];
- funcToCallback[func] = callback;
-
- nacl_module.postMessage({
- cmd: func,
- args: Array.prototype.slice.call(arguments, 1, -1)
- });
-}
-
-function ArrayBufferToString(buf) {
- return String.fromCharCode.apply(null, new Uint16Array(buf));
-}
-
-// Called by the common.js module.
-function handleMessage(message_event) {
- var data = message_event.data;
- if ((typeof(data) === 'string' || data instanceof String)) {
- common.logMessage(data);
- } else if (data instanceof Object) {
- var pipeName = data['pipe']
- if (pipeName !== undefined) {
- // Message for JavaScript I/O pipe
- var operation = data['operation'];
- if (operation == 'write') {
- $('pipe_output').value += ArrayBufferToString(data['payload']);
- } else if (operation == 'ack') {
- common.logMessage(pipeName + ": ack:" + data['payload']);
- } else {
- common.logMessage('Got unexpected pipe operation: ' + operation);
- }
- } else {
- // Result from a function call.
- var params = data.args;
- var funcName = data.cmd;
- var callback = funcToCallback[funcName];
-
- if (!callback) {
- common.logMessage('Error: Bad message ' + funcName +
- ' received from NaCl module.');
- return;
- }
-
- delete funcToCallback[funcName];
- callback.apply(null, params);
- }
- } else {
- common.logMessage('Error: Unknow message `' + data +
- '` received from NaCl module.');
- }
-}
« no previous file with comments | « native_client_sdk/src/examples/demo/nacl_io/example.dsc ('k') | native_client_sdk/src/examples/demo/nacl_io/handlers.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698