| Index: net/disk_cache/simple/simple_entry_operation.cc
|
| diff --git a/net/disk_cache/simple/simple_entry_operation.cc b/net/disk_cache/simple/simple_entry_operation.cc
|
| deleted file mode 100644
|
| index 7dfe0d2111f96f7bbd07ea8aa8373ba4346ef842..0000000000000000000000000000000000000000
|
| --- a/net/disk_cache/simple/simple_entry_operation.cc
|
| +++ /dev/null
|
| @@ -1,340 +0,0 @@
|
| -// Copyright 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 "net/disk_cache/simple/simple_entry_operation.h"
|
| -
|
| -#include "base/logging.h"
|
| -#include "net/base/io_buffer.h"
|
| -#include "net/disk_cache/disk_cache.h"
|
| -#include "net/disk_cache/simple/simple_entry_impl.h"
|
| -
|
| -namespace disk_cache {
|
| -
|
| -namespace {
|
| -
|
| -bool IsReadWriteType(unsigned int type) {
|
| - return type == SimpleEntryOperation::TYPE_READ ||
|
| - type == SimpleEntryOperation::TYPE_WRITE ||
|
| - type == SimpleEntryOperation::TYPE_READ_SPARSE ||
|
| - type == SimpleEntryOperation::TYPE_WRITE_SPARSE;
|
| -}
|
| -
|
| -bool IsReadType(unsigned type) {
|
| - return type == SimpleEntryOperation::TYPE_READ ||
|
| - type == SimpleEntryOperation::TYPE_READ_SPARSE;
|
| -}
|
| -
|
| -bool IsSparseType(unsigned type) {
|
| - return type == SimpleEntryOperation::TYPE_READ_SPARSE ||
|
| - type == SimpleEntryOperation::TYPE_WRITE_SPARSE;
|
| -}
|
| -
|
| -}
|
| -
|
| -SimpleEntryOperation::SimpleEntryOperation(const SimpleEntryOperation& other)
|
| - : entry_(other.entry_.get()),
|
| - buf_(other.buf_),
|
| - callback_(other.callback_),
|
| - out_entry_(other.out_entry_),
|
| - offset_(other.offset_),
|
| - sparse_offset_(other.sparse_offset_),
|
| - length_(other.length_),
|
| - out_start_(other.out_start_),
|
| - type_(other.type_),
|
| - have_index_(other.have_index_),
|
| - index_(other.index_),
|
| - truncate_(other.truncate_),
|
| - optimistic_(other.optimistic_),
|
| - alone_in_queue_(other.alone_in_queue_) {
|
| -}
|
| -
|
| -SimpleEntryOperation::~SimpleEntryOperation() {}
|
| -
|
| -// static
|
| -SimpleEntryOperation SimpleEntryOperation::OpenOperation(
|
| - SimpleEntryImpl* entry,
|
| - bool have_index,
|
| - const CompletionCallback& callback,
|
| - Entry** out_entry) {
|
| - return SimpleEntryOperation(entry,
|
| - NULL,
|
| - callback,
|
| - out_entry,
|
| - 0,
|
| - 0,
|
| - 0,
|
| - NULL,
|
| - TYPE_OPEN,
|
| - have_index,
|
| - 0,
|
| - false,
|
| - false,
|
| - false);
|
| -}
|
| -
|
| -// static
|
| -SimpleEntryOperation SimpleEntryOperation::CreateOperation(
|
| - SimpleEntryImpl* entry,
|
| - bool have_index,
|
| - const CompletionCallback& callback,
|
| - Entry** out_entry) {
|
| - return SimpleEntryOperation(entry,
|
| - NULL,
|
| - callback,
|
| - out_entry,
|
| - 0,
|
| - 0,
|
| - 0,
|
| - NULL,
|
| - TYPE_CREATE,
|
| - have_index,
|
| - 0,
|
| - false,
|
| - false,
|
| - false);
|
| -}
|
| -
|
| -// static
|
| -SimpleEntryOperation SimpleEntryOperation::CloseOperation(
|
| - SimpleEntryImpl* entry) {
|
| - return SimpleEntryOperation(entry,
|
| - NULL,
|
| - CompletionCallback(),
|
| - NULL,
|
| - 0,
|
| - 0,
|
| - 0,
|
| - NULL,
|
| - TYPE_CLOSE,
|
| - false,
|
| - 0,
|
| - false,
|
| - false,
|
| - false);
|
| -}
|
| -
|
| -// static
|
| -SimpleEntryOperation SimpleEntryOperation::ReadOperation(
|
| - SimpleEntryImpl* entry,
|
| - int index,
|
| - int offset,
|
| - int length,
|
| - net::IOBuffer* buf,
|
| - const CompletionCallback& callback,
|
| - bool alone_in_queue) {
|
| - return SimpleEntryOperation(entry,
|
| - buf,
|
| - callback,
|
| - NULL,
|
| - offset,
|
| - 0,
|
| - length,
|
| - NULL,
|
| - TYPE_READ,
|
| - false,
|
| - index,
|
| - false,
|
| - false,
|
| - alone_in_queue);
|
| -}
|
| -
|
| -// static
|
| -SimpleEntryOperation SimpleEntryOperation::WriteOperation(
|
| - SimpleEntryImpl* entry,
|
| - int index,
|
| - int offset,
|
| - int length,
|
| - net::IOBuffer* buf,
|
| - bool truncate,
|
| - bool optimistic,
|
| - const CompletionCallback& callback) {
|
| - return SimpleEntryOperation(entry,
|
| - buf,
|
| - callback,
|
| - NULL,
|
| - offset,
|
| - 0,
|
| - length,
|
| - NULL,
|
| - TYPE_WRITE,
|
| - false,
|
| - index,
|
| - truncate,
|
| - optimistic,
|
| - false);
|
| -}
|
| -
|
| -// static
|
| -SimpleEntryOperation SimpleEntryOperation::ReadSparseOperation(
|
| - SimpleEntryImpl* entry,
|
| - int64 sparse_offset,
|
| - int length,
|
| - net::IOBuffer* buf,
|
| - const CompletionCallback& callback) {
|
| - return SimpleEntryOperation(entry,
|
| - buf,
|
| - callback,
|
| - NULL,
|
| - 0,
|
| - sparse_offset,
|
| - length,
|
| - NULL,
|
| - TYPE_READ_SPARSE,
|
| - false,
|
| - 0,
|
| - false,
|
| - false,
|
| - false);
|
| -}
|
| -
|
| -// static
|
| -SimpleEntryOperation SimpleEntryOperation::WriteSparseOperation(
|
| - SimpleEntryImpl* entry,
|
| - int64 sparse_offset,
|
| - int length,
|
| - net::IOBuffer* buf,
|
| - const CompletionCallback& callback) {
|
| - return SimpleEntryOperation(entry,
|
| - buf,
|
| - callback,
|
| - NULL,
|
| - 0,
|
| - sparse_offset,
|
| - length,
|
| - NULL,
|
| - TYPE_WRITE_SPARSE,
|
| - false,
|
| - 0,
|
| - false,
|
| - false,
|
| - false);
|
| -}
|
| -
|
| -// static
|
| -SimpleEntryOperation SimpleEntryOperation::GetAvailableRangeOperation(
|
| - SimpleEntryImpl* entry,
|
| - int64 sparse_offset,
|
| - int length,
|
| - int64* out_start,
|
| - const CompletionCallback& callback) {
|
| - return SimpleEntryOperation(entry,
|
| - NULL,
|
| - callback,
|
| - NULL,
|
| - 0,
|
| - sparse_offset,
|
| - length,
|
| - out_start,
|
| - TYPE_GET_AVAILABLE_RANGE,
|
| - false,
|
| - 0,
|
| - false,
|
| - false,
|
| - false);
|
| -}
|
| -
|
| -// static
|
| -SimpleEntryOperation SimpleEntryOperation::DoomOperation(
|
| - SimpleEntryImpl* entry,
|
| - const CompletionCallback& callback) {
|
| - net::IOBuffer* const buf = NULL;
|
| - Entry** const out_entry = NULL;
|
| - const int offset = 0;
|
| - const int64 sparse_offset = 0;
|
| - const int length = 0;
|
| - int64* const out_start = NULL;
|
| - const bool have_index = false;
|
| - const int index = 0;
|
| - const bool truncate = false;
|
| - const bool optimistic = false;
|
| - const bool alone_in_queue = false;
|
| - return SimpleEntryOperation(entry,
|
| - buf,
|
| - callback,
|
| - out_entry,
|
| - offset,
|
| - sparse_offset,
|
| - length,
|
| - out_start,
|
| - TYPE_DOOM,
|
| - have_index,
|
| - index,
|
| - truncate,
|
| - optimistic,
|
| - alone_in_queue);
|
| -}
|
| -
|
| -bool SimpleEntryOperation::ConflictsWith(
|
| - const SimpleEntryOperation& other_op) const {
|
| - EntryOperationType other_type = other_op.type();
|
| -
|
| - // Non-read/write operations conflict with everything.
|
| - if (!IsReadWriteType(type_) || !IsReadWriteType(other_type))
|
| - return true;
|
| -
|
| - // Reads (sparse or otherwise) conflict with nothing.
|
| - if (IsReadType(type_) && IsReadType(other_type))
|
| - return false;
|
| -
|
| - // Sparse and non-sparse operations do not conflict with each other.
|
| - if (IsSparseType(type_) != IsSparseType(other_type)) {
|
| - return false;
|
| - }
|
| -
|
| - // There must be two read/write operations, at least one must be a write, and
|
| - // they must be either both non-sparse or both sparse. Compare the streams
|
| - // and offsets to see whether they overlap.
|
| -
|
| - if (IsSparseType(type_)) {
|
| - int64 end = sparse_offset_ + length_;
|
| - int64 other_op_end = other_op.sparse_offset() + other_op.length();
|
| - return sparse_offset_ < other_op_end && other_op.sparse_offset() < end;
|
| - }
|
| -
|
| - if (index_ != other_op.index_)
|
| - return false;
|
| - int end = (type_ == TYPE_WRITE && truncate_) ? INT_MAX : offset_ + length_;
|
| - int other_op_end = (other_op.type() == TYPE_WRITE && other_op.truncate())
|
| - ? INT_MAX
|
| - : other_op.offset() + other_op.length();
|
| - return offset_ < other_op_end && other_op.offset() < end;
|
| -}
|
| -
|
| -void SimpleEntryOperation::ReleaseReferences() {
|
| - callback_ = CompletionCallback();
|
| - buf_ = NULL;
|
| - entry_ = NULL;
|
| -}
|
| -
|
| -SimpleEntryOperation::SimpleEntryOperation(SimpleEntryImpl* entry,
|
| - net::IOBuffer* buf,
|
| - const CompletionCallback& callback,
|
| - Entry** out_entry,
|
| - int offset,
|
| - int64 sparse_offset,
|
| - int length,
|
| - int64* out_start,
|
| - EntryOperationType type,
|
| - bool have_index,
|
| - int index,
|
| - bool truncate,
|
| - bool optimistic,
|
| - bool alone_in_queue)
|
| - : entry_(entry),
|
| - buf_(buf),
|
| - callback_(callback),
|
| - out_entry_(out_entry),
|
| - offset_(offset),
|
| - sparse_offset_(sparse_offset),
|
| - length_(length),
|
| - out_start_(out_start),
|
| - type_(type),
|
| - have_index_(have_index),
|
| - index_(index),
|
| - truncate_(truncate),
|
| - optimistic_(optimistic),
|
| - alone_in_queue_(alone_in_queue) {
|
| -}
|
| -
|
| -} // namespace disk_cache
|
|
|