зеркало из https://github.com/mozilla/gecko-dev.git
add GetLocalFoldersServer() for bienvenu, and use it in the account wizard.
also, stub out news filter migration calls in the messenger migrator code. r=bienvenu
This commit is contained in:
Родитель
29f1d9a2cc
Коммит
3f5595153a
|
@ -333,16 +333,14 @@ function copyObjectToInterface(dest, src) {
|
|||
}
|
||||
}
|
||||
|
||||
// check if there already is a "none" account. (aka "Local Folders")
|
||||
// check if there already is a "Local Folders"
|
||||
// if not, create it.
|
||||
function verifyLocalFoldersAccount(account) {
|
||||
|
||||
dump("Looking for local mail..\n");
|
||||
dump("Looking for Local Folders.....\n");
|
||||
var localMailServer = null;
|
||||
try {
|
||||
// look for anything that is of type "none".
|
||||
// "none" is the type for "Local Mail"
|
||||
localMailServer = am.FindServer("","","none");
|
||||
localMailServer = am.localFoldersServer;
|
||||
}
|
||||
catch (ex) {
|
||||
// dump("exception in findserver: " + ex + "\n");
|
||||
|
@ -364,7 +362,7 @@ function verifyLocalFoldersAccount(account) {
|
|||
messengerMigrator = Components.classes["component://netscape/messenger/migrator"].getService(Components.interfaces.nsIMessengerMigrator);
|
||||
messengerMigrator.createLocalMailAccount(false /* false, since we are not migrating */);
|
||||
try {
|
||||
localMailServer = am.FindServer("","","none");
|
||||
localMailServer = am.localFoldersServer;
|
||||
}
|
||||
catch (ex) {
|
||||
dump("error! we should have found the local mail server after we created it.\n");
|
||||
|
|
|
@ -66,7 +66,6 @@ interface nsIMsgAccountManager : nsISupports {
|
|||
*/
|
||||
nsIMsgIncomingServer getIncomingServer(in string key);
|
||||
|
||||
|
||||
/* account list stuff */
|
||||
|
||||
/* defaultAccount should always be set if there are any accounts
|
||||
|
@ -119,6 +118,10 @@ interface nsIMsgAccountManager : nsISupports {
|
|||
*/
|
||||
nsISupportsArray GetServersForIdentity(in nsIMsgIdentity identity);
|
||||
|
||||
/* there is a special server "Local Folders" that is guaranteed to exist.
|
||||
* this will allow you to get */
|
||||
readonly attribute nsIMsgIncomingServer localFoldersServer;
|
||||
|
||||
/* load accounts kicks off the creation of all accounts. You do not need
|
||||
* to call this and all accounts should be loaded lazily if you use any
|
||||
* of the above.
|
||||
|
|
|
@ -1247,6 +1247,10 @@ nsMessengerMigrator::MigrateMovemailAccount(nsIMsgIdentity *identity)
|
|||
rv = SetSendLaterUriPref(server);
|
||||
if (NS_FAILED(rv)) return rv;
|
||||
|
||||
// migrate the filter file
|
||||
rv = MigrateFilters(server);
|
||||
if (NS_FAILED(rv)) return rv;
|
||||
|
||||
// we could only have one movemail account in 4.x, so we make it the default in 5.0
|
||||
rv = accountManager->SetDefaultAccount(account);
|
||||
return rv;
|
||||
|
@ -2178,8 +2182,8 @@ nsMessengerMigrator::MigrateNewsAccount(nsIMsgIdentity *identity, const char *ho
|
|||
newsDir->CreateDir();
|
||||
}
|
||||
|
||||
// migrate the filter file
|
||||
rv = MigrateFilters(server);
|
||||
// migrate the filter files
|
||||
rv = MigrateNewsFilters(server);
|
||||
if (NS_FAILED(rv)) return rv;
|
||||
|
||||
return NS_OK;
|
||||
|
@ -2218,6 +2222,14 @@ nsMessengerMigrator::MigrateOldNntpPrefs(nsIMsgIncomingServer *server, const cha
|
|||
#define MIGRATE_FILTERS 1
|
||||
#endif
|
||||
|
||||
nsresult nsMessengerMigrator::MigrateNewsFilters(nsIMsgIncomingServer *aServer)
|
||||
{
|
||||
#ifdef DEBUG
|
||||
printf("news filter files aren't migrated, because we don't support hostinfo.dat files yet. I'm working on it.\n");
|
||||
#endif
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
nsresult nsMessengerMigrator::MigrateFilters(nsIMsgIncomingServer *aServer)
|
||||
{
|
||||
#ifdef MIGRATE_FILTERS
|
||||
|
|
|
@ -121,6 +121,7 @@ private:
|
|||
|
||||
nsresult SetSendLaterUriPref(nsIMsgIncomingServer *server);
|
||||
nsresult MigrateFilters(nsIMsgIncomingServer *server);
|
||||
nsresult MigrateNewsFilters(nsIMsgIncomingServer *server);
|
||||
|
||||
nsresult getPrefService();
|
||||
|
||||
|
|
|
@ -1621,3 +1621,8 @@ nsMsgAccountManager::removeListener(nsHashKey *aKey, void *element, void *aData)
|
|||
return PR_TRUE;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP nsMsgAccountManager::GetLocalFoldersServer(nsIMsgIncomingServer **aServer)
|
||||
{
|
||||
// right now, search for a server of type "none". eventually, we'll do this differently.
|
||||
return FindServer(nsnull,nsnull,"none",aServer);
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче