indexed_db_key_range.h revision 90dce4d38c5ff5333bea97d859d4e484e27edf0c
15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifndef CONTENT_COMMON_INDEXED_DB_INDEXED_DB_KEY_RANGE_H_ 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define CONTENT_COMMON_INDEXED_DB_INDEXED_DB_KEY_RANGE_H_ 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 85821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "base/basictypes.h" 95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "content/common/content_export.h" 105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "content/common/indexed_db/indexed_db_key.h" 11c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "third_party/WebKit/Source/Platform/chromium/public/WebIDBKeyRange.h" 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace content { 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)class CONTENT_EXPORT IndexedDBKeyRange { 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) public: 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) IndexedDBKeyRange(); 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) explicit IndexedDBKeyRange(const WebKit::WebIDBKeyRange& key_range); 1990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) explicit IndexedDBKeyRange(const IndexedDBKey& onlyKey); 2090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) IndexedDBKeyRange(const IndexedDBKey& lower, 2190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) const IndexedDBKey& upper, 2290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) bool lower_open, 2390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) bool upper_open); 245821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) ~IndexedDBKeyRange(); 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const IndexedDBKey& lower() const { return lower_; } 275821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) const IndexedDBKey& upper() const { return upper_; } 285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) bool lowerOpen() const { return lower_open_; } 295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) bool upperOpen() const { return upper_open_; } 305821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 3190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles) bool IsOnlyKey() const; 325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) operator WebKit::WebIDBKeyRange() const; 345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) private: 365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) IndexedDBKey lower_; 375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) IndexedDBKey upper_; 385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) bool lower_open_; 395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) bool upper_open_; 405821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}; 415821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 425821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace content 435821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 445821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif // CONTENT_COMMON_INDEXED_DB_INDEXED_DB_KEY_RANGE_H_ 45