Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2933)

Unified Diff: chrome/browser/services/gcm/push_messaging_service_impl.h

Issue 955673004: Move gcm-independent parts of push messaging out of gcm namespace and directory (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: remove redundant cast Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/services/gcm/push_messaging_service_impl.h
diff --git a/chrome/browser/services/gcm/push_messaging_service_impl.h b/chrome/browser/services/gcm/push_messaging_service_impl.h
deleted file mode 100644
index fecf540ec8d7131da494773aea478378fed9a77d..0000000000000000000000000000000000000000
--- a/chrome/browser/services/gcm/push_messaging_service_impl.h
+++ /dev/null
@@ -1,172 +0,0 @@
-// 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.
-
-#ifndef CHROME_BROWSER_SERVICES_GCM_PUSH_MESSAGING_SERVICE_IMPL_H_
-#define CHROME_BROWSER_SERVICES_GCM_PUSH_MESSAGING_SERVICE_IMPL_H_
-
-#include "base/compiler_specific.h"
-#include "base/memory/weak_ptr.h"
-#include "components/content_settings/core/browser/content_settings_observer.h"
-#include "components/content_settings/core/common/content_settings.h"
-#include "components/gcm_driver/gcm_app_handler.h"
-#include "components/gcm_driver/gcm_client.h"
-#include "content/public/browser/push_messaging_service.h"
-#include "content/public/common/push_messaging_status.h"
-#include "third_party/WebKit/public/platform/modules/push_messaging/WebPushPermissionStatus.h"
-
-class Profile;
-
-namespace user_prefs {
-class PrefRegistrySyncable;
-}
-
-namespace gcm {
-
-class GCMProfileService;
-class PushMessagingApplicationId;
-
-class PushMessagingServiceImpl : public content::PushMessagingService,
- public GCMAppHandler,
- public content_settings::Observer {
- public:
- // Register profile-specific prefs for GCM.
- static void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry);
-
- // If any Service Workers are using push, starts GCM and adds an app handler.
- static void InitializeForProfile(Profile* profile);
-
- PushMessagingServiceImpl(GCMProfileService* gcm_profile_service,
- Profile* profile);
- ~PushMessagingServiceImpl() override;
-
- // GCMAppHandler implementation.
- void ShutdownHandler() override;
- void OnMessage(const std::string& app_id,
- const GCMClient::IncomingMessage& message) override;
- void OnMessagesDeleted(const std::string& app_id) override;
- void OnSendError(
- const std::string& app_id,
- const GCMClient::SendErrorDetails& send_error_details) override;
- void OnSendAcknowledged(const std::string& app_id,
- const std::string& message_id) override;
- bool CanHandle(const std::string& app_id) const override;
-
- // content::PushMessagingService implementation:
- GURL GetPushEndpoint() override;
- void RegisterFromDocument(
- const GURL& requesting_origin,
- int64 service_worker_registration_id,
- const std::string& sender_id,
- int renderer_id,
- int render_frame_id,
- bool user_visible_only,
- const content::PushMessagingService::RegisterCallback& callback) override;
- void RegisterFromWorker(
- const GURL& requesting_origin,
- int64 service_worker_registration_id,
- const std::string& sender_id,
- const content::PushMessagingService::RegisterCallback& callback) override;
- void Unregister(
- const GURL& requesting_origin,
- int64 service_worker_registration_id,
- const std::string& sender_id,
- bool retry_on_failure,
- const content::PushMessagingService::UnregisterCallback&) override;
- blink::WebPushPermissionStatus GetPermissionStatus(
- const GURL& requesting_origin,
- const GURL& embedding_origin) override;
-
- // content_settings::Observer implementation.
- void OnContentSettingChanged(const ContentSettingsPattern& primary_pattern,
- const ContentSettingsPattern& secondary_pattern,
- ContentSettingsType content_type,
- std::string resource_identifier) override;
-
- void SetProfileForTesting(Profile* profile);
-
- private:
- // A registration is pending until it has succeeded or failed.
- void IncreasePushRegistrationCount(int add, bool is_pending);
- void DecreasePushRegistrationCount(int subtract, bool was_pending);
-
- // OnMessage methods ---------------------------------------------------------
-
- void DeliverMessageCallback(const std::string& app_id_guid,
- const GURL& requesting_origin,
- int64 service_worker_registration_id,
- const GCMClient::IncomingMessage& message,
- content::PushDeliveryStatus status);
-
- // Developers are required to display a Web Notification in response to an
- // incoming push message in order to clarify to the user that something has
- // happened in the background. When they forget to do so, display a default
- // notification on their behalf.
- void RequireUserVisibleUX(const GURL& requesting_origin,
- int64 service_worker_registration_id);
- void DidGetNotificationsShown(
- const GURL& requesting_origin,
- int64 service_worker_registration_id,
- bool notification_shown,
- bool notification_needed,
- const std::string& data,
- bool success,
- bool not_found);
-
- // Register methods ----------------------------------------------------------
-
- void RegisterEnd(
- const content::PushMessagingService::RegisterCallback& callback,
- const std::string& registration_id,
- content::PushRegistrationStatus status);
-
- void DidRegister(
- const PushMessagingApplicationId& application_id,
- const content::PushMessagingService::RegisterCallback& callback,
- const std::string& registration_id,
- GCMClient::Result result);
-
- void DidRequestPermission(
- const PushMessagingApplicationId& application_id,
- const std::string& sender_id,
- const content::PushMessagingService::RegisterCallback& callback,
- ContentSetting content_setting);
-
- // Unregister methods --------------------------------------------------------
-
- void Unregister(const std::string& app_id_guid,
- const std::string& sender_id,
- bool retry_on_failure,
- const content::PushMessagingService::UnregisterCallback&);
-
- void DidUnregister(const std::string& app_id_guid,
- bool retry_on_failure,
- const content::PushMessagingService::UnregisterCallback&,
- GCMClient::Result result);
-
- // OnContentSettingChanged methods -------------------------------------------
-
- void UnregisterBecausePermissionRevoked(const PushMessagingApplicationId& id,
- const std::string& sender_id,
- bool success, bool not_found);
-
- // Helper methods ------------------------------------------------------------
-
- // Checks if a given origin is allowed to use Push.
- bool HasPermission(const GURL& origin);
-
- GCMProfileService* gcm_profile_service_; // It owns us.
-
- Profile* profile_; // It owns our owner.
-
- int push_registration_count_;
- int pending_push_registration_count_;
-
- base::WeakPtrFactory<PushMessagingServiceImpl> weak_factory_;
-
- DISALLOW_COPY_AND_ASSIGN(PushMessagingServiceImpl);
-};
-
-} // namespace gcm
-
-#endif // CHROME_BROWSER_SERVICES_GCM_PUSH_MESSAGING_SERVICE_IMPL_H_

Powered by Google App Engine
This is Rietveld 408576698