LCOV - code coverage report
Current view: top level - dom/filesystem/compat - CallbackRunnables.h (source / functions) Hit Total Coverage
Test: output.info Lines: 0 3 0.0 %
Date: 2017-07-14 16:53:18 Functions: 0 6 0.0 %
Legend: Lines: hit not hit

          Line data    Source code
       1             : /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
       2             : /* vim: set ts=8 sts=2 et sw=2 tw=80: */
       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 file,
       5             :  * You can obtain one at http://mozilla.org/MPL/2.0/. */
       6             : 
       7             : #ifndef mozilla_dom_ErrorCallbackRunnable_h
       8             : #define mozilla_dom_ErrorCallbackRunnable_h
       9             : 
      10             : #include "FileSystemDirectoryEntry.h"
      11             : #include "mozilla/dom/BindingDeclarations.h"
      12             : #include "mozilla/dom/PromiseNativeHandler.h"
      13             : 
      14             : class nsIGlobalObject;
      15             : 
      16             : namespace mozilla {
      17             : namespace dom {
      18             : 
      19             : class FileSystemEntriesCallback;
      20             : 
      21           0 : class EntryCallbackRunnable final : public Runnable
      22             : {
      23             : public:
      24             :   EntryCallbackRunnable(FileSystemEntryCallback* aCallback,
      25             :                         FileSystemEntry* aEntry);
      26             : 
      27             :   NS_IMETHOD
      28             :   Run() override;
      29             : 
      30             : private:
      31             :   RefPtr<FileSystemEntryCallback> mCallback;
      32             :   RefPtr<FileSystemEntry> mEntry;
      33             : };
      34             : 
      35           0 : class ErrorCallbackRunnable final : public Runnable
      36             : {
      37             : public:
      38             :   ErrorCallbackRunnable(nsIGlobalObject* aGlobalObject,
      39             :                         ErrorCallback* aCallback,
      40             :                         nsresult aError);
      41             : 
      42             :   NS_IMETHOD
      43             :   Run() override;
      44             : 
      45             : private:
      46             :   nsCOMPtr<nsIGlobalObject> mGlobal;
      47             :   RefPtr<ErrorCallback> mCallback;
      48             :   nsresult mError;
      49             : };
      50             : 
      51           0 : class EmptyEntriesCallbackRunnable final : public Runnable
      52             : {
      53             : public:
      54             :   explicit EmptyEntriesCallbackRunnable(FileSystemEntriesCallback* aCallback);
      55             : 
      56             :   NS_IMETHOD
      57             :   Run() override;
      58             : 
      59             : private:
      60             :   RefPtr<FileSystemEntriesCallback> mCallback;
      61             : };
      62             : 
      63             : class GetEntryHelper final : public PromiseNativeHandler
      64             : {
      65             : public:
      66             :   NS_DECL_ISUPPORTS
      67             : 
      68             :   GetEntryHelper(FileSystemDirectoryEntry* aParentEntry,
      69             :                  Directory* aDirectory,
      70             :                  nsTArray<nsString>& aParts,
      71             :                  FileSystem* aFileSystem,
      72             :                  FileSystemEntryCallback* aSuccessCallback,
      73             :                  ErrorCallback* aErrorCallback,
      74             :                  FileSystemDirectoryEntry::GetInternalType aType);
      75             : 
      76             :   void
      77             :   Run();
      78             : 
      79             :   virtual void
      80             :   ResolvedCallback(JSContext* aCx, JS::Handle<JS::Value> aValue) override;
      81             : 
      82             :   virtual void
      83             :   RejectedCallback(JSContext* aCx, JS::Handle<JS::Value> aValue) override;
      84             : 
      85             : private:
      86             :   ~GetEntryHelper();
      87             : 
      88             :   void
      89             :   Error(nsresult aError);
      90             : 
      91             :   void
      92             :   ContinueRunning(JSObject* aObj);
      93             : 
      94             :   void
      95             :   CompleteOperation(JSObject* aObj);
      96             : 
      97             :   RefPtr<FileSystemDirectoryEntry> mParentEntry;
      98             :   RefPtr<Directory> mDirectory;
      99             :   nsTArray<nsString> mParts;
     100             :   RefPtr<FileSystem> mFileSystem;
     101             : 
     102             :   RefPtr<FileSystemEntryCallback> mSuccessCallback;
     103             :   RefPtr<ErrorCallback> mErrorCallback;
     104             : 
     105             :   FileSystemDirectoryEntry::GetInternalType mType;
     106             : };
     107             : 
     108             : class FileSystemEntryCallbackHelper
     109             : {
     110             : public:
     111             :   static void
     112             :   Call(nsIGlobalObject* aGlobalObject,
     113             :        const Optional<OwningNonNull<FileSystemEntryCallback>>& aEntryCallback,
     114             :        FileSystemEntry* aEntry);
     115             : };
     116             : 
     117             : class ErrorCallbackHelper
     118             : {
     119             : public:
     120             :   static void
     121             :   Call(nsIGlobalObject* aGlobal,
     122             :        const Optional<OwningNonNull<ErrorCallback>>& aErrorCallback,
     123             :        nsresult aError);
     124             : };
     125             : 
     126             : } // dom namespace
     127             : } // mozilla namespace
     128             : 
     129             : #endif // mozilla_dom_CallbackRunnables_h

Generated by: LCOV version 1.13