DXR is a code search and navigation tool aimed at making sense of large projects. It supports full-text and regex searches as well as structural queries.

Untracked file

nsIHttpProtocolHandler

Macros

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225
/*
 * DO NOT EDIT.  THIS FILE IS GENERATED FROM ../../../dist/idl/nsIHttpProtocolHandler.idl
 */

#ifndef __gen_nsIHttpProtocolHandler_h__
#define __gen_nsIHttpProtocolHandler_h__


#ifndef __gen_nsIProxiedProtocolHandler_h__
#include "nsIProxiedProtocolHandler.h"
#endif

/* For IDL files that don't want to include root IDL files. */
#ifndef NS_NO_VTABLE
#define NS_NO_VTABLE
#endif

/* starting interface:    nsIHttpProtocolHandler */
#define NS_IHTTPPROTOCOLHANDLER_IID_STR "c48126d9-2ddd-485b-a51a-378e917e75f8"

#define NS_IHTTPPROTOCOLHANDLER_IID \
  {0xc48126d9, 0x2ddd, 0x485b, \
    { 0xa5, 0x1a, 0x37, 0x8e, 0x91, 0x7e, 0x75, 0xf8 }}

class NS_NO_VTABLE nsIHttpProtocolHandler : public nsIProxiedProtocolHandler {
 public:

  NS_DECLARE_STATIC_IID_ACCESSOR(NS_IHTTPPROTOCOLHANDLER_IID)

  /* readonly attribute ACString userAgent; */
  NS_IMETHOD GetUserAgent(nsACString & aUserAgent) = 0;

  /* readonly attribute ACString appName; */
  NS_IMETHOD GetAppName(nsACString & aAppName) = 0;

  /* readonly attribute ACString appVersion; */
  NS_IMETHOD GetAppVersion(nsACString & aAppVersion) = 0;

  /* readonly attribute ACString platform; */
  NS_IMETHOD GetPlatform(nsACString & aPlatform) = 0;

  /* readonly attribute ACString oscpu; */
  NS_IMETHOD GetOscpu(nsACString & aOscpu) = 0;

  /* readonly attribute ACString misc; */
  NS_IMETHOD GetMisc(nsACString & aMisc) = 0;

};

  NS_DEFINE_STATIC_IID_ACCESSOR(nsIHttpProtocolHandler, NS_IHTTPPROTOCOLHANDLER_IID)

/* Use this macro when declaring classes that implement this interface. */
#define NS_DECL_NSIHTTPPROTOCOLHANDLER \
  NS_IMETHOD GetUserAgent(nsACString & aUserAgent) override; \
  NS_IMETHOD GetAppName(nsACString & aAppName) override; \
  NS_IMETHOD GetAppVersion(nsACString & aAppVersion) override; \
  NS_IMETHOD GetPlatform(nsACString & aPlatform) override; \
  NS_IMETHOD GetOscpu(nsACString & aOscpu) override; \
  NS_IMETHOD GetMisc(nsACString & aMisc) override; 

/* Use this macro when declaring the members of this interface when the
   class doesn't implement the interface. This is useful for forwarding. */
#define NS_DECL_NON_VIRTUAL_NSIHTTPPROTOCOLHANDLER \
  nsresult GetUserAgent(nsACString & aUserAgent); \
  nsresult GetAppName(nsACString & aAppName); \
  nsresult GetAppVersion(nsACString & aAppVersion); \
  nsresult GetPlatform(nsACString & aPlatform); \
  nsresult GetOscpu(nsACString & aOscpu); \
  nsresult GetMisc(nsACString & aMisc); 

/* Use this macro to declare functions that forward the behavior of this interface to another object. */
#define NS_FORWARD_NSIHTTPPROTOCOLHANDLER(_to) \
  NS_IMETHOD GetUserAgent(nsACString & aUserAgent) override { return _to GetUserAgent(aUserAgent); } \
  NS_IMETHOD GetAppName(nsACString & aAppName) override { return _to GetAppName(aAppName); } \
  NS_IMETHOD GetAppVersion(nsACString & aAppVersion) override { return _to GetAppVersion(aAppVersion); } \
  NS_IMETHOD GetPlatform(nsACString & aPlatform) override { return _to GetPlatform(aPlatform); } \
  NS_IMETHOD GetOscpu(nsACString & aOscpu) override { return _to GetOscpu(aOscpu); } \
  NS_IMETHOD GetMisc(nsACString & aMisc) override { return _to GetMisc(aMisc); } 

/* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
#define NS_FORWARD_SAFE_NSIHTTPPROTOCOLHANDLER(_to) \
  NS_IMETHOD GetUserAgent(nsACString & aUserAgent) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetUserAgent(aUserAgent); } \
  NS_IMETHOD GetAppName(nsACString & aAppName) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAppName(aAppName); } \
  NS_IMETHOD GetAppVersion(nsACString & aAppVersion) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAppVersion(aAppVersion); } \
  NS_IMETHOD GetPlatform(nsACString & aPlatform) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetPlatform(aPlatform); } \
  NS_IMETHOD GetOscpu(nsACString & aOscpu) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetOscpu(aOscpu); } \
  NS_IMETHOD GetMisc(nsACString & aMisc) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetMisc(aMisc); } 

#if 0
/* Use the code below as a template for the implementation class for this interface. */

/* Header file */
class nsHttpProtocolHandler : public nsIHttpProtocolHandler
{
public:
  NS_DECL_ISUPPORTS
  NS_DECL_NSIHTTPPROTOCOLHANDLER

  nsHttpProtocolHandler();

private:
  ~nsHttpProtocolHandler();

protected:
  /* additional members */
};

/* Implementation file */
NS_IMPL_ISUPPORTS(nsHttpProtocolHandler, nsIHttpProtocolHandler)

nsHttpProtocolHandler::nsHttpProtocolHandler()
{
  /* member initializers and constructor code */
}

nsHttpProtocolHandler::~nsHttpProtocolHandler()
{
  /* destructor code */
}

/* readonly attribute ACString userAgent; */
NS_IMETHODIMP nsHttpProtocolHandler::GetUserAgent(nsACString & aUserAgent)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute ACString appName; */
NS_IMETHODIMP nsHttpProtocolHandler::GetAppName(nsACString & aAppName)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute ACString appVersion; */
NS_IMETHODIMP nsHttpProtocolHandler::GetAppVersion(nsACString & aAppVersion)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute ACString platform; */
NS_IMETHODIMP nsHttpProtocolHandler::GetPlatform(nsACString & aPlatform)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute ACString oscpu; */
NS_IMETHODIMP nsHttpProtocolHandler::GetOscpu(nsACString & aOscpu)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* readonly attribute ACString misc; */
NS_IMETHODIMP nsHttpProtocolHandler::GetMisc(nsACString & aMisc)
{
    return NS_ERROR_NOT_IMPLEMENTED;
}

/* End of implementation class template. */
#endif

// ----------- Categories -----------
/**
 * At initialization time, the HTTP handler will initialize each service
 * registered under this category:
 */
#define NS_HTTP_STARTUP_CATEGORY "http-startup-category"
// ----------- Observer topics -----------
/**
 * nsIObserver notification corresponding to startup category.  Services
 * registered under the startup category will receive this observer topic at
 * startup if they implement nsIObserver.  The "subject" of the notification
 * is the nsIHttpProtocolHandler instance.
 */
#define NS_HTTP_STARTUP_TOPIC "http-startup"
/**
 * This observer topic is notified when an HTTP channel is opened.
 * It is similar to http-on-modify-request, except that
 * 1) The notification is guaranteed to occur before on-modify-request, during
 *    the AsyncOpen call itself.
 * 2) It only occurs for the initial open of a channel, not for internal
 *    asyncOpens that happen during redirects, etc.
 * 3) Some information (most notably nsIProxiedChannel.proxyInfo) may not be set
 *    on the channel object yet.
 *
 * The "subject" of the notification is the nsIHttpChannel instance.
 *
 * Generally the 'http-on-modify-request' notification is preferred unless the
 * synchronous, during-asyncOpen behavior that this notification provides is
 * required.
 */
#define NS_HTTP_ON_OPENING_REQUEST_TOPIC "http-on-opening-request"
/**
 * Before an HTTP request is sent to the server, this observer topic is
 * notified.  The observer of this topic can then choose to set any additional
 * headers for this request before the request is actually sent to the server.
 * The "subject" of the notification is the nsIHttpChannel instance.
 */
#define NS_HTTP_ON_MODIFY_REQUEST_TOPIC "http-on-modify-request"
/**
 * After an HTTP server response is received, this observer topic is notified.
 * The observer of this topic can interrogate the response.  The "subject" of
 * the notification is the nsIHttpChannel instance.
 */
#define NS_HTTP_ON_EXAMINE_RESPONSE_TOPIC "http-on-examine-response"
/**
 * The observer of this topic is notified after the received HTTP response
 * is merged with data from the browser cache.  This means that, among other
 * things, the Content-Type header will be set correctly.
 */
#define NS_HTTP_ON_EXAMINE_MERGED_RESPONSE_TOPIC "http-on-examine-merged-response"
/**
 * The observer of this topic is notified before data is read from the cache.
 * The notification is sent if and only if there is no network communication
 * at all.
 */
#define NS_HTTP_ON_EXAMINE_CACHED_RESPONSE_TOPIC "http-on-examine-cached-response"
/**
 * Before an HTTP request corresponding to a channel with the LOAD_DOCUMENT_URI
 * flag is sent to the server, this observer topic is notified. The observer of
 * this topic can then choose to modify the user agent for this request before
 * the request is actually sent to the server. Additionally, the modified user
 * agent will be propagated to sub-resource requests from the same load group.
 */
#define NS_HTTP_ON_USERAGENT_REQUEST_TOPIC "http-on-useragent-request"

#endif /* __gen_nsIHttpProtocolHandler_h__ */