summaryrefslogtreecommitdiffstats
path: root/chrome/browser/chromeos
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/chromeos')
-rw-r--r--chrome/browser/chromeos/drive/change_list_loader.cc36
-rw-r--r--chrome/browser/chromeos/drive/change_list_loader.h5
-rw-r--r--chrome/browser/chromeos/drive/change_list_loader_unittest.cc11
-rw-r--r--chrome/browser/chromeos/drive/drive_integration_service.cc13
-rw-r--r--chrome/browser/chromeos/drive/drive_integration_service.h8
-rw-r--r--chrome/browser/chromeos/drive/file_system.cc7
-rw-r--r--chrome/browser/chromeos/drive/file_system.h3
-rw-r--r--chrome/browser/chromeos/drive/file_system/get_file_for_saving_operation.cc12
-rw-r--r--chrome/browser/chromeos/drive/file_system/get_file_for_saving_operation.h5
-rw-r--r--chrome/browser/chromeos/drive/file_system/get_file_for_saving_operation_unittest.cc4
-rw-r--r--chrome/browser/chromeos/drive/file_system/operation_test_base.cc5
-rw-r--r--chrome/browser/chromeos/drive/file_system/operation_test_base.h3
-rw-r--r--chrome/browser/chromeos/drive/file_system_unittest.cc5
-rw-r--r--chrome/browser/chromeos/drive/file_write_watcher.cc7
-rw-r--r--chrome/browser/chromeos/drive/job_scheduler.cc46
-rw-r--r--chrome/browser/chromeos/drive/job_scheduler.h4
-rw-r--r--chrome/browser/chromeos/drive/job_scheduler_unittest.cc5
-rw-r--r--chrome/browser/chromeos/drive/logging.cc45
-rw-r--r--chrome/browser/chromeos/drive/logging.h29
-rw-r--r--chrome/browser/chromeos/drive/sync_client_unittest.cc6
-rw-r--r--chrome/browser/chromeos/extensions/file_manager/private_api_base.cc37
-rw-r--r--chrome/browser/chromeos/extensions/file_manager/private_api_drive.cc23
-rw-r--r--chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc52
-rw-r--r--chrome/browser/chromeos/extensions/file_manager/private_api_mount.cc39
-rw-r--r--chrome/browser/chromeos/extensions/file_manager/private_api_util.cc8
-rw-r--r--chrome/browser/chromeos/extensions/file_manager/private_api_util.h7
26 files changed, 228 insertions, 197 deletions
diff --git a/chrome/browser/chromeos/drive/change_list_loader.cc b/chrome/browser/chromeos/drive/change_list_loader.cc
index fc22c54..6a22a25 100644
--- a/chrome/browser/chromeos/drive/change_list_loader.cc
+++ b/chrome/browser/chromeos/drive/change_list_loader.cc
@@ -15,10 +15,10 @@
#include "chrome/browser/chromeos/drive/change_list_processor.h"
#include "chrome/browser/chromeos/drive/file_system_util.h"
#include "chrome/browser/chromeos/drive/job_scheduler.h"
-#include "chrome/browser/chromeos/drive/logging.h"
#include "chrome/browser/chromeos/drive/resource_metadata.h"
#include "chrome/browser/drive/drive_api_util.h"
#include "chrome/browser/drive/drive_service_interface.h"
+#include "chrome/browser/drive/event_logger.h"
#include "content/public/browser/browser_thread.h"
#include "google_apis/drive/drive_api_parser.h"
#include "url/gurl.h"
@@ -343,12 +343,14 @@ void LoaderController::Unlock() {
}
ChangeListLoader::ChangeListLoader(
+ EventLogger* logger,
base::SequencedTaskRunner* blocking_task_runner,
ResourceMetadata* resource_metadata,
JobScheduler* scheduler,
DriveServiceInterface* drive_service,
LoaderController* loader_controller)
- : blocking_task_runner_(blocking_task_runner),
+ : logger_(logger),
+ blocking_task_runner_(blocking_task_runner),
resource_metadata_(resource_metadata),
scheduler_(scheduler),
drive_service_(drive_service),
@@ -392,7 +394,7 @@ void ChangeListLoader::CheckForUpdates(const FileOperationCallback& callback) {
// We only start to check for updates iff the load is done.
// I.e., we ignore checking updates if not loaded to avoid starting the
// load without user's explicit interaction (such as opening Drive).
- util::Log(logging::LOG_INFO, "Checking for updates");
+ logger_->Log(logging::LOG_INFO, "Checking for updates");
Load(DirectoryFetchInfo(), callback);
}
}
@@ -655,10 +657,10 @@ void ChangeListLoader::LoadAfterGetAboutResource(
// enough, but we log this message here, so "Fast-fetch start" and
// "Fast-fetch complete" always match.
// TODO(satorux): Distinguish the "not fetching at all" case.
- util::Log(logging::LOG_INFO,
- "Fast-fetch start: %s; Server changestamp: %s",
- directory_fetch_info.ToString().c_str(),
- base::Int64ToString(remote_changestamp).c_str());
+ logger_->Log(logging::LOG_INFO,
+ "Fast-fetch start: %s; Server changestamp: %s",
+ directory_fetch_info.ToString().c_str(),
+ base::Int64ToString(remote_changestamp).c_str());
// If the directory's changestamp is up-to-date, just schedule to run the
// callback, as there is no need to fetch the directory.
@@ -731,10 +733,10 @@ void ChangeListLoader::OnDirectoryLoadComplete(
FileError error) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- util::Log(logging::LOG_INFO,
- "Fast-fetch complete: %s => %s",
- directory_fetch_info.ToString().c_str(),
- FileErrorToString(error).c_str());
+ logger_->Log(logging::LOG_INFO,
+ "Fast-fetch complete: %s => %s",
+ directory_fetch_info.ToString().c_str(),
+ FileErrorToString(error).c_str());
const std::string& local_id = directory_fetch_info.local_id();
LoadCallbackMap::iterator it = pending_load_callback_.find(local_id);
if (it != pending_load_callback_.end()) {
@@ -796,9 +798,9 @@ void ChangeListLoader::LoadChangeListFromServerAfterLoadChangeList(
// the initial content retrieval.
const bool should_notify_changed_directories = is_delta_update;
- util::Log(logging::LOG_INFO,
- "Apply change lists (is delta: %d)",
- is_delta_update);
+ logger_->Log(logging::LOG_INFO,
+ "Apply change lists (is delta: %d)",
+ is_delta_update);
loader_controller_->ScheduleRun(base::Bind(
base::IgnoreResult(
&base::PostTaskAndReplyWithResult<FileError, FileError>),
@@ -824,9 +826,9 @@ void ChangeListLoader::LoadChangeListFromServerAfterUpdate(
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
const base::TimeDelta elapsed = base::Time::Now() - start_time;
- util::Log(logging::LOG_INFO,
- "Change lists applied (elapsed time: %sms)",
- base::Int64ToString(elapsed.InMilliseconds()).c_str());
+ logger_->Log(logging::LOG_INFO,
+ "Change lists applied (elapsed time: %sms)",
+ base::Int64ToString(elapsed.InMilliseconds()).c_str());
if (should_notify_changed_directories) {
for (std::set<base::FilePath>::iterator dir_iter =
diff --git a/chrome/browser/chromeos/drive/change_list_loader.h b/chrome/browser/chromeos/drive/change_list_loader.h
index 8a15d33..c30bb09 100644
--- a/chrome/browser/chromeos/drive/change_list_loader.h
+++ b/chrome/browser/chromeos/drive/change_list_loader.h
@@ -35,6 +35,7 @@ class ResourceList;
namespace drive {
class DriveServiceInterface;
+class EventLogger;
class JobScheduler;
class ResourceEntry;
@@ -90,7 +91,8 @@ class ChangeListLoader {
// Resource feed fetcher from the server.
class FeedFetcher;
- ChangeListLoader(base::SequencedTaskRunner* blocking_task_runner,
+ ChangeListLoader(EventLogger* logger,
+ base::SequencedTaskRunner* blocking_task_runner,
ResourceMetadata* resource_metadata,
JobScheduler* scheduler,
DriveServiceInterface* drive_service,
@@ -238,6 +240,7 @@ class ChangeListLoader {
google_apis::GDataErrorCode status,
scoped_ptr<google_apis::AboutResource> about_resource);
+ EventLogger* logger_; // Not owned.
scoped_refptr<base::SequencedTaskRunner> blocking_task_runner_;
ResourceMetadata* resource_metadata_; // Not owned.
JobScheduler* scheduler_; // Not owned.
diff --git a/chrome/browser/chromeos/drive/change_list_loader_unittest.cc b/chrome/browser/chromeos/drive/change_list_loader_unittest.cc
index 66141dd..a36c328 100644
--- a/chrome/browser/chromeos/drive/change_list_loader_unittest.cc
+++ b/chrome/browser/chromeos/drive/change_list_loader_unittest.cc
@@ -15,6 +15,7 @@
#include "chrome/browser/chromeos/drive/job_scheduler.h"
#include "chrome/browser/chromeos/drive/resource_metadata.h"
#include "chrome/browser/chromeos/drive/test_util.h"
+#include "chrome/browser/drive/event_logger.h"
#include "chrome/browser/drive/fake_drive_service.h"
#include "content/public/test/test_browser_thread_bundle.h"
#include "google_apis/drive/drive_api_parser.h"
@@ -77,6 +78,8 @@ class ChangeListLoaderTest : public testing::Test {
pref_service_.reset(new TestingPrefServiceSimple);
test_util::RegisterDrivePrefs(pref_service_->registry());
+ logger_.reset(new EventLogger);
+
drive_service_.reset(new FakeDriveService);
ASSERT_TRUE(drive_service_->LoadResourceListForWapi(
"gdata/root_feed.json"));
@@ -84,6 +87,7 @@ class ChangeListLoaderTest : public testing::Test {
"gdata/account_metadata.json"));
scheduler_.reset(new JobScheduler(pref_service_.get(),
+ logger_.get(),
drive_service_.get(),
base::MessageLoopProxy::current().get()));
metadata_storage_.reset(new ResourceMetadataStorage(
@@ -102,7 +106,8 @@ class ChangeListLoaderTest : public testing::Test {
loader_controller_.reset(new LoaderController);
change_list_loader_.reset(
- new ChangeListLoader(base::MessageLoopProxy::current().get(),
+ new ChangeListLoader(logger_.get(),
+ base::MessageLoopProxy::current().get(),
metadata_.get(),
scheduler_.get(),
drive_service_.get(),
@@ -128,6 +133,7 @@ class ChangeListLoaderTest : public testing::Test {
content::TestBrowserThreadBundle thread_bundle_;
base::ScopedTempDir temp_dir_;
scoped_ptr<TestingPrefServiceSimple> pref_service_;
+ scoped_ptr<EventLogger> logger_;
scoped_ptr<FakeDriveService> drive_service_;
scoped_ptr<JobScheduler> scheduler_;
scoped_ptr<ResourceMetadataStorage,
@@ -193,7 +199,8 @@ TEST_F(ChangeListLoaderTest, Load_LocalMetadataAvailable) {
// Reset loader.
change_list_loader_.reset(
- new ChangeListLoader(base::MessageLoopProxy::current().get(),
+ new ChangeListLoader(logger_.get(),
+ base::MessageLoopProxy::current().get(),
metadata_.get(),
scheduler_.get(),
drive_service_.get(),
diff --git a/chrome/browser/chromeos/drive/drive_integration_service.cc b/chrome/browser/chromeos/drive/drive_integration_service.cc
index 9a08bb4..92caaff 100644
--- a/chrome/browser/chromeos/drive/drive_integration_service.cc
+++ b/chrome/browser/chromeos/drive/drive_integration_service.cc
@@ -17,7 +17,6 @@
#include "chrome/browser/chromeos/drive/file_system.h"
#include "chrome/browser/chromeos/drive/file_system_util.h"
#include "chrome/browser/chromeos/drive/job_scheduler.h"
-#include "chrome/browser/chromeos/drive/logging.h"
#include "chrome/browser/chromeos/drive/resource_metadata.h"
#include "chrome/browser/chromeos/drive/resource_metadata_storage.h"
#include "chrome/browser/chromeos/file_manager/path_util.h"
@@ -30,6 +29,7 @@
#include "chrome/browser/drive/drive_app_registry.h"
#include "chrome/browser/drive/drive_notification_manager.h"
#include "chrome/browser/drive/drive_notification_manager_factory.h"
+#include "chrome/browser/drive/event_logger.h"
#include "chrome/browser/drive/gdata_wapi_service.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/signin/profile_oauth2_token_service.h"
@@ -218,6 +218,7 @@ DriveIntegrationService::DriveIntegrationService(
weak_ptr_factory_(this) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
+ logger_.reset(new EventLogger);
base::SequencedWorkerPool* blocking_pool = BrowserThread::GetBlockingPool();
blocking_task_runner_ = blocking_pool->GetSequencedTaskRunner(
blocking_pool->GetSequenceToken());
@@ -247,6 +248,7 @@ DriveIntegrationService::DriveIntegrationService(
}
scheduler_.reset(new JobScheduler(
profile_->GetPrefs(),
+ logger_.get(),
drive_service_.get(),
blocking_task_runner_.get()));
metadata_storage_.reset(new internal::ResourceMetadataStorage(
@@ -265,6 +267,7 @@ DriveIntegrationService::DriveIntegrationService(
file_system_.reset(
test_file_system ? test_file_system : new FileSystem(
profile_->GetPrefs(),
+ logger_.get(),
cache_.get(),
drive_service_.get(),
scheduler_.get(),
@@ -379,7 +382,7 @@ void DriveIntegrationService::OnPushNotificationEnabled(bool enabled) {
drive_app_registry_->Update();
const char* status = (enabled ? "enabled" : "disabled");
- util::Log(logging::LOG_INFO, "Push notification is %s", status);
+ logger_->Log(logging::LOG_INFO, "Push notification is %s", status);
}
void DriveIntegrationService::ClearCacheAndRemountFileSystem(
@@ -442,7 +445,7 @@ void DriveIntegrationService::AddDriveMountPoint() {
drive_mount_point);
if (success) {
- util::Log(logging::LOG_INFO, "Drive mount point is added");
+ logger_->Log(logging::LOG_INFO, "Drive mount point is added");
FOR_EACH_OBSERVER(DriveIntegrationServiceObserver, observers_,
OnFileSystemMounted());
}
@@ -462,7 +465,7 @@ void DriveIntegrationService::RemoveDriveMountPoint() {
DCHECK(mount_points);
mount_points->RevokeFileSystem(mount_point_name_);
- util::Log(logging::LOG_INFO, "Drive mount point is removed");
+ logger_->Log(logging::LOG_INFO, "Drive mount point is removed");
}
}
@@ -523,7 +526,7 @@ void DriveIntegrationService::InitializeAfterMetadataInitialized(
const bool registered =
drive_notification_manager->push_notification_registered();
const char* status = (registered ? "registered" : "not registered");
- util::Log(logging::LOG_INFO, "Push notification is %s", status);
+ logger_->Log(logging::LOG_INFO, "Push notification is %s", status);
if (drive_notification_manager->push_notification_enabled())
drive_app_registry_->Update();
diff --git a/chrome/browser/chromeos/drive/drive_integration_service.h b/chrome/browser/chromeos/drive/drive_integration_service.h
index af1805b..b5ce9a6 100644
--- a/chrome/browser/chromeos/drive/drive_integration_service.h
+++ b/chrome/browser/chromeos/drive/drive_integration_service.h
@@ -28,6 +28,7 @@ class DebugInfoCollector;
class DownloadHandler;
class DriveAppRegistry;
class DriveServiceInterface;
+class EventLogger;
class FileSystemInterface;
class JobListInterface;
@@ -98,10 +99,8 @@ class DriveIntegrationService
virtual void OnNotificationReceived() OVERRIDE;
virtual void OnPushNotificationEnabled(bool enabled) OVERRIDE;
- DriveServiceInterface* drive_service() {
- return drive_service_.get();
- }
-
+ EventLogger* event_logger() { return logger_.get(); }
+ DriveServiceInterface* drive_service() { return drive_service_.get(); }
DebugInfoCollector* debug_info_collector() {
return debug_info_collector_.get();
}
@@ -160,6 +159,7 @@ class DriveIntegrationService
std::string mount_point_name_;
base::FilePath cache_root_directory_;
+ scoped_ptr<EventLogger> logger_;
scoped_refptr<base::SequencedTaskRunner> blocking_task_runner_;
scoped_ptr<internal::ResourceMetadataStorage,
util::DestroyHelper> metadata_storage_;
diff --git a/chrome/browser/chromeos/drive/file_system.cc b/chrome/browser/chromeos/drive/file_system.cc
index d6a8363..ea4523d 100644
--- a/chrome/browser/chromeos/drive/file_system.cc
+++ b/chrome/browser/chromeos/drive/file_system.cc
@@ -25,7 +25,6 @@
#include "chrome/browser/chromeos/drive/file_system_observer.h"
#include "chrome/browser/chromeos/drive/file_system_util.h"
#include "chrome/browser/chromeos/drive/job_scheduler.h"
-#include "chrome/browser/chromeos/drive/logging.h"
#include "chrome/browser/chromeos/drive/remove_stale_cache_files.h"
#include "chrome/browser/chromeos/drive/resource_entry_conversion.h"
#include "chrome/browser/chromeos/drive/search_metadata.h"
@@ -206,6 +205,7 @@ FileError ResetOnBlockingPool(internal::ResourceMetadata* resource_metadata,
FileSystem::FileSystem(
PrefService* pref_service,
+ EventLogger* logger,
internal::FileCache* cache,
DriveServiceInterface* drive_service,
JobScheduler* scheduler,
@@ -213,6 +213,7 @@ FileSystem::FileSystem(
base::SequencedTaskRunner* blocking_task_runner,
const base::FilePath& temporary_file_directory)
: pref_service_(pref_service),
+ logger_(logger),
cache_(cache),
drive_service_(drive_service),
scheduler_(scheduler),
@@ -252,6 +253,7 @@ void FileSystem::ResetComponents() {
loader_controller_.reset(new internal::LoaderController);
change_list_loader_.reset(new internal::ChangeListLoader(
+ logger_,
blocking_task_runner_.get(),
resource_metadata_,
scheduler_,
@@ -317,7 +319,8 @@ void FileSystem::ResetComponents() {
blocking_task_runner_.get(), scheduler_, resource_metadata_,
loader_controller_.get()));
get_file_for_saving_operation_.reset(
- new file_system::GetFileForSavingOperation(blocking_task_runner_.get(),
+ new file_system::GetFileForSavingOperation(logger_,
+ blocking_task_runner_.get(),
observer,
scheduler_,
resource_metadata_,
diff --git a/chrome/browser/chromeos/drive/file_system.h b/chrome/browser/chromeos/drive/file_system.h
index da003fe..e491420 100644
--- a/chrome/browser/chromeos/drive/file_system.h
+++ b/chrome/browser/chromeos/drive/file_system.h
@@ -30,6 +30,7 @@ class ResourceEntry;
namespace drive {
class DriveServiceInterface;
+class EventLogger;
class FileCacheEntry;
class FileSystemObserver;
class JobScheduler;
@@ -63,6 +64,7 @@ class FileSystem : public FileSystemInterface,
public file_system::OperationObserver {
public:
FileSystem(PrefService* pref_service,
+ EventLogger* logger,
internal::FileCache* cache,
DriveServiceInterface* drive_service,
JobScheduler* scheduler,
@@ -245,6 +247,7 @@ class FileSystem : public FileSystemInterface,
PrefService* pref_service_;
// Sub components owned by DriveIntegrationService.
+ EventLogger* logger_;
internal::FileCache* cache_;
DriveServiceInterface* drive_service_;
JobScheduler* scheduler_;
diff --git a/chrome/browser/chromeos/drive/file_system/get_file_for_saving_operation.cc b/chrome/browser/chromeos/drive/file_system/get_file_for_saving_operation.cc
index c696746..2d44f22 100644
--- a/chrome/browser/chromeos/drive/file_system/get_file_for_saving_operation.cc
+++ b/chrome/browser/chromeos/drive/file_system/get_file_for_saving_operation.cc
@@ -12,6 +12,7 @@
#include "chrome/browser/chromeos/drive/file_system/download_operation.h"
#include "chrome/browser/chromeos/drive/file_system/operation_observer.h"
#include "chrome/browser/chromeos/drive/file_write_watcher.h"
+#include "chrome/browser/drive/event_logger.h"
#include "content/public/browser/browser_thread.h"
using content::BrowserThread;
@@ -20,13 +21,15 @@ namespace drive {
namespace file_system {
GetFileForSavingOperation::GetFileForSavingOperation(
+ EventLogger* logger,
base::SequencedTaskRunner* blocking_task_runner,
OperationObserver* observer,
JobScheduler* scheduler,
internal::ResourceMetadata* metadata,
internal::FileCache* cache,
const base::FilePath& temporary_file_directory)
- : create_file_operation_(new CreateFileOperation(blocking_task_runner,
+ : logger_(logger),
+ create_file_operation_(new CreateFileOperation(blocking_task_runner,
observer,
metadata)),
download_operation_(new DownloadOperation(blocking_task_runner,
@@ -151,6 +154,10 @@ void GetFileForSavingOperation::GetFileForSavingAfterWatch(
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
DCHECK(!callback.is_null());
+ logger_->Log(logging::LOG_INFO, "Started watching modification to %s [%s].",
+ entry->local_id().c_str(),
+ success ? "ok" : "fail");
+
if (!success) {
callback.Run(FILE_ERROR_FAILED,
base::FilePath(), scoped_ptr<ResourceEntry>());
@@ -163,6 +170,9 @@ void GetFileForSavingOperation::GetFileForSavingAfterWatch(
void GetFileForSavingOperation::OnWriteEvent(
const std::string& local_id,
scoped_ptr<base::ScopedClosureRunner> file_closer) {
+ logger_->Log(logging::LOG_INFO, "Detected modification to %s.",
+ local_id.c_str());
+
observer_->OnEntryUpdatedByOperation(local_id);
// Clients may have enlarged the file. By FreeDiskpSpaceIfNeededFor(0),
diff --git a/chrome/browser/chromeos/drive/file_system/get_file_for_saving_operation.h b/chrome/browser/chromeos/drive/file_system/get_file_for_saving_operation.h
index 9469263..09d6eb5 100644
--- a/chrome/browser/chromeos/drive/file_system/get_file_for_saving_operation.h
+++ b/chrome/browser/chromeos/drive/file_system/get_file_for_saving_operation.h
@@ -25,6 +25,7 @@ class FileWriteWatcher;
class ResourceMetadata;
} // namespace internal
+class EventLogger;
class JobScheduler;
class ResourceEntry;
@@ -41,7 +42,8 @@ class OperationObserver;
// to the cache directory, not just the one immediately after the save dialog.
class GetFileForSavingOperation {
public:
- GetFileForSavingOperation(base::SequencedTaskRunner* blocking_task_runner,
+ GetFileForSavingOperation(EventLogger* logger,
+ base::SequencedTaskRunner* blocking_task_runner,
OperationObserver* observer,
JobScheduler* scheduler,
internal::ResourceMetadata* metadata,
@@ -82,6 +84,7 @@ class GetFileForSavingOperation {
void OnWriteEvent(const std::string& local_id,
scoped_ptr<base::ScopedClosureRunner> file_closer);
+ EventLogger* logger_;
scoped_ptr<CreateFileOperation> create_file_operation_;
scoped_ptr<DownloadOperation> download_operation_;
scoped_ptr<internal::FileWriteWatcher> file_write_watcher_;
diff --git a/chrome/browser/chromeos/drive/file_system/get_file_for_saving_operation_unittest.cc b/chrome/browser/chromeos/drive/file_system/get_file_for_saving_operation_unittest.cc
index 286fcb3..e4c954d 100644
--- a/chrome/browser/chromeos/drive/file_system/get_file_for_saving_operation_unittest.cc
+++ b/chrome/browser/chromeos/drive/file_system/get_file_for_saving_operation_unittest.cc
@@ -62,8 +62,8 @@ class GetFileForSavingOperationTest : public OperationTestBase {
OperationTestBase::SetUp();
operation_.reset(new GetFileForSavingOperation(
- blocking_task_runner(), &observer_, scheduler(), metadata(), cache(),
- temp_dir()));
+ logger(), blocking_task_runner(), &observer_, scheduler(), metadata(),
+ cache(), temp_dir()));
operation_->file_write_watcher_for_testing()->DisableDelayForTesting();
}
diff --git a/chrome/browser/chromeos/drive/file_system/operation_test_base.cc b/chrome/browser/chromeos/drive/file_system/operation_test_base.cc
index 146a499..ac52252 100644
--- a/chrome/browser/chromeos/drive/file_system/operation_test_base.cc
+++ b/chrome/browser/chromeos/drive/file_system/operation_test_base.cc
@@ -13,6 +13,7 @@
#include "chrome/browser/chromeos/drive/job_scheduler.h"
#include "chrome/browser/chromeos/drive/resource_metadata.h"
#include "chrome/browser/chromeos/drive/test_util.h"
+#include "chrome/browser/drive/event_logger.h"
#include "chrome/browser/drive/fake_drive_service.h"
#include "content/public/browser/browser_thread.h"
#include "google_apis/drive/test_util.h"
@@ -62,6 +63,8 @@ void OperationTestBase::SetUp() {
ASSERT_TRUE(temp_dir_.CreateUniqueTempDir());
+ logger_.reset(new EventLogger);
+
fake_drive_service_.reset(new FakeDriveService);
fake_drive_service_->LoadResourceListForWapi(
"gdata/root_feed.json");
@@ -70,6 +73,7 @@ void OperationTestBase::SetUp() {
scheduler_.reset(new JobScheduler(
pref_service_.get(),
+ logger_.get(),
fake_drive_service_.get(),
blocking_task_runner_.get()));
@@ -116,6 +120,7 @@ void OperationTestBase::SetUp() {
// Makes sure the FakeDriveService's content is loaded to the metadata_.
loader_controller_.reset(new internal::LoaderController);
change_list_loader_.reset(new internal::ChangeListLoader(
+ logger_.get(),
blocking_task_runner_.get(),
metadata_.get(),
scheduler_.get(),
diff --git a/chrome/browser/chromeos/drive/file_system/operation_test_base.h b/chrome/browser/chromeos/drive/file_system/operation_test_base.h
index ae7550d..cdf73df 100644
--- a/chrome/browser/chromeos/drive/file_system/operation_test_base.h
+++ b/chrome/browser/chromeos/drive/file_system/operation_test_base.h
@@ -23,6 +23,7 @@ class SequencedTaskRunner;
namespace drive {
+class EventLogger;
class FakeDriveService;
class FakeFreeDiskSpaceGetter;
class JobScheduler;
@@ -108,6 +109,7 @@ class OperationTestBase : public testing::Test {
FakeDriveService* fake_service() {
return fake_drive_service_.get();
}
+ EventLogger* logger() { return logger_.get(); }
LoggingObserver* observer() { return &observer_; }
JobScheduler* scheduler() { return scheduler_.get(); }
base::SequencedTaskRunner* blocking_task_runner() {
@@ -132,6 +134,7 @@ class OperationTestBase : public testing::Test {
base::ScopedTempDir temp_dir_;
LoggingObserver observer_;
+ scoped_ptr<EventLogger> logger_;
scoped_ptr<FakeDriveService> fake_drive_service_;
scoped_ptr<JobScheduler> scheduler_;
scoped_ptr<internal::ResourceMetadataStorage,
diff --git a/chrome/browser/chromeos/drive/file_system_unittest.cc b/chrome/browser/chromeos/drive/file_system_unittest.cc
index b642092..8a86b65 100644
--- a/chrome/browser/chromeos/drive/file_system_unittest.cc
+++ b/chrome/browser/chromeos/drive/file_system_unittest.cc
@@ -23,6 +23,7 @@
#include "chrome/browser/chromeos/drive/job_scheduler.h"
#include "chrome/browser/chromeos/drive/sync_client.h"
#include "chrome/browser/chromeos/drive/test_util.h"
+#include "chrome/browser/drive/event_logger.h"
#include "chrome/browser/drive/fake_drive_service.h"
#include "content/public/test/test_browser_thread_bundle.h"
#include "google_apis/drive/drive_api_parser.h"
@@ -80,6 +81,7 @@ class FileSystemTest : public testing::Test {
pref_service_.reset(new TestingPrefServiceSimple);
test_util::RegisterDrivePrefs(pref_service_->registry());
+ logger_.reset(new EventLogger);
fake_drive_service_.reset(new FakeDriveService);
fake_drive_service_->LoadResourceListForWapi(
"gdata/root_feed.json");
@@ -89,6 +91,7 @@ class FileSystemTest : public testing::Test {
fake_free_disk_space_getter_.reset(new FakeFreeDiskSpaceGetter);
scheduler_.reset(new JobScheduler(pref_service_.get(),
+ logger_.get(),
fake_drive_service_.get(),
base::MessageLoopProxy::current().get()));
@@ -121,6 +124,7 @@ class FileSystemTest : public testing::Test {
ASSERT_TRUE(base::CreateDirectory(temp_file_dir));
file_system_.reset(new FileSystem(
pref_service_.get(),
+ logger_.get(),
cache_.get(),
fake_drive_service_.get(),
scheduler_.get(),
@@ -273,6 +277,7 @@ class FileSystemTest : public testing::Test {
// dependencies to Profile in general.
scoped_ptr<TestingPrefServiceSimple> pref_service_;
+ scoped_ptr<EventLogger> logger_;
scoped_ptr<FakeDriveService> fake_drive_service_;
scoped_ptr<FakeFreeDiskSpaceGetter> fake_free_disk_space_getter_;
scoped_ptr<JobScheduler> scheduler_;
diff --git a/chrome/browser/chromeos/drive/file_write_watcher.cc b/chrome/browser/chromeos/drive/file_write_watcher.cc
index 8c658d6..0affb5f 100644
--- a/chrome/browser/chromeos/drive/file_write_watcher.cc
+++ b/chrome/browser/chromeos/drive/file_write_watcher.cc
@@ -12,7 +12,6 @@
#include "base/files/file_path_watcher.h"
#include "base/stl_util.h"
#include "base/timer/timer.h"
-#include "chrome/browser/chromeos/drive/logging.h"
#include "content/public/browser/browser_thread.h"
#include "google_apis/drive/task_util.h"
@@ -127,8 +126,6 @@ void FileWriteWatcher::FileWriteWatcherImpl::StartWatchOnFileThread(
const StartWatchCallback& on_start_callback,
const base::Closure& on_write_callback) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::FILE));
- util::Log(logging::LOG_INFO, "Started watching modification to %s.",
- path.AsUTF8Unsafe().c_str());
std::map<base::FilePath, PathWatchInfo*>::iterator it = watchers_.find(path);
if (it != watchers_.end()) {
@@ -153,8 +150,6 @@ void FileWriteWatcher::FileWriteWatcherImpl::OnWriteEvent(
const base::FilePath& path,
bool error) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::FILE));
- util::Log(logging::LOG_INFO, "Detected modification to %s.",
- path.AsUTF8Unsafe().c_str());
if (error)
return;
@@ -176,8 +171,6 @@ void FileWriteWatcher::FileWriteWatcherImpl::OnWriteEvent(
void FileWriteWatcher::FileWriteWatcherImpl::InvokeCallback(
const base::FilePath& path) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::FILE));
- util::Log(logging::LOG_INFO, "Finished watching modification to %s.",
- path.AsUTF8Unsafe().c_str());
std::map<base::FilePath, PathWatchInfo*>::iterator it = watchers_.find(path);
DCHECK(it != watchers_.end());
diff --git a/chrome/browser/chromeos/drive/job_scheduler.cc b/chrome/browser/chromeos/drive/job_scheduler.cc
index 3163d56..2ca1504 100644
--- a/chrome/browser/chromeos/drive/job_scheduler.cc
+++ b/chrome/browser/chromeos/drive/job_scheduler.cc
@@ -10,7 +10,7 @@
#include "base/strings/string_number_conversions.h"
#include "base/strings/stringprintf.h"
#include "chrome/browser/chromeos/drive/file_system_util.h"
-#include "chrome/browser/chromeos/drive/logging.h"
+#include "chrome/browser/drive/event_logger.h"
#include "chrome/common/pref_names.h"
#include "content/public/browser/browser_thread.h"
#include "google_apis/drive/drive_api_parser.h"
@@ -161,11 +161,13 @@ struct JobScheduler::ResumeUploadParams {
JobScheduler::JobScheduler(
PrefService* pref_service,
+ EventLogger* logger,
DriveServiceInterface* drive_service,
base::SequencedTaskRunner* blocking_task_runner)
: throttle_count_(0),
wait_until_(base::Time::Now()),
disable_throttling_(false),
+ logger_(logger),
drive_service_(drive_service),
uploader_(new DriveUploader(drive_service, blocking_task_runner)),
pref_service_(pref_service),
@@ -791,11 +793,11 @@ void JobScheduler::QueueJob(JobID job_id) {
const std::string retry_prefix = job_entry->retry_count > 0 ?
base::StringPrintf(" (retry %d)", job_entry->retry_count) : "";
- util::Log(logging::LOG_INFO,
- "Job queued%s: %s - %s",
- retry_prefix.c_str(),
- job_info.ToString().c_str(),
- GetQueueInfo(queue_type).c_str());
+ logger_->Log(logging::LOG_INFO,
+ "Job queued%s: %s - %s",
+ retry_prefix.c_str(),
+ job_info.ToString().c_str(),
+ GetQueueInfo(queue_type).c_str());
}
void JobScheduler::DoJobLoop(QueueType queue_type) {
@@ -843,10 +845,10 @@ void JobScheduler::DoJobLoop(QueueType queue_type) {
UpdateWait();
- util::Log(logging::LOG_INFO,
- "Job started: %s - %s",
- job_info->ToString().c_str(),
- GetQueueInfo(queue_type).c_str());
+ logger_->Log(logging::LOG_INFO,
+ "Job started: %s - %s",
+ job_info->ToString().c_str(),
+ GetQueueInfo(queue_type).c_str());
}
int JobScheduler::GetCurrentAcceptedPriority(QueueType queue_type) {
@@ -900,12 +902,12 @@ bool JobScheduler::OnJobDone(JobID job_id, google_apis::GDataErrorCode error) {
const base::TimeDelta elapsed = base::Time::Now() - job_info->start_time;
bool success = (GDataToFileError(error) == FILE_ERROR_OK);
- util::Log(success ? logging::LOG_INFO : logging::LOG_WARNING,
- "Job done: %s => %s (elapsed time: %sms) - %s",
- job_info->ToString().c_str(),
- GDataErrorCodeToString(error).c_str(),
- base::Int64ToString(elapsed.InMilliseconds()).c_str(),
- GetQueueInfo(queue_type).c_str());
+ logger_->Log(success ? logging::LOG_INFO : logging::LOG_WARNING,
+ "Job done: %s => %s (elapsed time: %sms) - %s",
+ job_info->ToString().c_str(),
+ GDataErrorCodeToString(error).c_str(),
+ base::Int64ToString(elapsed.InMilliseconds()).c_str(),
+ GetQueueInfo(queue_type).c_str());
// Retry, depending on the error.
const bool is_server_error =
@@ -1149,12 +1151,12 @@ void JobScheduler::AbortNotRunningJob(JobEntry* job,
const base::TimeDelta elapsed = base::Time::Now() - job->job_info.start_time;
const QueueType queue_type = GetJobQueueType(job->job_info.job_type);
- util::Log(logging::LOG_INFO,
- "Job aborted: %s => %s (elapsed time: %sms) - %s",
- job->job_info.ToString().c_str(),
- GDataErrorCodeToString(error).c_str(),
- base::Int64ToString(elapsed.InMilliseconds()).c_str(),
- GetQueueInfo(queue_type).c_str());
+ logger_->Log(logging::LOG_INFO,
+ "Job aborted: %s => %s (elapsed time: %sms) - %s",
+ job->job_info.ToString().c_str(),
+ GDataErrorCodeToString(error).c_str(),
+ base::Int64ToString(elapsed.InMilliseconds()).c_str(),
+ GetQueueInfo(queue_type).c_str());
base::Callback<void(google_apis::GDataErrorCode)> callback =
job->abort_callback;
diff --git a/chrome/browser/chromeos/drive/job_scheduler.h b/chrome/browser/chromeos/drive/job_scheduler.h
index 81cf003..f564480 100644
--- a/chrome/browser/chromeos/drive/job_scheduler.h
+++ b/chrome/browser/chromeos/drive/job_scheduler.h
@@ -25,6 +25,8 @@ class SeqencedTaskRunner;
namespace drive {
+class EventLogger;
+
// The JobScheduler is responsible for queuing and scheduling drive jobs.
// Because jobs are executed concurrently by priority and retried for network
// failures, there is no guarantee of orderings.
@@ -49,6 +51,7 @@ class JobScheduler
public JobListInterface {
public:
JobScheduler(PrefService* pref_service,
+ EventLogger* logger,
DriveServiceInterface* drive_service,
base::SequencedTaskRunner* blocking_task_runner);
virtual ~JobScheduler();
@@ -385,6 +388,7 @@ class JobScheduler
// The list of observers for the scheduler.
ObserverList<JobListObserver> observer_list_;
+ EventLogger* logger_;
DriveServiceInterface* drive_service_;
scoped_ptr<DriveUploaderInterface> uploader_;
diff --git a/chrome/browser/chromeos/drive/job_scheduler_unittest.cc b/chrome/browser/chromeos/drive/job_scheduler_unittest.cc
index c1b123c..6334d68 100644
--- a/chrome/browser/chromeos/drive/job_scheduler_unittest.cc
+++ b/chrome/browser/chromeos/drive/job_scheduler_unittest.cc
@@ -14,6 +14,7 @@
#include "base/stl_util.h"
#include "base/strings/stringprintf.h"
#include "chrome/browser/chromeos/drive/test_util.h"
+#include "chrome/browser/drive/event_logger.h"
#include "chrome/browser/drive/fake_drive_service.h"
#include "chrome/common/pref_names.h"
#include "content/public/test/test_browser_thread_bundle.h"
@@ -135,6 +136,8 @@ class JobSchedulerTest : public testing::Test {
fake_network_change_notifier_.reset(
new test_util::FakeNetworkChangeNotifier);
+ logger_.reset(new EventLogger);
+
fake_drive_service_.reset(new CancelTestableFakeDriveService);
fake_drive_service_->LoadResourceListForWapi(
"gdata/root_feed.json");
@@ -144,6 +147,7 @@ class JobSchedulerTest : public testing::Test {
"drive/applist.json");
scheduler_.reset(new JobScheduler(pref_service_.get(),
+ logger_.get(),
fake_drive_service_.get(),
base::MessageLoopProxy::current().get()));
scheduler_->SetDisableThrottling(true);
@@ -184,6 +188,7 @@ class JobSchedulerTest : public testing::Test {
scoped_ptr<TestingPrefServiceSimple> pref_service_;
scoped_ptr<test_util::FakeNetworkChangeNotifier>
fake_network_change_notifier_;
+ scoped_ptr<EventLogger> logger_;
scoped_ptr<CancelTestableFakeDriveService> fake_drive_service_;
scoped_ptr<JobScheduler> scheduler_;
};
diff --git a/chrome/browser/chromeos/drive/logging.cc b/chrome/browser/chromeos/drive/logging.cc
deleted file mode 100644
index b939c46..0000000
--- a/chrome/browser/chromeos/drive/logging.cc
+++ /dev/null
@@ -1,45 +0,0 @@
-// 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 "chrome/browser/chromeos/drive/logging.h"
-
-#include <stdarg.h> // va_list
-#include <string>
-
-#include "base/lazy_instance.h"
-#include "base/strings/stringprintf.h"
-#include "chrome/browser/drive/event_logger.h"
-
-namespace drive {
-namespace util {
-namespace {
-
-static base::LazyInstance<EventLogger> g_logger =
- LAZY_INSTANCE_INITIALIZER;
-
-} // namespace
-
-void Log(logging::LogSeverity severity, const char* format, ...) {
- std::string what;
-
- va_list args;
- va_start(args, format);
- base::StringAppendV(&what, format, args);
- va_end(args);
-
- DVLOG(1) << what;
-
- // On thread-safety: LazyInstance guarantees thread-safety for the object
- // creation. EventLogger::Log() internally maintains the lock.
- EventLogger* ptr = g_logger.Pointer();
- ptr->Log(severity, what);
-}
-
-std::vector<EventLogger::Event> GetLogHistory() {
- EventLogger* ptr = g_logger.Pointer();
- return ptr->GetHistory();
-}
-
-} // namespace util
-} // namespace drive
diff --git a/chrome/browser/chromeos/drive/logging.h b/chrome/browser/chromeos/drive/logging.h
deleted file mode 100644
index 473478a..0000000
--- a/chrome/browser/chromeos/drive/logging.h
+++ /dev/null
@@ -1,29 +0,0 @@
-// 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.
-
-#ifndef CHROME_BROWSER_CHROMEOS_DRIVE_LOGGING_H_
-#define CHROME_BROWSER_CHROMEOS_DRIVE_LOGGING_H_
-
-#include <vector>
-
-#include "chrome/browser/drive/event_logger.h"
-
-namespace drive {
-// Originally wanted to use 'logging' here, but it conflicts with
-// base/logging.h, and breaks DCHECK() and friends.
-namespace util {
-
-// Logs a message using printf format.
-// This function can be called from any thread.
-void Log(
- logging::LogSeverity severity, const char* format, ...) PRINTF_FORMAT(2, 3);
-
-// Returns the log history.
-// This function can be called from any thread.
-std::vector<EventLogger::Event> GetLogHistory();
-
-} // namespace util
-} // namespace drive
-
-#endif // CHROME_BROWSER_CHROMEOS_DRIVE_LOGGING_H_
diff --git a/chrome/browser/chromeos/drive/sync_client_unittest.cc b/chrome/browser/chromeos/drive/sync_client_unittest.cc
index e9e55c6..b36411d 100644
--- a/chrome/browser/chromeos/drive/sync_client_unittest.cc
+++ b/chrome/browser/chromeos/drive/sync_client_unittest.cc
@@ -23,6 +23,7 @@
#include "chrome/browser/chromeos/drive/resource_entry_conversion.h"
#include "chrome/browser/chromeos/drive/resource_metadata.h"
#include "chrome/browser/chromeos/drive/test_util.h"
+#include "chrome/browser/drive/event_logger.h"
#include "chrome/browser/drive/fake_drive_service.h"
#include "content/public/test/test_browser_thread_bundle.h"
#include "google_apis/drive/test_util.h"
@@ -112,12 +113,15 @@ class SyncClientTest : public testing::Test {
fake_network_change_notifier_.reset(
new test_util::FakeNetworkChangeNotifier);
+ logger_.reset(new EventLogger);
+
drive_service_.reset(new SyncClientTestDriveService);
drive_service_->LoadResourceListForWapi("gdata/empty_feed.json");
drive_service_->LoadAccountMetadataForWapi(
"gdata/account_metadata.json");
scheduler_.reset(new JobScheduler(pref_service_.get(),
+ logger_.get(),
drive_service_.get(),
base::MessageLoopProxy::current().get()));
@@ -137,6 +141,7 @@ class SyncClientTest : public testing::Test {
loader_controller_.reset(new LoaderController);
change_list_loader_.reset(new ChangeListLoader(
+ logger_.get(),
base::MessageLoopProxy::current().get(),
metadata_.get(),
scheduler_.get(),
@@ -252,6 +257,7 @@ class SyncClientTest : public testing::Test {
scoped_ptr<TestingPrefServiceSimple> pref_service_;
scoped_ptr<test_util::FakeNetworkChangeNotifier>
fake_network_change_notifier_;
+ scoped_ptr<EventLogger> logger_;
scoped_ptr<SyncClientTestDriveService> drive_service_;
DummyOperationObserver observer_;
scoped_ptr<JobScheduler> scheduler_;
diff --git a/chrome/browser/chromeos/extensions/file_manager/private_api_base.cc b/chrome/browser/chromeos/extensions/file_manager/private_api_base.cc
index 808985d..d5a1ad9 100644
--- a/chrome/browser/chromeos/extensions/file_manager/private_api_base.cc
+++ b/chrome/browser/chromeos/extensions/file_manager/private_api_base.cc
@@ -5,7 +5,8 @@
#include "chrome/browser/chromeos/extensions/file_manager/private_api_base.h"
#include "base/strings/string_number_conversions.h"
-#include "chrome/browser/chromeos/drive/logging.h"
+#include "chrome/browser/chromeos/extensions/file_manager/private_api_util.h"
+#include "chrome/browser/drive/event_logger.h"
namespace extensions {
namespace {
@@ -23,23 +24,25 @@ LoggedAsyncExtensionFunction::~LoggedAsyncExtensionFunction() {
}
void LoggedAsyncExtensionFunction::SendResponse(bool success) {
- int64 elapsed = (base::Time::Now() - start_time_).InMilliseconds();
- if (log_on_completion_) {
- drive::util::Log(logging::LOG_INFO,
- "%s[%d] %s. (elapsed time: %sms)",
- name().c_str(),
- request_id(),
- success ? "succeeded" : "failed",
- base::Int64ToString(elapsed).c_str());
- } else if (elapsed >= kSlowOperationThresholdMs) {
- drive::util::Log(
- logging::LOG_WARNING,
- "PEFORMANCE WARNING: %s[%d] was slow. (elapsed time: %sms)",
- name().c_str(),
- request_id(),
- base::Int64ToString(elapsed).c_str());
+ drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile());
+ if (logger) {
+ int64 elapsed = (base::Time::Now() - start_time_).InMilliseconds();
+ if (log_on_completion_) {
+ logger->Log(logging::LOG_INFO,
+ "%s[%d] %s. (elapsed time: %sms)",
+ name().c_str(),
+ request_id(),
+ success ? "succeeded" : "failed",
+ base::Int64ToString(elapsed).c_str());
+ } else if (elapsed >= kSlowOperationThresholdMs) {
+ logger->Log(
+ logging::LOG_WARNING,
+ "PEFORMANCE WARNING: %s[%d] was slow. (elapsed time: %sms)",
+ name().c_str(),
+ request_id(),
+ base::Int64ToString(elapsed).c_str());
+ }
}
-
ChromeAsyncExtensionFunction::SendResponse(success);
}
diff --git a/chrome/browser/chromeos/extensions/file_manager/private_api_drive.cc b/chrome/browser/chromeos/extensions/file_manager/private_api_drive.cc
index e1dda35..f8d18b0 100644
--- a/chrome/browser/chromeos/extensions/file_manager/private_api_drive.cc
+++ b/chrome/browser/chromeos/extensions/file_manager/private_api_drive.cc
@@ -5,13 +5,13 @@
#include "chrome/browser/chromeos/extensions/file_manager/private_api_drive.h"
#include "chrome/browser/chromeos/drive/drive_integration_service.h"
-#include "chrome/browser/chromeos/drive/logging.h"
#include "chrome/browser/chromeos/extensions/file_manager/private_api_util.h"
#include "chrome/browser/chromeos/file_manager/file_tasks.h"
#include "chrome/browser/chromeos/file_manager/fileapi_util.h"
#include "chrome/browser/chromeos/file_manager/url_util.h"
#include "chrome/browser/chromeos/fileapi/file_system_backend.h"
#include "chrome/browser/drive/drive_app_registry.h"
+#include "chrome/browser/drive/event_logger.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/common/extensions/api/file_browser_private.h"
#include "content/public/browser/browser_thread.h"
@@ -420,13 +420,16 @@ bool FileBrowserPrivateSearchDriveMetadataFunction::RunImpl() {
const scoped_ptr<Params> params(Params::Create(*args_));
EXTENSION_FUNCTION_VALIDATE(params);
- drive::util::Log(logging::LOG_INFO,
- "%s[%d] called. (types: '%s', maxResults: '%d')",
- name().c_str(),
- request_id(),
- api::file_browser_private::ToString(
- params->search_params.types).c_str(),
- params->search_params.max_results);
+ drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile());
+ if (logger) {
+ logger->Log(logging::LOG_INFO,
+ "%s[%d] called. (types: '%s', maxResults: '%d')",
+ name().c_str(),
+ request_id(),
+ api::file_browser_private::ToString(
+ params->search_params.types).c_str(),
+ params->search_params.max_results);
+ }
set_log_on_completion(true);
drive::FileSystemInterface* const file_system =
@@ -533,7 +536,9 @@ bool FileBrowserPrivateGetDriveConnectionStateFunction::RunImpl() {
results_ = api::file_browser_private::GetDriveConnectionState::Results::
Create(result);
- drive::util::Log(logging::LOG_INFO, "%s succeeded.", name().c_str());
+ drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile());
+ if (logger)
+ logger->Log(logging::LOG_INFO, "%s succeeded.", name().c_str());
return true;
}
diff --git a/chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc b/chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc
index 56cf062..798b997 100644
--- a/chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc
+++ b/chrome/browser/chromeos/extensions/file_manager/private_api_misc.cc
@@ -11,11 +11,11 @@
#include "base/strings/utf_string_conversions.h"
#include "chrome/browser/browser_process.h"
#include "chrome/browser/chromeos/drive/file_system_util.h"
-#include "chrome/browser/chromeos/drive/logging.h"
#include "chrome/browser/chromeos/extensions/file_manager/private_api_util.h"
#include "chrome/browser/chromeos/file_manager/app_installer.h"
#include "chrome/browser/chromeos/login/user_manager.h"
#include "chrome/browser/chromeos/settings/cros_settings.h"
+#include "chrome/browser/drive/event_logger.h"
#include "chrome/browser/lifetime/application_lifetime.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/profiles/profile_info_util.h"
@@ -129,7 +129,9 @@ bool FileBrowserPrivateGetPreferencesFunction::RunImpl() {
SetResult(result.ToValue().release());
- drive::util::Log(logging::LOG_INFO, "%s succeeded.", name().c_str());
+ drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile());
+ if (logger)
+ logger->Log(logging::LOG_INFO, "%s succeeded.", name().c_str());
return true;
}
@@ -148,7 +150,9 @@ bool FileBrowserPrivateSetPreferencesFunction::RunImpl() {
service->SetBoolean(prefs::kDisableDriveHostedFiles,
*params->change_info.hosted_files_disabled);
- drive::util::Log(logging::LOG_INFO, "%s succeeded.", name().c_str());
+ drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile());
+ if (logger)
+ logger->Log(logging::LOG_INFO, "%s succeeded.", name().c_str());
return true;
}
@@ -275,15 +279,20 @@ bool FileBrowserPrivateInstallWebstoreItemFunction::RunImpl() {
void FileBrowserPrivateInstallWebstoreItemFunction::OnInstallComplete(
bool success,
const std::string& error) {
+ drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile());
if (success) {
- drive::util::Log(logging::LOG_INFO,
- "App install succeeded. (item id: %s)",
- webstore_item_id_.c_str());
+ if (logger) {
+ logger->Log(logging::LOG_INFO,
+ "App install succeeded. (item id: %s)",
+ webstore_item_id_.c_str());
+ }
} else {
- drive::util::Log(logging::LOG_ERROR,
- "App install failed. (item id: %s, reason: %s)",
- webstore_item_id_.c_str(),
- error.c_str());
+ if (logger) {
+ logger->Log(logging::LOG_ERROR,
+ "App install failed. (item id: %s, reason: %s)",
+ webstore_item_id_.c_str(),
+ error.c_str());
+ }
SetError(error);
}
@@ -308,9 +317,12 @@ bool FileBrowserPrivateRequestWebStoreAccessTokenFunction::RunImpl() {
g_browser_process->system_request_context();
if (!oauth_service) {
- drive::util::Log(logging::LOG_ERROR,
- "CWS OAuth token fetch failed. OAuth2TokenService can't "
- "be retrived.");
+ drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile());
+ if (logger) {
+ logger->Log(logging::LOG_ERROR,
+ "CWS OAuth token fetch failed. OAuth2TokenService can't "
+ "be retrived.");
+ }
SetResult(base::Value::CreateNullValue());
return false;
}
@@ -333,17 +345,21 @@ bool FileBrowserPrivateRequestWebStoreAccessTokenFunction::RunImpl() {
void FileBrowserPrivateRequestWebStoreAccessTokenFunction::OnAccessTokenFetched(
google_apis::GDataErrorCode code,
const std::string& access_token) {
+ drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile());
+
if (code == google_apis::HTTP_SUCCESS) {
DCHECK(auth_service_->HasAccessToken());
DCHECK(access_token == auth_service_->access_token());
- drive::util::Log(logging::LOG_INFO,
- "CWS OAuth token fetch succeeded.");
+ if (logger)
+ logger->Log(logging::LOG_INFO, "CWS OAuth token fetch succeeded.");
SetResult(new base::StringValue(access_token));
SendResponse(true);
} else {
- drive::util::Log(logging::LOG_ERROR,
- "CWS OAuth token fetch failed. (GDataErrorCode: %s)",
- google_apis::GDataErrorCodeToString(code).c_str());
+ if (logger) {
+ logger->Log(logging::LOG_ERROR,
+ "CWS OAuth token fetch failed. (GDataErrorCode: %s)",
+ google_apis::GDataErrorCodeToString(code).c_str());
+ }
SetResult(base::Value::CreateNullValue());
SendResponse(false);
}
diff --git a/chrome/browser/chromeos/extensions/file_manager/private_api_mount.cc b/chrome/browser/chromeos/extensions/file_manager/private_api_mount.cc
index c22bdf2..4d2ae46 100644
--- a/chrome/browser/chromeos/extensions/file_manager/private_api_mount.cc
+++ b/chrome/browser/chromeos/extensions/file_manager/private_api_mount.cc
@@ -7,10 +7,10 @@
#include "base/format_macros.h"
#include "chrome/browser/chromeos/drive/file_system_interface.h"
#include "chrome/browser/chromeos/drive/file_system_util.h"
-#include "chrome/browser/chromeos/drive/logging.h"
#include "chrome/browser/chromeos/extensions/file_manager/private_api_util.h"
#include "chrome/browser/chromeos/file_manager/fileapi_util.h"
#include "chrome/browser/chromeos/file_manager/volume_manager.h"
+#include "chrome/browser/drive/event_logger.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/common/extensions/api/file_browser_private.h"
#include "chromeos/disks/disk_mount_manager.h"
@@ -28,11 +28,14 @@ bool FileBrowserPrivateAddMountFunction::RunImpl() {
const scoped_ptr<Params> params(Params::Create(*args_));
EXTENSION_FUNCTION_VALIDATE(params);
- drive::util::Log(logging::LOG_INFO,
- "%s[%d] called. (source: '%s')",
- name().c_str(),
- request_id(),
- params->source.empty() ? "(none)" : params->source.c_str());
+ drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile());
+ if (logger) {
+ logger->Log(logging::LOG_INFO,
+ "%s[%d] called. (source: '%s')",
+ name().c_str(),
+ request_id(),
+ params->source.empty() ? "(none)" : params->source.c_str());
+ }
set_log_on_completion(true);
const base::FilePath path = file_manager::util::GetLocalPathFromURL(
@@ -89,11 +92,14 @@ bool FileBrowserPrivateRemoveMountFunction::RunImpl() {
const scoped_ptr<Params> params(Params::Create(*args_));
EXTENSION_FUNCTION_VALIDATE(params);
- drive::util::Log(logging::LOG_INFO,
- "%s[%d] called. (veolume_id: '%s')",
- name().c_str(),
- request_id(),
- params->volume_id.c_str());
+ drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile());
+ if (logger) {
+ logger->Log(logging::LOG_INFO,
+ "%s[%d] called. (volume_id: '%s')",
+ name().c_str(),
+ request_id(),
+ params->volume_id.c_str());
+ }
set_log_on_completion(true);
using file_manager::VolumeManager;
@@ -138,10 +144,13 @@ bool FileBrowserPrivateGetVolumeMetadataListFunction::RunImpl() {
log_string += volume_info_list[i].mount_path.AsUTF8Unsafe();
}
- drive::util::Log(
- logging::LOG_INFO,
- "%s[%d] succeeded. (results: '[%s]', %" PRIuS " mount points)",
- name().c_str(), request_id(), log_string.c_str(), result.size());
+ drive::EventLogger* logger = file_manager::util::GetLogger(GetProfile());
+ if (logger) {
+ logger->Log(logging::LOG_INFO,
+ "%s[%d] succeeded. (results: '[%s]', %" PRIuS " mount points)",
+ name().c_str(), request_id(), log_string.c_str(),
+ result.size());
+ }
results_ =
file_browser_private::GetVolumeMetadataList::Results::Create(result);
diff --git a/chrome/browser/chromeos/extensions/file_manager/private_api_util.cc b/chrome/browser/chromeos/extensions/file_manager/private_api_util.cc
index 98e5c8f1a..ec48edf 100644
--- a/chrome/browser/chromeos/extensions/file_manager/private_api_util.cc
+++ b/chrome/browser/chromeos/extensions/file_manager/private_api_util.cc
@@ -9,6 +9,7 @@
#include "base/files/file_path.h"
#include "base/message_loop/message_loop.h"
#include "chrome/browser/chromeos/drive/drive.pb.h"
+#include "chrome/browser/chromeos/drive/drive_integration_service.h"
#include "chrome/browser/chromeos/drive/file_errors.h"
#include "chrome/browser/chromeos/drive/file_system_interface.h"
#include "chrome/browser/chromeos/drive/file_system_util.h"
@@ -262,5 +263,12 @@ void GetSelectedFileInfo(content::RenderViewHost* render_view_host,
base::Bind(&GetSelectedFileInfoInternal, profile, base::Passed(&params)));
}
+drive::EventLogger* GetLogger(Profile* profile) {
+ drive::DriveIntegrationService* service =
+ drive::DriveIntegrationServiceFactory::FindForProfileRegardlessOfStates(
+ profile);
+ return service ? service->event_logger() : NULL;
+}
+
} // namespace util
} // namespace file_manager
diff --git a/chrome/browser/chromeos/extensions/file_manager/private_api_util.h b/chrome/browser/chromeos/extensions/file_manager/private_api_util.h
index 886fe08..a231dd1 100644
--- a/chrome/browser/chromeos/extensions/file_manager/private_api_util.h
+++ b/chrome/browser/chromeos/extensions/file_manager/private_api_util.h
@@ -22,6 +22,10 @@ namespace content {
class RenderViewHost;
}
+namespace drive {
+class EventLogger;
+}
+
namespace extensions {
namespace api {
namespace file_browser_private {
@@ -84,6 +88,9 @@ void GetSelectedFileInfo(content::RenderViewHost* render_view_host,
GetSelectedFileInfoLocalPathOption local_path_option,
GetSelectedFileInfoCallback callback);
+// Get event logger to chrome://drive-internals page for the |profile|.
+drive::EventLogger* GetLogger(Profile* profile);
+
} // namespace util
} // namespace file_manager