Index: content/shell/browser/shell_notification_manager.cc |
diff --git a/content/shell/browser/shell_notification_manager.cc b/content/shell/browser/shell_notification_manager.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..134f8bac11e38e396a26817fbf803c3f70bdceed |
--- /dev/null |
+++ b/content/shell/browser/shell_notification_manager.cc |
@@ -0,0 +1,39 @@ |
+// Copyright 2014 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#include "content/shell/browser/shell_notification_manager.h" |
+ |
+namespace content { |
+ |
+ShellNotificationManager::ShellNotificationManager() {} |
+ |
+ShellNotificationManager::~ShellNotificationManager() {} |
+ |
+blink::WebNotificationPermission |
+ShellNotificationManager::CheckPermission(const GURL& origin) { |
+ NotificationPermissionMap::iterator iter = |
+ permission_map_.find(origin); |
+ if (iter == permission_map_.end()) |
+ return blink::WebNotificationPermissionDefault; |
+ |
+ return iter->second; |
+} |
+ |
+void ShellNotificationManager::RequestPermission( |
+ const GURL& origin, |
+ const base::Callback<void(blink::WebNotificationPermission)>& callback) { |
+ callback.Run(CheckPermission(origin)); |
+} |
+ |
+void ShellNotificationManager::SetPermission( |
+ const GURL& origin, |
+ blink::WebNotificationPermission permission) { |
+ permission_map_[origin] = permission; |
+} |
+ |
+void ShellNotificationManager::ClearPermissions() { |
+ permission_map_.clear(); |
+} |
+ |
+} // namespace content |