blob: d9a12cb7bf1b3010ed1b810ee92489609a45ca45 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
// Copyright (c) 2013 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.
#include "content/browser/indexed_db/leveldb/leveldb_write_batch.h"
#include "base/strings/string_piece.h"
#include "third_party/leveldatabase/src/include/leveldb/slice.h"
#include "third_party/leveldatabase/src/include/leveldb/write_batch.h"
namespace content {
scoped_ptr<LevelDBWriteBatch> LevelDBWriteBatch::Create() {
return make_scoped_ptr(new LevelDBWriteBatch);
}
LevelDBWriteBatch::LevelDBWriteBatch()
: write_batch_(new leveldb::WriteBatch) {}
LevelDBWriteBatch::~LevelDBWriteBatch() {}
static leveldb::Slice MakeSlice(const base::StringPiece& s) {
return leveldb::Slice(s.begin(), s.size());
}
void LevelDBWriteBatch::Put(const base::StringPiece& key,
const base::StringPiece& value) {
write_batch_->Put(MakeSlice(key), MakeSlice(value));
}
void LevelDBWriteBatch::Remove(const base::StringPiece& key) {
write_batch_->Delete(MakeSlice(key));
}
void LevelDBWriteBatch::Clear() { write_batch_->Clear(); }
} // namespace content
|