You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
37 lines
915 B
37 lines
915 B
4 years ago
|
// Just get the stats, and then don't do anything.
|
||
|
// You can't really "read" from a socket. You "connect" to it.
|
||
|
// Mostly, this is here so that reading a dir with a socket in it
|
||
|
// doesn't blow up.
|
||
|
|
||
|
module.exports = SocketReader
|
||
|
|
||
|
var inherits = require('inherits')
|
||
|
var Reader = require('./reader.js')
|
||
|
|
||
|
inherits(SocketReader, Reader)
|
||
|
|
||
|
function SocketReader (props) {
|
||
|
var self = this
|
||
|
if (!(self instanceof SocketReader)) {
|
||
|
throw new Error('SocketReader must be called as constructor.')
|
||
|
}
|
||
|
|
||
|
if (!(props.type === 'Socket' && props.Socket)) {
|
||
|
throw new Error('Non-socket type ' + props.type)
|
||
|
}
|
||
|
|
||
|
Reader.call(self, props)
|
||
|
}
|
||
|
|
||
|
SocketReader.prototype._read = function () {
|
||
|
var self = this
|
||
|
if (self._paused) return
|
||
|
// basically just a no-op, since we got all the info we have
|
||
|
// from the _stat method
|
||
|
if (!self._ended) {
|
||
|
self.emit('end')
|
||
|
self.emit('close')
|
||
|
self._ended = true
|
||
|
}
|
||
|
}
|