diff options
Diffstat (limited to 'deps/npm/node_modules/fstream/lib/file-writer.js')
-rw-r--r-- | deps/npm/node_modules/fstream/lib/file-writer.js | 105 |
1 files changed, 54 insertions, 51 deletions
diff --git a/deps/npm/node_modules/fstream/lib/file-writer.js b/deps/npm/node_modules/fstream/lib/file-writer.js index 5e9902a63..4c803d8d6 100644 --- a/deps/npm/node_modules/fstream/lib/file-writer.js +++ b/deps/npm/node_modules/fstream/lib/file-writer.js @@ -1,104 +1,107 @@ module.exports = FileWriter -var fs = require("graceful-fs") - , mkdir = require("mkdirp") - , Writer = require("./writer.js") - , inherits = require("inherits") - , EOF = {} +var fs = require('graceful-fs') +var Writer = require('./writer.js') +var inherits = require('inherits') +var EOF = {} inherits(FileWriter, Writer) function FileWriter (props) { - var me = this - if (!(me instanceof FileWriter)) throw new Error( - "FileWriter must be called as constructor.") + var self = this + if (!(self instanceof FileWriter)) { + throw new Error('FileWriter must be called as constructor.') + } // should already be established as a File type - if (props.type !== "File" || !props.File) { - throw new Error("Non-file type "+ props.type) + if (props.type !== 'File' || !props.File) { + throw new Error('Non-file type ' + props.type) } - me._buffer = [] - me._bytesWritten = 0 + self._buffer = [] + self._bytesWritten = 0 Writer.call(this, props) } FileWriter.prototype._create = function () { - var me = this - if (me._stream) return + var self = this + if (self._stream) return var so = {} - if (me.props.flags) so.flags = me.props.flags + if (self.props.flags) so.flags = self.props.flags so.mode = Writer.filemode - if (me._old && me._old.blksize) so.bufferSize = me._old.blksize + if (self._old && self._old.blksize) so.bufferSize = self._old.blksize - me._stream = fs.createWriteStream(me._path, so) + self._stream = fs.createWriteStream(self._path, so) - me._stream.on("open", function (fd) { - // console.error("FW open", me._buffer, me._path) - me.ready = true - me._buffer.forEach(function (c) { - if (c === EOF) me._stream.end() - else me._stream.write(c) + self._stream.on('open', function () { + // console.error("FW open", self._buffer, self._path) + self.ready = true + self._buffer.forEach(function (c) { + if (c === EOF) self._stream.end() + else self._stream.write(c) }) - me.emit("ready") + self.emit('ready') // give this a kick just in case it needs it. - me.emit("drain") + self.emit('drain') }) - me._stream.on("drain", function () { me.emit("drain") }) + self._stream.on('error', function (er) { self.emit('error', er) }) + + self._stream.on('drain', function () { self.emit('drain') }) - me._stream.on("close", function () { - // console.error("\n\nFW Stream Close", me._path, me.size) - me._finish() + self._stream.on('close', function () { + // console.error('\n\nFW Stream Close', self._path, self.size) + self._finish() }) } FileWriter.prototype.write = function (c) { - var me = this + var self = this - me._bytesWritten += c.length + self._bytesWritten += c.length - if (!me.ready) { - if (!Buffer.isBuffer(c) && typeof c !== 'string') + if (!self.ready) { + if (!Buffer.isBuffer(c) && typeof c !== 'string') { throw new Error('invalid write data') - me._buffer.push(c) + } + self._buffer.push(c) return false } - var ret = me._stream.write(c) - // console.error("\t-- fw wrote, _stream says", ret, me._stream._queue.length) + var ret = self._stream.write(c) + // console.error('\t-- fw wrote, _stream says', ret, self._stream._queue.length) // allow 2 buffered writes, because otherwise there's just too // much stop and go bs. - if (ret === false && me._stream._queue) { - return me._stream._queue.length <= 2; + if (ret === false && self._stream._queue) { + return self._stream._queue.length <= 2 } else { - return ret; + return ret } } FileWriter.prototype.end = function (c) { - var me = this + var self = this - if (c) me.write(c) + if (c) self.write(c) - if (!me.ready) { - me._buffer.push(EOF) + if (!self.ready) { + self._buffer.push(EOF) return false } - return me._stream.end() + return self._stream.end() } FileWriter.prototype._finish = function () { - var me = this - if (typeof me.size === "number" && me._bytesWritten != me.size) { - me.error( - "Did not get expected byte count.\n" + - "expect: " + me.size + "\n" + - "actual: " + me._bytesWritten) + var self = this + if (typeof self.size === 'number' && self._bytesWritten !== self.size) { + self.error( + 'Did not get expected byte count.\n' + + 'expect: ' + self.size + '\n' + + 'actual: ' + self._bytesWritten) } - Writer.prototype._finish.call(me) + Writer.prototype._finish.call(self) } |