Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
[BlackBerry]New feature: support about:cookie for internal build.
https://bugs.webkit.org/show_bug.cgi?id=80367

Patch by Jason Liu <jason.liu@torchmobile.com.cn> on 2012-03-08
Reviewed by Antonio Gomes.

No new tests.

* platform/blackberry/CookieManager.cpp:
(WebCore::CookieManager::generateHtmlFragmentForCookies):
(WebCore):
* platform/blackberry/CookieManager.h:
* platform/network/blackberry/NetworkJob.cpp:
(WebCore::NetworkJob::handleAbout):

Canonical link: https://commits.webkit.org/97781@main
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@110176 268f45cc-cd09-0410-ab3c-d52691b4dbfc
  • Loading branch information
Jason Liu authored and webkit-commit-queue committed Mar 8, 2012
1 parent 6658855 commit 88a2a4f
Show file tree
Hide file tree
Showing 4 changed files with 57 additions and 0 deletions.
16 changes: 16 additions & 0 deletions Source/WebCore/ChangeLog
@@ -1,3 +1,19 @@
2012-03-08 Jason Liu <jason.liu@torchmobile.com.cn>

[BlackBerry]New feature: support about:cookie for internal build.
https://bugs.webkit.org/show_bug.cgi?id=80367

Reviewed by Antonio Gomes.

No new tests.

* platform/blackberry/CookieManager.cpp:
(WebCore::CookieManager::generateHtmlFragmentForCookies):
(WebCore):
* platform/blackberry/CookieManager.h:
* platform/network/blackberry/NetworkJob.cpp:
(WebCore::NetworkJob::handleAbout):

2012-03-08 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>

Make elements with attributes smaller by eliminating the m_element back pointer in NamedNodeMap
Expand Down
35 changes: 35 additions & 0 deletions Source/WebCore/platform/blackberry/CookieManager.cpp
Expand Up @@ -218,6 +218,41 @@ String CookieManager::getCookie(const KURL& url, CookieFilter filter) const
return cookieStringBuilder.toString();
}

String CookieManager::generateHtmlFragmentForCookies()
{
CookieLog("CookieManager - generateHtmlFragmentForCookies\n");

Vector<ParsedCookie*> cookieCandidates;
for (HashMap<String, CookieMap*>::iterator it = m_managerMap.begin(); it != m_managerMap.end(); ++it)
it->second->getAllChildCookies(&cookieCandidates);

String result;
ParsedCookie* cookie = 0;
result.append(String("<table style=\"word-wrap:break-word\" cellSpacing=\"0\" cellPadding=\"0\" border=\"1\"><tr><th>Domain</th><th>Path</th><th>Protocol</th><th>Name</th><th>Value</th><th>Secure</th><th>HttpOnly</th><th>Session</th></tr>"));
for (size_t i = 0; i < cookieCandidates.size(); ++i) {
cookie = cookieCandidates[i];
result.append(String("<tr><td align=\"center\">"));
result.append(cookie->domain());
result.append(String("<td align=\"center\">"));
result.append(cookie->path());
result.append(String("<td align=\"center\">"));
result.append(cookie->protocol());
result.append(String("<td align=\"center\">"));
result.append(cookie->name());
result.append(String("<td align=\"center\" style= \"word-break:break-all\">"));
result.append(cookie->value());
result.append(String("<td align=\"center\">"));
result.append(String(cookie->isSecure() ? "Yes" : "No"));
result.append(String("<td align=\"center\">"));
result.append(String(cookie->isHttpOnly() ? "Yes" : "No"));
result.append(String("<td align=\"center\">"));
result.append(String(cookie->isSession() ? "Yes" : "No"));
result.append(String("</td></tr>"));
}
result.append(String("</table>"));
return result;
}

void CookieManager::getRawCookies(Vector<ParsedCookie*> &stackOfCookies, const KURL& requestURL, CookieFilter filter) const
{
CookieLog("CookieManager - getRawCookies - processing url with domain - %s & protocol: %s & path: %s\n", requestURL.host().utf8().data(), requestURL.protocol().utf8().data(), requestURL.path().utf8().data());
Expand Down
1 change: 1 addition & 0 deletions Source/WebCore/platform/blackberry/CookieManager.h
Expand Up @@ -103,6 +103,7 @@ class CookieManager: public BlackBerry::Platform::GuardedPointerBase {
CookieStorageAcceptPolicy cookiePolicy() const { return m_policy; }
void setPrivateMode(const bool);

String generateHtmlFragmentForCookies();
String getCookie(const KURL& requestURL, CookieFilter) const;

// Returns all cookies that are associated with the specified URL as raw cookies.
Expand Down
5 changes: 5 additions & 0 deletions Source/WebCore/platform/network/blackberry/NetworkJob.cpp
Expand Up @@ -941,6 +941,11 @@ void NetworkJob::handleAbout()
client->setDiskCacheEnabled(true);
result.append(String("<html><head><title>BlackBerry Browser Disk Cache</title></head><body>Http disk cache is enabled.</body></html>"));
handled = true;
} else if (equalIgnoringCase(aboutWhat, "cookie")) {
result.append(String("<html><head><title>BlackBerry Browser cookie information</title></head><body>"));
result.append(cookieManager().generateHtmlFragmentForCookies());
result.append(String("</body></html>"));
handled = true;
} else if (equalIgnoringCase(aboutWhat, "version")) {
result.append(String("<html><meta name=\"viewport\" content=\"width=device-width, user-scalable=no\"></head><body>"));
result.append(String(BlackBerry::Platform::BUILDTIME));
Expand Down

0 comments on commit 88a2a4f

Please sign in to comment.