PBackgroundIDBFactory.ipdl 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. /* This Source Code Form is subject to the terms of the Mozilla Public
  2. * License, v. 2.0. If a copy of the MPL was not distributed with this file,
  3. * You can obtain one at http://mozilla.org/MPL/2.0/. */
  4. include protocol PBackground;
  5. include protocol PBackgroundIDBDatabase;
  6. include protocol PBackgroundIDBFactoryRequest;
  7. include PBackgroundIDBSharedTypes;
  8. include PBackgroundSharedTypes;
  9. include "mozilla/dom/quota/SerializationHelpers.h";
  10. using struct mozilla::void_t
  11. from "ipc/IPCMessageUtils.h";
  12. namespace mozilla {
  13. namespace dom {
  14. namespace indexedDB {
  15. struct CommonFactoryRequestParams
  16. {
  17. DatabaseMetadata metadata;
  18. PrincipalInfo principalInfo;
  19. };
  20. struct OpenDatabaseRequestParams
  21. {
  22. CommonFactoryRequestParams commonParams;
  23. };
  24. struct DeleteDatabaseRequestParams
  25. {
  26. CommonFactoryRequestParams commonParams;
  27. };
  28. union FactoryRequestParams
  29. {
  30. OpenDatabaseRequestParams;
  31. DeleteDatabaseRequestParams;
  32. };
  33. sync protocol PBackgroundIDBFactory
  34. {
  35. manager PBackground;
  36. manages PBackgroundIDBDatabase;
  37. manages PBackgroundIDBFactoryRequest;
  38. parent:
  39. async DeleteMe();
  40. async PBackgroundIDBFactoryRequest(FactoryRequestParams params);
  41. async IncrementLoggingRequestSerialNumber();
  42. child:
  43. async __delete__();
  44. async PBackgroundIDBDatabase(DatabaseSpec spec,
  45. PBackgroundIDBFactoryRequest request);
  46. };
  47. } // namespace indexedDB
  48. } // namespace dom
  49. } // namespace mozilla