diff options
Diffstat (limited to 'dom/storage/PSessionStorageObserver.ipdl')
-rw-r--r-- | dom/storage/PSessionStorageObserver.ipdl | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/dom/storage/PSessionStorageObserver.ipdl b/dom/storage/PSessionStorageObserver.ipdl new file mode 100644 index 0000000000..9c05fd1c1a --- /dev/null +++ b/dom/storage/PSessionStorageObserver.ipdl @@ -0,0 +1,41 @@ +/* -*- Mode: C++; c-basic-offset: 2; indent-tabs-mode: nil; tab-width: 8 -*- */ +/* vim: set sw=4 ts=8 et tw=80 ft=cpp : */ +/* 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/. */ + +include protocol PContent; + +namespace mozilla { +namespace dom { + +/** + * Protocol used to relay chrome observer notifications related to clearing data + * to SessionStorageManager instances in content processes. A single instance is + * created by each content process when LocalStorage NextGen is enabled. When + * LSNG is disabled, the notifications are instead propagated via + * PBackgroundStorageChild. This does mean there are potentially slight ordering + * differences in when the notification will be received and processed. It's + * okay for this protocol to be managed by PContent rather than PBackground + * because these notifications are both rare and to-child-only. (Legacy + * LocalStorage was moved to PBackground from PContent because of parent-process + * main-thread contention for the processing of "parent:" messages in a very + * performance-sensitive context!) + */ +async protocol PSessionStorageObserver +{ + manager PContent; + +parent: + async DeleteMe(); + +child: + async __delete__(); + + async Observe(nsCString topic, + nsString originAttributesPattern, + nsCString originScope); +}; + +} +} |