nsIFactory
| IID: | 00000001-0000-0000-c000-000000000046 |
| Inherits From: | nsISupports |
| Status: | FROZEN |
A class factory allows the creation of nsISupports derived components without specifying a concrete base class.
This interface is implemented by the following components:
- @mozilla.org/aggregateprincipal;1
- @mozilla.org/certificateprincipal;1
- @mozilla.org/codebaseprincipal;1
- @mozilla.org/js/xpc/Exception;1
- @mozilla.org/sample;1
- @mozilla.org/systemprincipal;1
- @mozilla.org/xmlextras/proxy/webservicecomplextypewrapper;1
- @mozilla.org/xmlextras/proxy/webserviceproxyfactory;1
- @mozilla.org/xmlextras/proxy/webserviceproxytest;1
- @mozilla.org/xmlextras/schemas/schemaloader;1
- @mozilla.org/xmlextras/soap/call;1
- @mozilla.org/xmlextras/soap/fault;1
- @mozilla.org/xmlextras/soap/headerblock;1
- @mozilla.org/xmlextras/soap/parameter;1
- @mozilla.org/xmlextras/soap/propertybagmutator;1
- @mozilla.org/xmlextras/soap/response;1
- @mozilla.org/xmlextras/soap/transport;1?protocol=http
- @mozilla.org/xmlextras/soap/transport;1?protocol=https
- @mozilla.org/xmlextras/wsdl/wsdlloader;1
- @mozilla.org/principal;1
- @mozilla.org/browser/clh;1
- @mozilla.org/browser/final-clh;1
- @mozilla.org/toolkit/console-clh;1
- @mozilla.org/uriloader/content-handler;1?type=image/svg+xml
- @mozilla.org/uriloader/content-handler;1?type=image/vnd.microsoft.icon
- @mozilla.org/browser/feeds/result-service;1
- @mozilla.org/browser/livemark-service;2
- @mozilla.org/embeddor.implemented/web-content-handler-registrar;1
- @mozilla.org/toolkit/default-clh;1
Methods
void createInstance ( nsISupports outer , nsIIDRef iid , out nsQIResult* result )
void lockFactory ( PRBool lock )
void createInstance ( nsISupports outer , nsIIDRef iid , out nsQIResult* result )
Creates an instance of a component.
- Arguments:
- outer: Pointer to a component that wishes to be aggregated in the resulting instance. This will be nsnull if no aggregation is requested.
- iid: The IID of the interface being requested in the component which is being currently created.
- result: [out] Pointer to the newly created instance, if successful.
- Returns:
- NS_OK - Component successfully created and the interface being requested was successfully returned in result. NS_NOINTERFACE - Interface not accessible. NS_ERROR_NO_AGGREGATION - if an 'outer' object is supplied, but the component is not aggregatable. NS_ERROR* - Method failure.
void lockFactory ( PRBool lock )
LockFactory provides the client a way to keep the component in memory until it is finished with it. The client can call LockFactory(PR_TRUE) to lock the factory and LockFactory(PR_FALSE) to release the factory.
- Arguments:
- lock: - Must be PR_TRUE or PR_FALSE
- Returns:
- NS_OK - If the lock operation was successful. NS_ERROR* - Method failure.
References
This interface is passed as an argument to the following methods:
nsIComponentManagerObsolete.registerFactory, nsIComponentManagerObsolete.unregisterFactory, nsIComponentRegistrar.registerFactory, nsIComponentRegistrar.unregisterFactory
This interface is returned from the following methods:
nsIComponentManagerObsolete.findFactory
Reference documentation is generated from Mozilla's source.
