Making periodic Synchronisation

This commit is contained in:
Fabian 2019-05-31 22:16:16 +02:00
parent c3c36504ab
commit e5b0c96434
2 changed files with 9 additions and 11 deletions

View File

@ -48,19 +48,12 @@ var Types;
Types[Types["REFRESH"] = 2] = "REFRESH";
})(Types || (Types = {}));
let rules = [
{
let rules = [{
match: (url) => {
return url.indexOf("/api/") >= 0;
},
type: Types.NOCACHE
},
{
match: (url) => {
return url.indexOf("/version_hash") >= 0;
},
type: Types.NOCACHE
},
{
match: () => {
return true;
@ -79,7 +72,7 @@ self.addEventListener('fetch', (evt) => {
return fromCache(evt.request);
case Types.REFRESH:
return refresh(evt.request).then(r => {
evt.waitUntil(r.refresh.catch(_ => { }));
evt.waitUntil(r.refresh.catch(_ => {}));
return r.result;
});
case Types.NOCACHE:
@ -95,7 +88,12 @@ async function fromCache(request) {
return matching
let res = await fetch(request.clone());
await cache.put(request, res);
await cache.put(request, {
match: (url) => {
return url.indexOf("/version_hash") >= 0;
},
type: Types.NOCACHE
}, res);
return await cache.match(request);
}

View File

@ -167,7 +167,7 @@ class NotesProvider {
public async start() {
const next = () => {
setTimeout(() => {
this.sync().then(() => next);
this.sync().then(next);
}, 30000)
}
this.syncedObservableServer.send((await this.oplogDB.getAll()).length <= 0);