// 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 "content/child/child_resource_message_filter.h" #include "base/bind.h" #include "base/single_thread_task_runner.h" #include "base/thread_task_runner_handle.h" #include "content/child/resource_dispatcher.h" #include "content/common/resource_messages.h" namespace content { ChildResourceMessageFilter::ChildResourceMessageFilter( ResourceDispatcher* resource_dispatcher) : main_thread_task_runner_(base::ThreadTaskRunnerHandle::Get()), resource_dispatcher_(resource_dispatcher) {} ChildResourceMessageFilter::~ChildResourceMessageFilter() {} bool ChildResourceMessageFilter::OnMessageReceived( const IPC::Message& message) { if (message.type() == ResourceMsg_RequestComplete::ID || message.type() == ResourceMsg_ReceivedResponse::ID || message.type() == ResourceMsg_ReceivedRedirect::ID) { main_thread_task_runner_->PostTask(FROM_HERE, base::Bind( &ResourceDispatcher::set_io_timestamp, base::Unretained(resource_dispatcher_), base::TimeTicks::Now())); } return false; } } // namespace content