Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(54)

Issue 625463002: [fsp] Add support for observing entries and notifying about changes. (Closed)

Created:
6 years, 2 months ago by mtomasz
Modified:
6 years, 2 months ago
CC:
chromium-reviews, extensions-reviews_chromium.org, nkostylev+watch_chromium.org, yoshiki+watch_chromium.org, asvitkine+watch_chromium.org, rginda+watch_chromium.org, oshima+watch_chromium.org, chromium-apps-reviews_chromium.org, stevenjb+watch_chromium.org, davemoore+watch_chromium.org
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Project:
chromium
Visibility:
Public.

Description

[fsp] Add support for observing entries and notifying about changes. This patch adds: 1. Flag supports_notify_tag to chrome.fsp.mount(). 2. Method chrome.fsp.Notify() to notify about changes of observed entries. 3. Events chrome.fsp.OnObserveDirectory and OnUnobserveEntry. Missing things, to be added in a separate patch: 1. Glueing chrome.fsp.Notify to the C++ layer properly, not with fake data. 2. Saving and restoring observed entries together with tags from preferences. TEST=unit_test: *FileSystemProviderProvidedFileSystem*, *FileSystemProvider*Observe*, *FileSystemProvider*Unobserve* BUG=248427 Committed: https://crrev.com/9b1e24c73938eb4d7e1c631758d213e0f05525b7 Cr-Commit-Position: refs/heads/master@{#299058}

Patch Set 1 #

Patch Set 2 : More code. #

Patch Set 3 : More implementation. #

Total comments: 28

Patch Set 4 : Rebased. For comments see the previous patchset. #

Total comments: 8

Patch Set 5 : Fixed. #

Patch Set 6 : Restored a comment. #

Patch Set 7 : Rebased. #

Total comments: 4

Patch Set 8 : Fixed comments. #

Patch Set 9 : Rebased. #

Unified diffs Side-by-side diffs Delta from patch set Stats (+1727 lines, -236 lines) Patch
M chrome/browser/chromeos/extensions/file_system_provider/file_system_provider_api.h View 1 2 3 4 5 6 1 chunk +10 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/extensions/file_system_provider/file_system_provider_api.cc View 1 2 3 4 5 6 7 8 3 chunks +48 lines, -1 line 0 comments Download
M chrome/browser/chromeos/file_manager/filesystem_api_util.cc View 1 chunk +0 lines, -1 line 0 comments Download
M chrome/browser/chromeos/file_system_provider/fake_provided_file_system.h View 1 2 3 4 5 6 3 chunks +18 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/fake_provided_file_system.cc View 1 2 3 4 2 chunks +42 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/fileapi/file_stream_reader_unittest.cc View 1 2 3 4 5 6 1 chunk +6 lines, -4 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/fileapi/file_stream_writer_unittest.cc View 1 2 3 4 5 6 1 chunk +6 lines, -4 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/fileapi/provider_async_file_util_unittest.cc View 1 2 3 4 5 6 1 chunk +6 lines, -4 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/mount_path_util_unittest.cc View 1 2 3 4 5 6 6 chunks +26 lines, -5 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/operations/abort_unittest.cc View 1 2 3 4 5 6 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/operations/close_file_unittest.cc View 1 2 3 4 5 6 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/operations/copy_entry_unittest.cc View 1 2 3 4 5 6 2 chunks +2 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/operations/create_directory_unittest.cc View 1 2 3 4 5 6 2 chunks +2 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/operations/create_file_unittest.cc View 1 2 3 4 5 6 2 chunks +2 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/operations/delete_entry_unittest.cc View 1 2 3 4 5 6 2 chunks +2 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/operations/get_metadata_unittest.cc View 1 2 3 4 5 6 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/operations/move_entry_unittest.cc View 1 2 3 4 5 6 2 chunks +2 lines, -0 lines 0 comments Download
A + chrome/browser/chromeos/file_system_provider/operations/observe_directory.h View 1 2 3 4 5 6 3 chunks +15 lines, -12 lines 0 comments Download
A + chrome/browser/chromeos/file_system_provider/operations/observe_directory.cc View 3 chunks +17 lines, -21 lines 0 comments Download
A + chrome/browser/chromeos/file_system_provider/operations/observe_directory_unittest.cc View 1 2 3 4 5 6 3 chunks +32 lines, -55 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/operations/open_file_unittest.cc View 1 2 3 4 5 6 2 chunks +2 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/operations/read_directory_unittest.cc View 1 2 3 4 5 6 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/operations/read_file_unittest.cc View 1 2 3 4 5 6 1 chunk +1 line, -0 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/operations/truncate_unittest.cc View 1 2 3 4 5 6 2 chunks +2 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/operations/unmount_unittest.cc View 1 2 3 4 5 6 1 chunk +1 line, -0 lines 0 comments Download
A + chrome/browser/chromeos/file_system_provider/operations/unobserve_entry.h View 1 2 3 4 5 6 3 chunks +12 lines, -12 lines 0 comments Download
A chrome/browser/chromeos/file_system_provider/operations/unobserve_entry.cc View 1 chunk +59 lines, -0 lines 0 comments Download
A + chrome/browser/chromeos/file_system_provider/operations/unobserve_entry_unittest.cc View 1 2 3 4 5 6 4 chunks +51 lines, -44 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/operations/write_file_unittest.cc View 1 2 3 4 5 6 2 chunks +7 lines, -5 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/provided_file_system.h View 1 2 3 4 5 6 5 chunks +78 lines, -1 line 0 comments Download
M chrome/browser/chromeos/file_system_provider/provided_file_system.cc View 1 2 3 4 5 18 chunks +225 lines, -21 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/provided_file_system_info.h View 1 2 3 chunks +6 lines, -1 line 0 comments Download
M chrome/browser/chromeos/file_system_provider/provided_file_system_info.cc View 1 2 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/provided_file_system_interface.h View 1 2 3 4 5 chunks +51 lines, -2 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/provided_file_system_interface.cc View 1 1 chunk +6 lines, -0 lines 0 comments Download
A chrome/browser/chromeos/file_system_provider/provided_file_system_observer.h View 1 2 1 chunk +75 lines, -0 lines 0 comments Download
A + chrome/browser/chromeos/file_system_provider/provided_file_system_observer.cc View 1 1 chunk +3 lines, -3 lines 0 comments Download
A chrome/browser/chromeos/file_system_provider/provided_file_system_unittest.cc View 1 2 3 4 5 6 1 chunk +611 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/request_manager.h View 1 chunk +2 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/request_manager.cc View 1 chunk +4 lines, -0 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/service.h View 1 2 3 4 5 6 5 chunks +23 lines, -3 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/service.cc View 1 2 10 chunks +45 lines, -9 lines 0 comments Download
M chrome/browser/chromeos/file_system_provider/service_unittest.cc View 1 2 3 4 5 6 16 chunks +80 lines, -28 lines 0 comments Download
M chrome/chrome_browser_chromeos.gypi View 1 2 3 4 5 6 7 8 3 chunks +6 lines, -0 lines 0 comments Download
M chrome/chrome_tests_unit.gypi View 1 2 3 4 5 6 7 8 2 chunks +3 lines, -0 lines 0 comments Download
M chrome/common/extensions/api/file_system_provider.idl View 1 2 3 4 5 6 7 7 chunks +122 lines, -0 lines 0 comments Download
M chrome/renderer/resources/extensions/file_system_provider_custom_bindings.js View 1 chunk +8 lines, -0 lines 0 comments Download
M extensions/browser/extension_function_histogram_value.h View 1 2 3 4 5 6 7 8 1 chunk +1 line, -0 lines 0 comments Download
M tools/metrics/histograms/histograms.xml View 1 chunk +1 line, -0 lines 0 comments Download

Messages

Total messages: 22 (6 generated)
mtomasz
@hirono: PTAL. This is a huge patch, so I added comments explaining changes. Please read ...
6 years, 2 months ago (2014-10-03 04:22:48 UTC) #2
hirono
https://codereview.chromium.org/625463002/diff/40001/chrome/browser/chromeos/file_system_provider/operations/unobserve_entry.h File chrome/browser/chromeos/file_system_provider/operations/unobserve_entry.h (right): https://codereview.chromium.org/625463002/diff/40001/chrome/browser/chromeos/file_system_provider/operations/unobserve_entry.h#newcode47 chrome/browser/chromeos/file_system_provider/operations/unobserve_entry.h:47: base::FilePath entry_path_; Maybe const? https://codereview.chromium.org/625463002/diff/40001/chrome/browser/chromeos/file_system_provider/provided_file_system.cc File chrome/browser/chromeos/file_system_provider/provided_file_system.cc (right): https://codereview.chromium.org/625463002/diff/40001/chrome/browser/chromeos/file_system_provider/provided_file_system.cc#newcode68 ...
6 years, 2 months ago (2014-10-03 07:19:13 UTC) #3
hirono
https://codereview.chromium.org/625463002/diff/60001/chrome/browser/chromeos/file_system_provider/provided_file_system.cc File chrome/browser/chromeos/file_system_provider/provided_file_system.cc (right): https://codereview.chromium.org/625463002/diff/60001/chrome/browser/chromeos/file_system_provider/provided_file_system.cc#newcode367 chrome/browser/chromeos/file_system_provider/provided_file_system.cc:367: if (!recursive || it->second.recursive) { recursive = false -> ...
6 years, 2 months ago (2014-10-03 07:25:33 UTC) #4
mtomasz
https://codereview.chromium.org/625463002/diff/40001/chrome/browser/chromeos/file_system_provider/operations/unobserve_entry.h File chrome/browser/chromeos/file_system_provider/operations/unobserve_entry.h (right): https://codereview.chromium.org/625463002/diff/40001/chrome/browser/chromeos/file_system_provider/operations/unobserve_entry.h#newcode47 chrome/browser/chromeos/file_system_provider/operations/unobserve_entry.h:47: base::FilePath entry_path_; On 2014/10/03 07:19:13, hirono wrote: > Maybe ...
6 years, 2 months ago (2014-10-03 08:35:34 UTC) #5
hirono
lgtm! https://codereview.chromium.org/625463002/diff/60001/chrome/browser/chromeos/file_system_provider/provided_file_system.cc File chrome/browser/chromeos/file_system_provider/provided_file_system.cc (right): https://codereview.chromium.org/625463002/diff/60001/chrome/browser/chromeos/file_system_provider/provided_file_system.cc#newcode367 chrome/browser/chromeos/file_system_provider/provided_file_system.cc:367: if (!recursive || it->second.recursive) { On 2014/10/03 08:35:34, ...
6 years, 2 months ago (2014-10-06 02:41:38 UTC) #6
mtomasz
@benwells: PTAL at IDL. Thanks.
6 years, 2 months ago (2014-10-06 03:37:32 UTC) #8
mtomasz
@isherman: PTAL at histograms. Thanks.
6 years, 2 months ago (2014-10-06 13:19:04 UTC) #10
Ilya Sherman
histograms LGTM
6 years, 2 months ago (2014-10-06 21:47:21 UTC) #11
benwells
Just some comment nits. https://codereview.chromium.org/625463002/diff/120001/chrome/common/extensions/api/file_system_provider.idl File chrome/common/extensions/api/file_system_provider.idl (right): https://codereview.chromium.org/625463002/diff/120001/chrome/common/extensions/api/file_system_provider.idl#newcode315 chrome/common/extensions/api/file_system_provider.idl:315: // An ID of the ...
6 years, 2 months ago (2014-10-09 04:36:44 UTC) #12
benwells
(lgtm)
6 years, 2 months ago (2014-10-09 04:37:11 UTC) #13
mtomasz
https://codereview.chromium.org/625463002/diff/120001/chrome/common/extensions/api/file_system_provider.idl File chrome/common/extensions/api/file_system_provider.idl (right): https://codereview.chromium.org/625463002/diff/120001/chrome/common/extensions/api/file_system_provider.idl#newcode315 chrome/common/extensions/api/file_system_provider.idl:315: // An ID of the request tothis change. On ...
6 years, 2 months ago (2014-10-09 07:37:52 UTC) #14
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/625463002/140001
6 years, 2 months ago (2014-10-10 00:37:29 UTC) #16
commit-bot: I haz the power
Try jobs failed on following builders: mac_gpu on tryserver.chromium.gpu (http://build.chromium.org/p/tryserver.chromium.gpu/builders/mac_gpu/builds/67005) android_arm64_dbg_recipe on tryserver.chromium.linux (http://build.chromium.org/p/tryserver.chromium.linux/builders/android_arm64_dbg_recipe/builds/11758) android_chromium_gn_compile_rel ...
6 years, 2 months ago (2014-10-10 00:44:15 UTC) #18
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/625463002/300001
6 years, 2 months ago (2014-10-10 03:25:05 UTC) #20
commit-bot: I haz the power
Committed patchset #9 (id:300001)
6 years, 2 months ago (2014-10-10 04:39:15 UTC) #21
commit-bot: I haz the power
6 years, 2 months ago (2014-10-10 04:39:55 UTC) #22
Message was sent while issue was closed.
Patchset 9 (id:??) landed as
https://crrev.com/9b1e24c73938eb4d7e1c631758d213e0f05525b7
Cr-Commit-Position: refs/heads/master@{#299058}

Powered by Google App Engine
This is Rietveld 408576698