Skip to content

Commit d9a6c77

Browse files
committed
addressing PR comments
1 parent 76563b7 commit d9a6c77

File tree

2 files changed

+18
-17
lines changed

2 files changed

+18
-17
lines changed

lib/Shared.js

+17
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
var parseRange = require("range-parser");
22
var pathIsAbsolute = require("path-is-absolute");
33
var MemoryFileSystem = require("memory-fs");
4+
var HASH_REGEXP = /[0-9a-f]{10,}/;
45

56
module.exports = function Shared(context) {
67
var share = {
@@ -49,6 +50,7 @@ module.exports = function Shared(context) {
4950
}
5051
},
5152
handleRangeHeaders: function handleRangeHeaders(content, req, res) {
53+
//assumes express API. For other servers, need to add logic to access alternative header APIs
5254
res.setHeader("Accept-Ranges", "bytes");
5355
if(req.headers.range) {
5456
var ranges = parseRange(content.length, req.headers.range);
@@ -165,6 +167,21 @@ module.exports = function Shared(context) {
165167
context.forceRebuild = true;
166168
}
167169
},
170+
handleRequest: function(filename, processRequest, req) {
171+
// in lazy mode, rebuild on bundle request
172+
if(context.options.lazy && (!context.options.filename || context.options.filename.test(filename)))
173+
share.rebuild();
174+
if(HASH_REGEXP.test(filename)) {
175+
try {
176+
if(context.fs.statSync(filename).isFile()) {
177+
processRequest();
178+
return;
179+
}
180+
} catch(e) {
181+
}
182+
}
183+
share.ready(processRequest, req);
184+
},
168185
waitUntilValid: function(callback) {
169186
callback = callback || function() {};
170187
share.ready(callback, {});

middleware.js

+1-17
Original file line numberDiff line numberDiff line change
@@ -7,9 +7,6 @@ var getFilenameFromUrl = require("./lib/GetFilenameFromUrl");
77
var Shared = require("./lib/Shared");
88
var pathJoin = require("./lib/PathJoin");
99

10-
var HASH_REGEXP = /[0-9a-f]{10,}/;
11-
12-
1310
// constructor for the middleware
1411
module.exports = function(compiler, options) {
1512

@@ -42,21 +39,8 @@ module.exports = function(compiler, options) {
4239
var filename = getFilenameFromUrl(context.options.publicPath, context.compiler.outputPath, req.url);
4340
if(filename === false) return goNext();
4441

45-
// in lazy mode, rebuild on bundle request
46-
if(context.options.lazy && (!context.options.filename || context.options.filename.test(filename)))
47-
shared.rebuild();
4842

49-
if(HASH_REGEXP.test(filename)) {
50-
try {
51-
if(context.fs.statSync(filename).isFile()) {
52-
processRequest();
53-
return;
54-
}
55-
} catch(e) {
56-
}
57-
}
58-
// delay the request until we have a valid bundle
59-
shared.ready(processRequest, req);
43+
shared.handleRequest(filename, processRequest, req);
6044

6145
function processRequest() {
6246
try {

0 commit comments

Comments
 (0)