gecko-dev/dom/webidl/RequestSyncScheduler.webidl
Phil Ringnalda f057e4abbb Backed out 7 changesets (bug 1018320) because the debug M12 is still from this
Backed out changeset f60d4ad64070 (bug 1018320)
Backed out changeset 1aac4d23ccd2 (bug 1018320)
Backed out changeset 6063a2463d6c (bug 1018320)
Backed out changeset 2df23c44ef44 (bug 1018320)
Backed out changeset daf456b0a23a (bug 1018320)
Backed out changeset 3e2e4d298e98 (bug 1018320)
Backed out changeset 012373bb552b (bug 1018320)
2015-01-05 08:02:54 -08:00

39 lines
1.3 KiB
Plaintext

/* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/.
*/
// This is the dictionary for the creation of a new task.
dictionary RequestTaskParams {
required USVString wakeUpPage;
boolean oneShot = true;
required long minInterval; // in seconds >= dom.requestSync.minInterval or 100 secs
boolean wifiOnly = true;
any data = null;
};
// This is the dictionary you can have back from registration{s}().
dictionary RequestTaskFull : RequestTaskParams {
USVString task = "";
// Last synchonization date.. maybe it's useful to know.
DOMTimeStamp lastSync;
};
[NavigatorProperty="sync",
AvailableIn=CertifiedApps,
Pref="dom.requestSync.enabled",
JSImplementation="@mozilla.org/dom/request-sync-scheduler;1"]
interface RequestSyncScheduler {
Promise<void> register(USVString task,
optional RequestTaskParams params);
Promise<void> unregister(USVString task);
// Useful methods to get registrations
Promise<sequence<RequestTaskFull>> registrations();
Promise<RequestTaskFull> registration(USVString task);
};