1 /* -*- Mode: C++; c-basic-offset: 2; indent-tabs-mode: nil; tab-width: 8 -*- */
2 /* vim: set sw=4 ts=8 et tw=80 ft=cpp : */
3 /* This Source Code Form is subject to the terms of the Mozilla Public
4 * License, v. 2.0. If a copy of the MPL was not distributed with this
5 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
7 include protocol PContent;
13 * Protocol used to relay chrome observer notifications related to clearing data
14 * to SessionStorageManager instances in content processes. A single instance is
15 * created by each content process when LocalStorage NextGen is enabled. When
16 * LSNG is disabled, the notifications are instead propagated via
17 * PBackgroundStorageChild. This does mean there are potentially slight ordering
18 * differences in when the notification will be received and processed. It's
19 * okay for this protocol to be managed by PContent rather than PBackground
20 * because these notifications are both rare and to-child-only. (Legacy
21 * LocalStorage was moved to PBackground from PContent because of parent-process
22 * main-thread contention for the processing of "parent:" messages in a very
23 * performance-sensitive context!)
25 [ManualDealloc, ChildImpl=virtual, ParentImpl=virtual]
26 async protocol PSessionStorageObserver
36 async Observe(nsCString topic,
37 nsString originAttributesPattern,
38 nsCString originScope);