Remove callback argument to FileWriteStream.prototype.write
authorRyan Dahl <ry@tinyclouds.org>
Wed, 28 Apr 2010 00:24:32 +0000 (17:24 -0700)
committerRyan Dahl <ry@tinyclouds.org>
Wed, 28 Apr 2010 00:26:10 +0000 (17:26 -0700)
doc/api.markdown
lib/fs.js
test/simple/test-file-write-stream.js

index 6021e23..3459e12 100644 (file)
@@ -1509,14 +1509,13 @@ Returns a new FileWriteStream object.
 A boolean that is `true` by default, but turns `false` after an `'error'`
 occurred or `end()` / `destroy()` was called.
 
-### writeStream.write(data)
+### writeStream.write(data, encoding='utf8')
 
 Returns `true` if the data was flushed to the kernel, and `false` if it was
 queued up for being written later. A `'drain'` will fire after all queued data
 has been written.
 
-You can also specify `callback` to be notified when the data from this write
-has been flushed. The first param is `err`, the second is `bytesWritten`.
+The second optional parameter specifies the encoding of for the string.
 
 ### writeStream.end()
 
index 48030de..963ac6a 100644 (file)
--- a/lib/fs.js
+++ b/lib/fs.js
@@ -655,9 +655,8 @@ FileWriteStream.prototype.flush = function () {
 
   this.busy = true;
 
-  var
-    method = args.shift(),
-    cb = args.pop();
+  var method = args.shift(),
+      cb = args.pop();
 
   var self = this;
 
@@ -703,12 +702,14 @@ FileWriteStream.prototype.flush = function () {
 };
 
 
-FileWriteStream.prototype.write = function(data, cb) {
+FileWriteStream.prototype.write = function(data, encoding) {
   if (!this.writeable) {
     throw new Error('stream not writeable');
   }
 
-  this._queue.push([fs.write, data, undefined, this.encoding, cb]);
+  // TODO handle Buffer
+
+  this._queue.push([fs.write, data, undefined, encoding || 'utf8', null]);
   this.flush();
 
   return false;
index 51beb8c..d1efb17 100644 (file)
@@ -13,7 +13,6 @@ var
     drain: -2,
     close: -1,
     endCb: -1,
-    write: -11,
   };
 
 file
@@ -48,10 +47,7 @@ file
 
 for (var i = 0; i < 11; i++) {
   (function(i) {
-    assert.strictEqual(false, file.write(i, function(err, bytesWritten) {
-      callbacks.write++;
-      assert.equal(new String(i).length, bytesWritten);
-    }));
+    assert.strictEqual(false, file.write(i));
   })(i);
 }