michael@0: ver1manifest = michael@0: "CACHE MANIFEST\n" + michael@0: "# v1\n" + michael@0: "\n" + michael@0: "http://mochi.test:8888/tests/dom/tests/mochitest/ajax/offline/offlineTests.js\n" + michael@0: "http://mochi.test:8888/tests/dom/tests/mochitest/ajax/offline/updatingIframe.sjs\n" + michael@0: "\n" + michael@0: "FALLBACK:\n" + michael@0: "namespace1/ fallback.html\n" + michael@0: "\n" + michael@0: "NETWORK:\n" + michael@0: "onwhitelist.html\n"; michael@0: michael@0: ver2manifest = michael@0: "CACHE MANIFEST\n" + michael@0: "# v2\n" + michael@0: "\n" + michael@0: "http://mochi.test:8888/tests/SimpleTest/SimpleTest.js\n" + michael@0: "http://mochi.test:8888/tests/dom/tests/mochitest/ajax/offline/offlineTests.js\n" + michael@0: "http://mochi.test:8888/tests/dom/tests/mochitest/ajax/offline/updatingIframe.sjs" + michael@0: "\n" + michael@0: "FALLBACK:\n" + michael@0: "namespace1/ fallback.html\n" + michael@0: "namespace1/sub/ fallback2.html\n"; michael@0: michael@0: ver3manifest = michael@0: "CACHE MANIFEST\n" + michael@0: "# v3\n" + michael@0: "\n" + michael@0: "http://mochi.test:8888/tests/dom/tests/mochitest/ajax/offline/offlineTests.js\n" + michael@0: "http://mochi.test:8888/tests/dom/tests/mochitest/ajax/offline/updatingIframe.sjs" + michael@0: "\n" + michael@0: "FALLBACK:\n" + michael@0: "namespace1/sub fallback2.html\n" + michael@0: "\n" + michael@0: "NETWORK:\n" + michael@0: "onwhitelist.html\n"; michael@0: michael@0: function handleRequest(request, response) michael@0: { michael@0: var match = request.queryString.match(/^state=(.*)$/); michael@0: if (match) michael@0: { michael@0: response.setStatusLine(request.httpVersion, 204, "No content"); michael@0: setState("offline.updatingManifest", match[1]); michael@0: } michael@0: michael@0: if (request.queryString == "") michael@0: { michael@0: response.setStatusLine(request.httpVersion, 200, "Ok"); michael@0: response.setHeader("Content-Type", "text/cache-manifest"); michael@0: response.setHeader("Cache-Control", "no-cache"); michael@0: switch (getState("offline.updatingManifest")) michael@0: { michael@0: case "": // The default value michael@0: response.write(ver1manifest + "\n#" + getState("offline.updatingManifest")); michael@0: break; michael@0: case "second": michael@0: response.write(ver2manifest + "\n#" + getState("offline.updatingManifest")); michael@0: break; michael@0: case "third": michael@0: response.write(ver3manifest + "\n#" + getState("offline.updatingManifest")); michael@0: break; michael@0: } michael@0: } michael@0: }