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)#include "content/common/indexed_db/indexed_db_key_range.h"
65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#include "base/logging.h"
8ca12bfac764ba476d6cd062bf1dde12cc64c3f40Ben Murdoch#include "third_party/WebKit/public/platform/WebIDBTypes.h"
95821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
105821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace content {
115821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)IndexedDBKeyRange::IndexedDBKeyRange()
13f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    : lower_(blink::WebIDBKeyTypeNull),
14f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      upper_(blink::WebIDBKeyTypeNull),
1590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      lower_open_(false),
1690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      upper_open_(false) {}
1790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
1890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)IndexedDBKeyRange::IndexedDBKeyRange(const IndexedDBKey& lower,
1990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)                                     const IndexedDBKey& upper,
2090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)                                     bool lower_open,
2190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)                                     bool upper_open)
2290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)    : lower_(lower),
2390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      upper_(upper),
2490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      lower_open_(lower_open),
2590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      upper_open_(upper_open) {}
2690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
2790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)IndexedDBKeyRange::IndexedDBKeyRange(const IndexedDBKey& key)
2890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)    : lower_(key), upper_(key), lower_open_(false), upper_open_(false) {}
2990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
3090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)IndexedDBKeyRange::~IndexedDBKeyRange() {}
3190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
3290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)bool IndexedDBKeyRange::IsOnlyKey() const {
3390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)  if (lower_open_ || upper_open_)
3490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)    return false;
3590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
3623730a6e56a168d1879203e4b3819bb36e3d8f1fTorne (Richard Coles)  return lower_.Equals(upper_);
375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}
385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)
395821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)}  // namespace content
40