nsIInterfaceRequestor

This interface defines a generic interface for requesting interfaces that a given object might provide access to.
Inherits from: nsISupports Last changed in Gecko 0.9.5

This is similar to nsISupports.QueryInterface(). The main difference is that interfaces returned are not required to provide a way back to the object implementing nsIInterfaceRequestor. The semantics of nsISupports.QueryInterface() dictate that given an interface A that you nsISupports.QueryInterface() on to get to interface B, you must be able to nsISupports.QueryInterface() on B to get back to A. nsIInterfaceRequestor, however, allows you to obtain an interface C from A that may (or most likely) will not have the ability to get back to A.

Method overview

void getInterface(in nsIIDRef uuid, [iid_is(uuid),retval] out nsQIResult result);

Methods

getInterface()

Retrieves the specified interface pointer.

void getInterface(
  in nsIIDRef uuid,
  [iid_is(uuid),retval] out nsQIResult result
);
Parameters
uuid
The IID of the interface being requested.
result
The interface pointer to be filled in if the interface is accessible.
Exceptions thrown
NS_ERROR_NO_INTERFACE
The requested interface is not available.