added moduelMgr and ModRegEntry idls to the idl list. also updated the nsINetModuleMgr.idl interface

This commit is contained in:
valeski%netscape.com 1999-06-08 20:11:53 +00:00
parent 89e02bd8b8
commit 919d511ca1
2 changed files with 22 additions and 9 deletions

View File

@ -38,6 +38,8 @@ XPIDLSRCS = \
.\nsIPrompt.idl \ .\nsIPrompt.idl \
.\nsIProtocolHandler.idl \ .\nsIProtocolHandler.idl \
.\nsIProgressEventSink.idl \ .\nsIProgressEventSink.idl \
.\nsINetModRegEntry.idl \
.\nsINetModuleMgr.idl \
.\nsINetNotify.idl \ .\nsINetNotify.idl \
$(NULL) $(NULL)

View File

@ -29,34 +29,45 @@
*/ */
#include "nsISupports.idl" #include "nsISupports.idl"
#include "nsIEnumerator.idl"
#include "nsINetNotify.idl"
interface nsIEventQueue;
%{ C++
// {4EBDAFE0-13BA-11d3-A15A-0050041CAF44}
#define NS_NETMODULEMGR_CID \
{ 0x4ebdafe0, 0x13ba, 0x11d3, { 0xa1, 0x5a, 0x0, 0x50, 0x4, 0x1c, 0xaf, 0x44 } }
%}
[scriptable, uuid(ff9ead40-0ef2-11d3-9de6-0010a4053fd0)] [scriptable, uuid(ff9ead40-0ef2-11d3-9de6-0010a4053fd0)]
interface nsINetModuleMgr : nsISupports, nsIObserverService { interface nsINetModuleMgr : nsISupports {
// Register the external module to receive notifications. // Register the external module to receive notifications.
// //
// ARGUMENTS: // ARGUMENTS:
// aComponent: The internal component that the external module wants to monitor. // aTopic: The internal component that the external module wants to monitor.
// aEventQueue: The event queue to receive the events. // aEventQueue: The event queue to receive the events.
// aNotify: The external module interface methods to be called when an event is fired. // aNotify: The external module interface methods to be called when an event is fired.
// //
// RETURNS: nsresult // RETURNS: nsresult
void RegisterModule(in string aComponent, in nsIEventQueue* aEventQueue, in nsINetNotify aNotify); void RegisterModule(in string aTopic, in nsIEventQueue aEventQueue, in nsINetNotify aNotify, in nsCIDPtr aCID);
// Unregister the external module. Removes the nsINetModuleMgr binding between // Unregister the external module. Removes the nsINetModuleMgr binding between
// internal component and external module. // internal component and external module.
// //
// ARGUMENTS: // ARGUMENTS:
// aComponent: The internal component being monitored. // aTopic: The internal component being monitored.
// aNotify: The external modules notification module. // aNotify: The external modules notification module.
// //
// RETURNS: nsresult // RETURNS: nsresult
void UnregisterModule(in string aComponent, in nsINetNotify aNotify); void UnregisterModule(in string aTopic, in nsIEventQueue aEventQueue, in nsINetNotify aNotify, in nsCIDPtr aCID);
// Enumerates all the registered modules for the specified component. // Enumerates all the registered modules for the specified topic.
// //
// ARGUMENTS: // ARGUMENTS:
// aComponent: the component to get all the notifiers for. // aTopic: the component to get all the notifiers for.
// aNotifiers: the array of notifiers. // aEnumerator: the array of notifiers.
void EnumerateModules(in string aComponent, out nsINetNotify* ** aNotifiers); void EnumerateModules(in string aTopic, out nsISimpleEnumerator aEnumerator);
}; };