Coverage Report

Created: 2018-09-25 14:53

/src/mozilla-central/toolkit/components/places/nsAnnoProtocolHandler.h
Line
Count
Source (jump to first uncovered line)
1
//* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2
/* This Source Code Form is subject to the terms of the Mozilla Public
3
 * License, v. 2.0. If a copy of the MPL was not distributed with this
4
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
5
6
#ifndef nsAnnoProtocolHandler_h___
7
#define nsAnnoProtocolHandler_h___
8
9
#include "nsCOMPtr.h"
10
#include "nsIProtocolHandler.h"
11
#include "nsIURI.h"
12
#include "nsString.h"
13
#include "nsWeakReference.h"
14
#include "mozilla/Attributes.h"
15
16
// {e8b8bdb7-c96c-4d82-9c6f-2b3c585ec7ea}
17
#define NS_ANNOPROTOCOLHANDLER_CID \
18
{ 0xe8b8bdb7, 0xc96c, 0x4d82, { 0x9c, 0x6f, 0x2b, 0x3c, 0x58, 0x5e, 0xc7, 0xea } }
19
20
class nsAnnoProtocolHandler final : public nsIProtocolHandler, public nsSupportsWeakReference
21
{
22
public:
23
0
  nsAnnoProtocolHandler() {}
24
25
  NS_DECL_ISUPPORTS
26
  NS_DECL_NSIPROTOCOLHANDLER
27
28
private:
29
0
  ~nsAnnoProtocolHandler() {}
30
31
protected:
32
  nsresult ParseAnnoURI(nsIURI* aURI, nsIURI** aResultURI, nsCString& aName);
33
34
  /**
35
   * Obtains a new channel to be used to get a favicon from the database.  This
36
   * method is asynchronous.
37
   *
38
   * @param aURI
39
   *        The URI the channel will be created for.  This is the URI that is
40
   *        set as the original URI on the channel.
41
   * @param aAnnotationURI
42
   *        The URI that holds the data needed to get the favicon from the
43
   *        database.
44
   * @param aLoadInfo
45
   *        The loadinfo that requested the resource load.
46
   * @returns (via _channel) the channel that will obtain the favicon data.
47
   */
48
  nsresult NewFaviconChannel(nsIURI *aURI,
49
                             nsIURI *aAnnotationURI,
50
                             nsILoadInfo *aLoadInfo,
51
                             nsIChannel **_channel);
52
};
53
54
#endif /* nsAnnoProtocolHandler_h___ */