|
|
|
@ -9,6 +9,7 @@ const StreamTake = require('./ws/StreamTake')
|
|
|
|
|
const Socket = require('./ws/Socket')
|
|
|
|
|
const { Unit } = require('libflitter')
|
|
|
|
|
const { NodeDescriptorType } = require('./enum')
|
|
|
|
|
const CombinedStream = require('combined-stream')
|
|
|
|
|
|
|
|
|
|
const { Buffer } = require('buffer')
|
|
|
|
|
const { Readable } = require('stream')
|
|
|
|
@ -86,10 +87,12 @@ class ServerUnit extends Unit {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
console.log('write stream', stream)
|
|
|
|
|
console.log('write data', { placeholder, position, length })
|
|
|
|
|
const encoded_buffer = await this._bufferStream(stream)
|
|
|
|
|
const decoded_buffer = new Buffer(encoded_buffer.toString(), 'base64')
|
|
|
|
|
|
|
|
|
|
stream.pipe(fs.createWriteStream(placeholder.path, { flags: 'r+', start: position }))
|
|
|
|
|
const combined_stream = CombinedStream.create()
|
|
|
|
|
combined_stream.append(decoded_buffer)
|
|
|
|
|
combined_stream.pipe(fs.createWriteStream(placeholder.path, { flags: 'r+', start: position }))
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
_bufferStream(stream) {
|
|
|
|
|