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 "storage/browser/file_system/quota/open_file_handle.h" 6 7 #include <stdint.h> 8 9 #include "storage/browser/file_system/quota/open_file_handle_context.h" 10 #include "storage/browser/file_system/quota/quota_reservation.h" 11 12 namespace storage { 13 ~OpenFileHandle()14OpenFileHandle::~OpenFileHandle() { 15 DCHECK(sequence_checker_.CalledOnValidSequence()); 16 } 17 UpdateMaxWrittenOffset(int64_t offset)18void OpenFileHandle::UpdateMaxWrittenOffset(int64_t offset) { 19 DCHECK(sequence_checker_.CalledOnValidSequence()); 20 21 int64_t growth = context_->UpdateMaxWrittenOffset(offset); 22 if (growth > 0) 23 reservation_->ConsumeReservation(growth); 24 } 25 AddAppendModeWriteAmount(int64_t amount)26void OpenFileHandle::AddAppendModeWriteAmount(int64_t amount) { 27 DCHECK(sequence_checker_.CalledOnValidSequence()); 28 if (amount <= 0) 29 return; 30 31 context_->AddAppendModeWriteAmount(amount); 32 reservation_->ConsumeReservation(amount); 33 } 34 GetEstimatedFileSize() const35int64_t OpenFileHandle::GetEstimatedFileSize() const { 36 DCHECK(sequence_checker_.CalledOnValidSequence()); 37 return context_->GetEstimatedFileSize(); 38 } 39 GetMaxWrittenOffset() const40int64_t OpenFileHandle::GetMaxWrittenOffset() const { 41 DCHECK(sequence_checker_.CalledOnValidSequence()); 42 return context_->GetMaxWrittenOffset(); 43 } 44 platform_path() const45const base::FilePath& OpenFileHandle::platform_path() const { 46 DCHECK(sequence_checker_.CalledOnValidSequence()); 47 return context_->platform_path(); 48 } 49 OpenFileHandle(QuotaReservation * reservation,OpenFileHandleContext * context)50OpenFileHandle::OpenFileHandle(QuotaReservation* reservation, 51 OpenFileHandleContext* context) 52 : reservation_(reservation), context_(context) { 53 DCHECK(sequence_checker_.CalledOnValidSequence()); 54 } 55 56 } // namespace storage 57