Chromium Code Reviews| Index: content/common/service_worker/service_worker_types.h |
| diff --git a/content/common/service_worker/service_worker_types.h b/content/common/service_worker/service_worker_types.h |
| index 8ee5545d50c2c464b6d5891d2b9effaf2cbc4e4d..88e443bdeffa9c0bc7cad9174b9cb3ba9833e03d 100644 |
| --- a/content/common/service_worker/service_worker_types.h |
| +++ b/content/common/service_worker/service_worker_types.h |
| @@ -31,6 +31,15 @@ const static int64 kInvalidServiceWorkerVersionId = -1; |
| const static int64 kInvalidServiceWorkerResourceId = -1; |
| const static int64 kInvalidServiceWorkerResponseId = -1; |
| +// Indicates how the service worker handled a fetch event. |
| +enum ServiceWorkerFetchEventResult { |
| + // Browser should fallback to native fetch. |
| + SERVICE_WORKER_FETCH_EVENT_RESULT_FALLBACK, |
| + // Service worker provided a ServiceWorkerResponse. |
| + SERVICE_WORKER_FETCH_EVENT_RESULT_RESPONSE, |
| + SERVICE_WORKER_FETCH_EVENT_LAST = SERVICE_WORKER_FETCH_EVENT_RESULT_RESPONSE |
| +}; |
| + |
| // To dispatch fetch request from browser to child process. |
| // TODO(kinuko): This struct will definitely need more fields and |
| // we'll probably want to have response struct/class too. |
| @@ -48,15 +57,6 @@ struct CONTENT_EXPORT ServiceWorkerFetchRequest { |
| bool is_reload; |
| }; |
| -// Indicates how the service worker handled a fetch event. |
| -enum ServiceWorkerFetchEventResult { |
| - // Browser should fallback to native fetch. |
| - SERVICE_WORKER_FETCH_EVENT_RESULT_FALLBACK, |
| - // Service worker provided a ServiceWorkerResponse. |
| - SERVICE_WORKER_FETCH_EVENT_RESULT_RESPONSE, |
| - SERVICE_WORKER_FETCH_EVENT_LAST = SERVICE_WORKER_FETCH_EVENT_RESULT_RESPONSE |
| -}; |
| - |
| // Represents a response to a fetch. |
| struct CONTENT_EXPORT ServiceWorkerResponse { |
| ServiceWorkerResponse(); |
| @@ -81,6 +81,30 @@ struct CONTENT_EXPORT ServiceWorkerObjectInfo { |
| blink::WebServiceWorkerState state; |
| }; |
| +class ChangedVersionAttributesMask { |
| + public: |
| + enum { |
| + INSTALLING_VERSION = 1 << 0, |
| + WAITING_VERSION = 1 << 1, |
| + ACTIVE_VERSION = 1 << 2, |
| + CONTROLLING_VERSION = 1 << 3, |
| + }; |
| + |
| + ChangedVersionAttributesMask() : changed_(0) {} |
| + explicit ChangedVersionAttributesMask(int changed) : changed_(changed) {} |
| + |
| + int changed() const { return changed_; } |
| + |
| + void add(int changed_versions) { changed_ |= changed_versions; } |
| + bool intalling_changed() const { return !!(changed_ & INSTALLING_VERSION); } |
|
falken
2014/07/02 05:42:12
"installing"
michaeln
2014/07/02 23:17:14
Done.
|
| + bool waiting_changed() const { return !!(changed_ & WAITING_VERSION); } |
| + bool active_changed() const { return !!(changed_ & ACTIVE_VERSION); } |
| + bool controller_changed() const { return !!(changed_ & CONTROLLING_VERSION); } |
| + |
| + private: |
| + int changed_; |
| +}; |
| + |
| } // namespace content |
| #endif // CONTENT_COMMON_SERVICE_WORKER_SERVICE_WORKER_TYPES_H_ |