| Index: third_party/WebKit/Source/modules/indexeddb/WebIDBObserverImpl.h
|
| diff --git a/third_party/WebKit/Source/modules/indexeddb/WebIDBObserverImpl.h b/third_party/WebKit/Source/modules/indexeddb/WebIDBObserverImpl.h
|
| index fd6625b176ae42575894f92c8b027eade66d8c24..8c4688f8552b35ff1304e2efe31ee94c8f325b9e 100644
|
| --- a/third_party/WebKit/Source/modules/indexeddb/WebIDBObserverImpl.h
|
| +++ b/third_party/WebKit/Source/modules/indexeddb/WebIDBObserverImpl.h
|
| @@ -5,9 +5,12 @@
|
| #ifndef WebIDBObserverImpl_h
|
| #define WebIDBObserverImpl_h
|
|
|
| +#include <bitset>
|
| +
|
| #include "modules/indexeddb/IDBObserver.h"
|
| #include "platform/heap/Persistent.h"
|
| #include "public/platform/modules/indexeddb/WebIDBObserver.h"
|
| +#include "public/platform/modules/indexeddb/WebIDBTypes.h"
|
|
|
| namespace blink {
|
|
|
| @@ -18,27 +21,42 @@ class WebIDBObserverImpl final : public WebIDBObserver {
|
| USING_FAST_MALLOC(WebIDBObserverImpl);
|
|
|
| public:
|
| - static std::unique_ptr<WebIDBObserverImpl> create(IDBObserver*);
|
| + static std::unique_ptr<WebIDBObserverImpl> create(
|
| + IDBObserver*,
|
| + bool transaction,
|
| + bool values,
|
| + bool noRecords,
|
| + std::bitset<WebIDBOperationTypeCount> operationTypes);
|
|
|
| ~WebIDBObserverImpl() override;
|
|
|
| void setId(int32_t);
|
|
|
| - bool transaction() const { return m_observer->transaction(); }
|
| - bool noRecords() const { return m_observer->noRecords(); }
|
| - bool values() const { return m_observer->values(); }
|
| + bool transaction() const { return m_transaction; }
|
| + bool noRecords() const { return m_noRecords; }
|
| + bool values() const { return m_values; }
|
| const std::bitset<WebIDBOperationTypeCount>& operationTypes() const {
|
| - return m_observer->operationTypes();
|
| + return m_operationTypes;
|
| }
|
| +
|
| void onChange(const WebVector<WebIDBObservation>&,
|
| const WebVector<int32_t>& observationIndex);
|
|
|
| private:
|
| enum { kInvalidObserverId = -1 };
|
|
|
| - explicit WebIDBObserverImpl(IDBObserver*);
|
| + WebIDBObserverImpl(IDBObserver*,
|
| + bool transaction,
|
| + bool values,
|
| + bool noRecords,
|
| + std::bitset<WebIDBOperationTypeCount> operationTypes);
|
|
|
| int32_t m_id;
|
| + bool m_transaction;
|
| + bool m_values;
|
| + bool m_noRecords;
|
| + // Operation type bits are set corresponding to WebIDBOperationType.
|
| + std::bitset<WebIDBOperationTypeCount> m_operationTypes;
|
| Persistent<IDBObserver> m_observer;
|
| };
|
|
|
|
|