diff --git a/mozilla/mailnews/base/util/nsMsgIncomingServer.cpp b/mozilla/mailnews/base/util/nsMsgIncomingServer.cpp index b9f563f0bea..239bca360a3 100644 --- a/mozilla/mailnews/base/util/nsMsgIncomingServer.cpp +++ b/mozilla/mailnews/base/util/nsMsgIncomingServer.cpp @@ -63,7 +63,8 @@ #include "nsIWebShell.h" #include "nsIWebShellWindow.h" #include "nsIAuthPrompt.h" -#include "nsIWalletService.h" +#include "nsIObserverService.h" +#include "nsNetUtil.h" #include "nsIWindowWatcher.h" #include "nsIStringBundle.h" @@ -80,7 +81,6 @@ static NS_DEFINE_CID(kPrefServiceCID, NS_PREF_CID); static NS_DEFINE_CID(kRDFServiceCID, NS_RDFSERVICE_CID); -static NS_DEFINE_CID(kWalletServiceCID, NS_WALLETSERVICE_CID); static NS_DEFINE_CID(kMsgFilterServiceCID, NS_MSGFILTERSERVICE_CID); #define OFFLINE_STATUS_CHANGED_TOPIC "network:offline-status-changed" @@ -771,37 +771,39 @@ nsMsgIncomingServer::StorePassword() rv = GetPassword(getter_Copies(pwd)); if (NS_FAILED(rv)) return rv; - nsCOMPtr walletservice = - do_GetService(kWalletServiceCID, &rv); - if (NS_FAILED(rv)) return rv; + nsCOMPtr os = do_GetService("@mozilla.org/observer-service;1"); + if (os) { + nsXPIDLCString serverSpec; + rv = GetServerURI(getter_Copies(serverSpec)); + if (NS_FAILED(rv)) return rv; - nsXPIDLCString serverUri; - rv = GetServerURI(getter_Copies(serverUri)); - if (NS_FAILED(rv)) return rv; + nsCOMPtr uri; + NS_NewURI(getter_AddRefs(uri), serverSpec); + + rv = os->NotifyObservers(uri, "login-succeeded", PromiseFlatString(NS_ConvertUTF8toUCS2(pwd)).get()); + } - nsAutoString password; password.AssignWithConversion((const char *)pwd); - rv = walletservice->SI_StorePassword((const char *)serverUri, nsnull, password.get()); return rv; } NS_IMETHODIMP nsMsgIncomingServer::ForgetPassword() { - nsresult rv; - nsCOMPtr walletservice = - do_GetService(kWalletServiceCID, &rv); - if (NS_FAILED(rv)) return rv; + nsresult rv = NS_OK; - - nsXPIDLCString serverUri; - rv = GetServerURI(getter_Copies(serverUri)); - if (NS_FAILED(rv)) return rv; + nsCOMPtr os = do_GetService("@mozilla.org/observer-service;1"); + if (os) { + nsXPIDLCString serverSpec; + rv = GetServerURI(getter_Copies(serverSpec)); + if (NS_FAILED(rv)) return rv; + + nsCOMPtr uri; + NS_NewURI(getter_AddRefs(uri), serverSpec); + + rv = os->NotifyObservers(uri, "login-failed", nsnull); + } rv = SetPassword(""); - if (NS_FAILED(rv)) return rv; - - - rv = walletservice->SI_RemoveUser((const char *)serverUri, nsnull); return rv; } diff --git a/mozilla/mailnews/news/src/nsNewsFolder.cpp b/mozilla/mailnews/news/src/nsNewsFolder.cpp index 8147f1b7ab6..6d3c37d8c9f 100644 --- a/mozilla/mailnews/news/src/nsNewsFolder.cpp +++ b/mozilla/mailnews/news/src/nsNewsFolder.cpp @@ -79,7 +79,9 @@ #include "nsXPIDLString.h" -#include "nsIWalletService.h" +#include "nsIObserverService.h" +#include "nsNetUtil.h" +#include "nsIAuthPrompt.h" #include "nsIURL.h" #include "nsNetCID.h" #include "nsINntpUrl.h" @@ -100,7 +102,6 @@ static NS_DEFINE_CID(kRDFServiceCID, NS_RDFSERVICE_CID); static NS_DEFINE_CID(kCNewsDB, NS_NEWSDB_CID); static NS_DEFINE_CID(kMsgMailSessionCID, NS_MSGMAILSESSION_CID); static NS_DEFINE_CID(kPrefServiceCID, NS_PREF_CID); -static NS_DEFINE_CID(kWalletServiceCID, NS_WALLETSERVICE_CID); static NS_DEFINE_CID(kStandardUrlCID, NS_STANDARDURL_CID); // ###tw This really ought to be the most @@ -1270,37 +1271,39 @@ nsresult nsMsgNewsFolder::CreateNewsgroupUrlForSignon(const char *inUriStr, cons NS_IMETHODIMP nsMsgNewsFolder::ForgetGroupUsername() { - nsresult rv; - nsCOMPtr walletservice = - do_GetService(kWalletServiceCID, &rv); - if (NS_FAILED(rv)) return rv; + nsresult rv = NS_OK; + nsCOMPtr os = do_GetService("@mozilla.org/observer-service;1"); + if (os) { + rv = SetGroupUsername(nsnull); + if (NS_FAILED(rv)) return rv; - rv = SetGroupUsername(nsnull); - if (NS_FAILED(rv)) return rv; + nsXPIDLCString signonURL; + rv = CreateNewsgroupUsernameUrlForSignon(mURI, getter_Copies(signonURL)); + if (NS_FAILED(rv)) return rv; - nsXPIDLCString signonURL; - rv = CreateNewsgroupUsernameUrlForSignon(mURI, getter_Copies(signonURL)); - if (NS_FAILED(rv)) return rv; - - rv = walletservice->SI_RemoveUser((const char *)signonURL, nsnull); + nsCOMPtr uri; + NS_NewURI(getter_AddRefs(uri), signonURL); + rv = os->NotifyObservers(uri, "login-failed", nsnull); + } return rv; } NS_IMETHODIMP nsMsgNewsFolder::ForgetGroupPassword() { - nsresult rv; - nsCOMPtr walletservice = - do_GetService(kWalletServiceCID, &rv); - if (NS_FAILED(rv)) return rv; + nsresult rv = NS_OK; + nsCOMPtr os = do_GetService("@mozilla.org/observer-service;1"); + if (os) { + rv = SetGroupPassword(nsnull); + if (NS_FAILED(rv)) return rv; - rv = SetGroupPassword(nsnull); - if (NS_FAILED(rv)) return rv; + nsXPIDLCString signonURL; + rv = CreateNewsgroupPasswordUrlForSignon(mURI, getter_Copies(signonURL)); + if (NS_FAILED(rv)) return rv; - nsXPIDLCString signonURL; - rv = CreateNewsgroupPasswordUrlForSignon(mURI, getter_Copies(signonURL)); - if (NS_FAILED(rv)) return rv; - - rv = walletservice->SI_RemoveUser((const char *)signonURL, nsnull); + nsCOMPtr uri; + NS_NewURI(getter_AddRefs(uri), signonURL); + rv = os->NotifyObservers(uri, "login-failed", nsnull); + } return rv; }