Browse Source

Merge pull request #4990 from fkaelberer/refactor_chunked_stream

Minor refactoring of chunked_stream.js
Brendan Dahl 10 years ago
parent
commit
367794f0c7
  1. 22
      src/core/chunked_stream.js

22
src/core/chunked_stream.js

@ -131,14 +131,9 @@ var ChunkedStream = (function ChunkedStreamClosure() {
}, },
nextEmptyChunk: function ChunkedStream_nextEmptyChunk(beginChunk) { nextEmptyChunk: function ChunkedStream_nextEmptyChunk(beginChunk) {
var chunk, n; var chunk, numChunks = this.numChunks;
for (chunk = beginChunk, n = this.numChunks; chunk < n; ++chunk) { for (var i = 0; i < numChunks; ++i) {
if (!this.loadedChunks[chunk]) { chunk = (beginChunk + i) % numChunks; // Wrap around to beginning
return chunk;
}
}
// Wrap around to beginning
for (chunk = 0; chunk < beginChunk; ++chunk) {
if (!this.loadedChunks[chunk]) { if (!this.loadedChunks[chunk]) {
return chunk; return chunk;
} }
@ -415,7 +410,7 @@ var ChunkedStreamManager = (function ChunkedStreamManagerClosure() {
this.requestChunks(chunksToRequest, callback); this.requestChunks(chunksToRequest, callback);
}, },
// Groups a sorted array of chunks into as few continguous larger // Groups a sorted array of chunks into as few contiguous larger
// chunks as possible // chunks as possible
groupChunks: function ChunkedStreamManager_groupChunks(chunks) { groupChunks: function ChunkedStreamManager_groupChunks(chunks) {
var groupedChunks = []; var groupedChunks = [];
@ -540,15 +535,6 @@ var ChunkedStreamManager = (function ChunkedStreamManagerClosure() {
}, },
getEndChunk: function ChunkedStreamManager_getEndChunk(end) { getEndChunk: function ChunkedStreamManager_getEndChunk(end) {
if (end % this.chunkSize === 0) {
return end / this.chunkSize;
}
// 0 -> 0
// 1 -> 1
// 99 -> 1
// 100 -> 1
// 101 -> 2
var chunk = Math.floor((end - 1) / this.chunkSize) + 1; var chunk = Math.floor((end - 1) / this.chunkSize) + 1;
return chunk; return chunk;
} }

Loading…
Cancel
Save