Home | History | Annotate | Download | only in common
      1 // Copyright 2013 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #include "webkit/common/data_element.h"
      6 
      7 namespace webkit_common {
      8 
      9 DataElement::DataElement()
     10     : type_(TYPE_UNKNOWN),
     11       bytes_(NULL),
     12       offset_(0),
     13       length_(kuint64max) {
     14 }
     15 
     16 DataElement::~DataElement() {}
     17 
     18 void DataElement::SetToFilePathRange(
     19     const base::FilePath& path,
     20     uint64 offset, uint64 length,
     21     const base::Time& expected_modification_time) {
     22   type_ = TYPE_FILE;
     23   path_ = path;
     24   offset_ = offset;
     25   length_ = length;
     26   expected_modification_time_ = expected_modification_time;
     27 }
     28 
     29 void DataElement::SetToBlobUrlRange(
     30     const GURL& blob_url,
     31     uint64 offset, uint64 length) {
     32   type_ = TYPE_BLOB;
     33   blob_url_ = blob_url;
     34   offset_ = offset;
     35   length_ = length;
     36   blob_uuid_.clear();
     37 }
     38 
     39 void DataElement::SetToBlobRange(
     40     const std::string& blob_uuid,
     41     uint64 offset, uint64 length) {
     42   type_ = TYPE_BLOB;
     43   blob_uuid_ = blob_uuid;
     44   offset_ = offset;
     45   length_ = length;
     46   blob_url_ = GURL();
     47 }
     48 
     49 void DataElement::SetToFileSystemUrlRange(
     50     const GURL& filesystem_url,
     51     uint64 offset, uint64 length,
     52     const base::Time& expected_modification_time) {
     53   type_ = TYPE_FILE_FILESYSTEM;
     54   filesystem_url_ = filesystem_url;
     55   offset_ = offset;
     56   length_ = length;
     57   expected_modification_time_ = expected_modification_time;
     58 }
     59 
     60 }  // webkit_common
     61