Closed Bug 11836 Opened 25 years ago Closed 25 years ago

use generic factory for local and convert to use nsIModule

Categories

(MailNews Core :: Backend, defect, P3)

defect

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: alecf, Assigned: mscott)

Details

This library should use Warren's generic factory class instead of making our own
factory...it will shrink the size of this dll and make maintenance easier.
Status: NEW → ASSIGNED
Summary: use generic factory for local
Target Milestone: M14
Assignee: alecf → mscott
Severity: minor → normal
Status: ASSIGNED → NEW
Summary: use generic factory for local → use generic factory for local and convert to use nsIModule
Target Milestone: M14 → M11
re-assigning to myself. In order to convert the local factory into a module and
support nsIModule, I also used nsIGenericFactory.

I have local converted in my tree but it isn't checked in yet.

Marking as M11 as the cosmonauts need the nsIModule conversion.
Status: NEW → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
I finally got around to landing my code for this module.
QA Contact: lchiang → ppandit
Based on the following text searches for nsIModule and nsIGenericFactory within 
the mailnews directory, implementation looks complete.
MARKING AS VERIFIED

/mailnews/addrbook/build/nsAbFactory.cpp, line 26 -- #include "nsIModule.h"
/mailnews/base/build/nsMsgFactory.cpp, line 27 -- #include "nsIModule.h"
/mailnews/base/build/nsMsgFactory.cpp, line 166 -- class nsMsgBaseModule : 
public nsIModule
/mailnews/base/build/nsMsgFactory.cpp, line 174 -- NS_DECL_NSIMODULE
/mailnews/base/build/nsMsgFactory.cpp, line 219 -- 
NS_IMPL_ISUPPORTS(nsMsgBaseModule,
NS_GET_IID(nsIModule))
/mailnews/base/build/nsMsgFactory.cpp, line 580 -- nsIModule** return_cobj)
/mailnews/base/build/nsMsgFactory.cpp, line 592 -- // Increase refcnt and store 
away nsIModule interface
to m in return_cobj
/mailnews/base/build/nsMsgFactory.cpp, line 593 -- rv =
module->QueryInterface(NS_GET_IID(nsIModule), (void**)return_cobj);
/mailnews/compose/build/nsMsgCompFactory.cpp, line 31 -- #include "nsIModule.h"
/mailnews/db/msgdb/build/nsMsgDBFactory.cpp, line 26 -- #include "nsIModule.h"
/mailnews/db/msgdb/build/nsMsgDBFactory.cpp, line 45 -- class nsMsgDBModule : 
public nsIModule
/mailnews/db/msgdb/build/nsMsgDBFactory.cpp, line 53 -- NS_DECL_NSIMODULE
/mailnews/db/msgdb/build/nsMsgDBFactory.cpp, line 78 -- 
NS_IMPL_ISUPPORTS(nsMsgDBModule,
NS_GET_IID(nsIModule))
/mailnews/db/msgdb/build/nsMsgDBFactory.cpp, line 220 -- nsIModule** 
return_cobj)
/mailnews/db/msgdb/build/nsMsgDBFactory.cpp, line 232 -- // Increase refcnt and 
store away nsIModule
interface to m in return_cobj
/mailnews/db/msgdb/build/nsMsgDBFactory.cpp, line 233 -- rv =
module->QueryInterface(NS_GET_IID(nsIModule), (void**)return_cobj);
/mailnews/imap/build/nsImapFactory.cpp, line 26 -- #include "nsIModule.h"
/mailnews/imap/build/nsImapFactory.cpp, line 60 -- class nsMsgImapModule : 
public nsIModule
/mailnews/imap/build/nsImapFactory.cpp, line 68 -- NS_DECL_NSIMODULE
/mailnews/imap/build/nsImapFactory.cpp, line 98 -- 
NS_IMPL_ISUPPORTS(nsMsgImapModule,
NS_GET_IID(nsIModule))
/mailnews/imap/build/nsImapFactory.cpp, line 292 -- nsIModule** return_cobj)
/mailnews/imap/build/nsImapFactory.cpp, line 304 -- // Increase refcnt and store 
away nsIModule interface
to m in return_cobj
/mailnews/imap/build/nsImapFactory.cpp, line 305 -- rv =
module->QueryInterface(NS_GET_IID(nsIModule), (void**)return_cobj);
/mailnews/import/oexpress/nsOEFactory.cpp, line 28 -- #include "nsIModule.h"
/mailnews/import/src/nsImportFactory.cpp, line 23 -- #include "nsIModule.h"
/mailnews/import/outlook/src/nsOutlookFactory.cpp, line 28 -- #include 
"nsIModule.h"
/mailnews/import/eudora/src/nsEudoraFactory.cpp, line 24 -- #include 
"nsIModule.h"
/mailnews/import/text/src/nsTextFactory.cpp, line 24 -- #include "nsIModule.h"
/mailnews/local/build/nsMsgLocalFactory.cpp, line 25 -- #include "nsIModule.h"
/mailnews/local/build/nsMsgLocalFactory.cpp, line 73 -- class nsMsgLocalModule : 
public nsIModule
/mailnews/local/build/nsMsgLocalFactory.cpp, line 81 -- NS_DECL_NSIMODULE
/mailnews/local/build/nsMsgLocalFactory.cpp, line 115 -- 
NS_IMPL_ISUPPORTS(nsMsgLocalModule,
NS_GET_IID(nsIModule))
/mailnews/local/build/nsMsgLocalFactory.cpp, line 351 -- nsIModule** 
return_cobj)
/mailnews/local/build/nsMsgLocalFactory.cpp, line 363 -- // Increase refcnt and 
store away nsIModule
interface to m in return_cobj
/mailnews/local/build/nsMsgLocalFactory.cpp, line 364 -- rv =
module->QueryInterface(NS_GET_IID(nsIModule), (void**)return_cobj);
/mailnews/mime/build/nsMimeModule.cpp, line 24 -- #include "nsIModule.h"
/mailnews/mime/build/nsMimeModule.cpp, line 51 -- class nsMimeModule : public 
nsIModule
/mailnews/mime/build/nsMimeModule.cpp, line 59 -- NS_DECL_NSIMODULE
/mailnews/mime/build/nsMimeModule.cpp, line 86 -- 
NS_IMPL_ISUPPORTS(nsMimeModule,
NS_GET_IID(nsIModule))
/mailnews/mime/build/nsMimeModule.cpp, line 248 -- nsIModule** return_cobj)
/mailnews/mime/build/nsMimeModule.cpp, line 260 -- // Increase refcnt and store 
away nsIModule interface
to m in return_cobj
/mailnews/mime/build/nsMimeModule.cpp, line 261 -- rv =
module->QueryInterface(NS_GET_IID(nsIModule), (void**)return_cobj);
/mailnews/mime/emitters/build/nsEmitterFactory.cpp, line 30 -- #include 
"nsIModule.h"
/mailnews/news/build/nsMsgNewsFactory.cpp, line 25 -- #include "nsIModule.h"

/mailnews/addrbook/build/nsAbFactory.cpp, line 25 -- #include 
"nsIGenericFactory.h"
/mailnews/base/build/nsMsgFactory.cpp, line 28 -- #include "nsIGenericFactory.h"
/mailnews/base/build/nsMsgFactory.cpp, line 183 -- nsCOMPtr<nsIGenericFactory>
mMessengerBootstrapFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 184 -- nsCOMPtr<nsIGenericFactory>
mUrlListenerManagerFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 185 -- nsCOMPtr<nsIGenericFactory>
mMsgMailSessionFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 186 -- nsCOMPtr<nsIGenericFactory> 
mMessengerFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 187 -- nsCOMPtr<nsIGenericFactory>
mMsgAccountManagerFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 188 -- nsCOMPtr<nsIGenericFactory>
mMessengerMigratorFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 189 -- nsCOMPtr<nsIGenericFactory>
mMsgAccountFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 190 -- nsCOMPtr<nsIGenericFactory> 
mMsgIdentityFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 191 -- nsCOMPtr<nsIGenericFactory>
mMsgFolderDataSourceFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 192 -- nsCOMPtr<nsIGenericFactory>
mMsgMessageDataSourceFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 193 -- nsCOMPtr<nsIGenericFactory>
mMsgAccountManagerDataSourceFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 194 -- nsCOMPtr<nsIGenericFactory>
mMsgFilterServiceFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 195 -- nsCOMPtr<nsIGenericFactory>
mMsgBiffManagerFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 196 -- nsCOMPtr<nsIGenericFactory>
mMsgNotificationManagerFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 197 -- nsCOMPtr<nsIGenericFactory>
mCopyMessageStreamListenerFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 198 -- nsCOMPtr<nsIGenericFactory>
mMsgCopyServiceFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 199 -- nsCOMPtr<nsIGenericFactory>
mMsgFolderCacheFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 200 -- nsCOMPtr<nsIGenericFactory>
mMsgStatusFeedbackFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 201 -- nsCOMPtr<nsIGenericFactory>
mMessageViewFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 202 -- nsCOMPtr<nsIGenericFactory>
mMsgWindowFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 203 -- nsCOMPtr<nsIGenericFactory>
mMsgViewNavigationServiceFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 204 -- nsCOMPtr<nsIGenericFactory>
mMsgServiceProviderServiceFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 205 -- nsCOMPtr<nsIGenericFactory>
mMsgPrintEngineFactory;
/mailnews/base/build/nsMsgFactory.cpp, line 282 -- nsCOMPtr<nsIGenericFactory> 
fact;
/mailnews/compose/build/nsMsgCompFactory.cpp, line 29 -- #include 
"nsIGenericFactory.h"
/mailnews/compose/src/nsMsgCreate.cpp, line 28 -- #include "nsIGenericFactory.h"
/mailnews/compose/src/nsMsgQuote.cpp, line 27 -- #include "nsIGenericFactory.h"
/mailnews/compose/tests/compose/test.cpp, line 47 -- #include 
"nsIGenericFactory.h"
/mailnews/compose/tests/geturl/geturl.cpp, line 39 -- #include 
"nsIGenericFactory.h"
/mailnews/compose/tests/sendpage/Test.cpp, line 33 -- #include 
"nsIGenericFactory.h"
/mailnews/db/msgdb/build/nsMsgDBFactory.cpp, line 27 -- #include 
"nsIGenericFactory.h"
/mailnews/db/msgdb/build/nsMsgDBFactory.cpp, line 61 -- 
nsCOMPtr<nsIGenericFactory>
mMailDBFactory;
/mailnews/db/msgdb/build/nsMsgDBFactory.cpp, line 62 -- 
nsCOMPtr<nsIGenericFactory>
mNewsDBFactory;
/mailnews/db/msgdb/build/nsMsgDBFactory.cpp, line 63 -- 
nsCOMPtr<nsIGenericFactory>
mImapDBFactory;
/mailnews/db/msgdb/build/nsMsgDBFactory.cpp, line 124 -- 
nsCOMPtr<nsIGenericFactory> fact;
/mailnews/imap/build/nsImapFactory.cpp, line 27 -- #include 
"nsIGenericFactory.h"
/mailnews/imap/build/nsImapFactory.cpp, line 76 -- nsCOMPtr<nsIGenericFactory> 
mImapUrlFactory;
/mailnews/imap/build/nsImapFactory.cpp, line 77 -- nsCOMPtr<nsIGenericFactory>
mImapProtocolFactory;
/mailnews/imap/build/nsImapFactory.cpp, line 78 -- nsCOMPtr<nsIGenericFactory>
mImapHostSessionFactory;
/mailnews/imap/build/nsImapFactory.cpp, line 79 -- nsCOMPtr<nsIGenericFactory>
mImapIncomingServerFactory;
/mailnews/imap/build/nsImapFactory.cpp, line 80 -- nsCOMPtr<nsIGenericFactory>
mImapServiceFactory;
/mailnews/imap/build/nsImapFactory.cpp, line 81 -- nsCOMPtr<nsIGenericFactory>
mImapMailFolderFactory;
/mailnews/imap/build/nsImapFactory.cpp, line 82 -- nsCOMPtr<nsIGenericFactory>
mImapMockChannelFactory;
/mailnews/imap/build/nsImapFactory.cpp, line 83 -- nsCOMPtr<nsIGenericFactory>
mImapMessageFactory;
/mailnews/imap/build/nsImapFactory.cpp, line 148 -- nsCOMPtr<nsIGenericFactory> 
fact;
/mailnews/import/oexpress/nsOEFactory.cpp, line 29 -- #include 
"nsIGenericFactory.h"
/mailnews/import/src/nsImportFactory.cpp, line 24 -- #include 
"nsIGenericFactory.h"
/mailnews/import/outlook/src/nsOutlookFactory.cpp, line 29 -- #include 
"nsIGenericFactory.h"
/mailnews/import/eudora/src/nsEudoraFactory.cpp, line 25 -- #include 
"nsIGenericFactory.h"
/mailnews/import/text/src/nsTextFactory.cpp, line 25 -- #include 
"nsIGenericFactory.h"
/mailnews/local/build/nsMsgLocalFactory.cpp, line 26 -- #include 
"nsIGenericFactory.h"
/mailnews/local/build/nsMsgLocalFactory.cpp, line 89 -- 
nsCOMPtr<nsIGenericFactory>
mMailboxUrlFactory;
/mailnews/local/build/nsMsgLocalFactory.cpp, line 90 -- 
nsCOMPtr<nsIGenericFactory>
mPop3UrlFactory;
/mailnews/local/build/nsMsgLocalFactory.cpp, line 91 -- 
nsCOMPtr<nsIGenericFactory>
mMailboxParserFactory;
/mailnews/local/build/nsMsgLocalFactory.cpp, line 92 -- 
nsCOMPtr<nsIGenericFactory>
mMailboxServiceFactory;
/mailnews/local/build/nsMsgLocalFactory.cpp, line 93 -- 
nsCOMPtr<nsIGenericFactory>
mPop3ServiceFactory;
/mailnews/local/build/nsMsgLocalFactory.cpp, line 94 -- 
nsCOMPtr<nsIGenericFactory>
mNoneServiceFactory;
/mailnews/local/build/nsMsgLocalFactory.cpp, line 95 -- 
nsCOMPtr<nsIGenericFactory>
mLocalMailFolderFactory;
/mailnews/local/build/nsMsgLocalFactory.cpp, line 96 -- 
nsCOMPtr<nsIGenericFactory>
mLocalMessageFactory;
/mailnews/local/build/nsMsgLocalFactory.cpp, line 97 -- 
nsCOMPtr<nsIGenericFactory>
mParseMailMsgStateFactory;
/mailnews/local/build/nsMsgLocalFactory.cpp, line 98 -- 
nsCOMPtr<nsIGenericFactory>
mPop3IncomingServerFactory;
/mailnews/local/build/nsMsgLocalFactory.cpp, line 99 -- 
nsCOMPtr<nsIGenericFactory>
mNoIncomingServerFactory;
/mailnews/local/build/nsMsgLocalFactory.cpp, line 100 -- 
nsCOMPtr<nsIGenericFactory>
mLocalStringBundleFactory;
/mailnews/local/build/nsMsgLocalFactory.cpp, line 169 -- 
nsCOMPtr<nsIGenericFactory> fact;
/mailnews/mime/build/nsMimeModule.cpp, line 25 -- #include "nsIGenericFactory.h"
/mailnews/mime/build/nsMimeModule.cpp, line 67 -- nsCOMPtr<nsIGenericFactory>
mObjectClassAccessFactory;
/mailnews/mime/build/nsMimeModule.cpp, line 68 -- nsCOMPtr<nsIGenericFactory>
mMimeConverterFactory;
/mailnews/mime/build/nsMimeModule.cpp, line 69 -- nsCOMPtr<nsIGenericFactory>
mStreamConverterFactory;
/mailnews/mime/build/nsMimeModule.cpp, line 70 -- nsCOMPtr<nsIGenericFactory>
mMsgHeaderParserFactory;
/mailnews/mime/build/nsMimeModule.cpp, line 71 -- nsCOMPtr<nsIGenericFactory>
mMimeHeadersFactory;
/mailnews/mime/build/nsMimeModule.cpp, line 133 -- nsCOMPtr<nsIGenericFactory> 
fact;
/mailnews/mime/cthandlers/vcard/nsVCardFactory.cpp, line 23 -- #include 
"nsIGenericFactory.h"
/mailnews/mime/emitters/build/nsEmitterFactory.cpp, line 29 -- #include 
"nsIGenericFactory.h"
/mailnews/mime/tests/mimetest/mimetest.cpp, line 34 -- #include 
"nsIGenericFactory.h"
/mailnews/news/build/nsMsgNewsFactory.cpp, line 26 -- #include 
"nsIGenericFactory.h"
Status: RESOLVED → VERIFIED
Product: MailNews → Core
Product: Core → MailNews Core
You need to log in before you can comment on or make changes to this bug.