Commit Graph

272 Commits

Author SHA1 Message Date
Robin Appelman 17bcea1585 Filesystem: add View->getPath to the cache api 2013-01-27 00:13:50 +01:00
Robin Appelman 9e2a066c7b Cache: add function to get storage id and internal path of a file by id 2013-01-27 00:13:50 +01:00
Robin Appelman 69f11151e9 Filesystem: add Mount::findById 2013-01-27 00:13:49 +01:00
Michael Gapczynski 03b947e3ec Don't check for updates for sub storages, these scans should be done in the background 2013-01-26 16:11:35 -05:00
Robin Appelman f25db779d9 Filesystem: move mount management to it's own class 2013-01-26 21:44:33 +01:00
Robin Appelman f858381775 merge master into filesystem 2013-01-22 23:27:04 +01:00
Robin Appelman 9a1f65aab1 Some style fixes 2013-01-22 20:58:09 +01:00
Robin Appelman 7330fcf5e8 Cache: make mounts overwrite existing folders, prevents duplicate entries 2013-01-22 20:57:15 +01:00
Robin Appelman 42a1a17a30 Cache: return non numberic storage id 2013-01-21 22:01:22 +01:00
Michael Gapczynski 664f33a29c Update mtimes of all parent folders after change inside 2013-01-19 21:04:25 -05:00
Robin Appelman 6871a150bd Cache: use a database transition for scanning each folder
gives a massive speed improvement while scanning files
2013-01-16 21:58:17 +01:00
Robin Appelman f9c42a196f Cache: no longer using this file 2013-01-16 21:36:04 +01:00
Robin Appelman 29ec007979 Cache: dont migrate permissions, cache them on demain instead 2013-01-16 19:11:33 +01:00
Robin Appelman 7debfac0dc Cache: more efficient upgrading 2013-01-15 19:11:12 +01:00
Robin Appelman 94068e5d08 Cache: show upgrade progress 2013-01-15 18:13:50 +01:00
Michael Gapczynski 6f049d0889 Merge branch 'filesystem' into filesystem-etags 2013-01-11 21:00:02 -05:00
Michael Gapczynski 8a63bcc1e8 Don't use more entropy for etags 2013-01-11 20:56:36 -05:00
Michael Gapczynski 4835525c46 Switch scan to scanFile for root of mount points 2013-01-10 22:28:50 -05:00
Michael Gapczynski aa15fcf22f Scan mount points in root before adding a entry 2013-01-10 12:09:55 -05:00
Michael Gapczynski 5174eda232 Fix permissions for mount point 2013-01-07 15:21:38 -05:00
Michael Gapczynski 6801f82d09 Merge branch 'filesystem' into filesystem-etags
Conflicts:
	lib/files/cache/cache.php
2013-01-07 10:28:37 -05:00
Robin Appelman d0377b1951 Cache: normalize mimetypes 2013-01-07 02:09:21 +01:00
Robin Appelman 439578288f Cache: split permission cache scanning and cache scanning 2013-01-07 01:03:11 +01:00
Robin Appelman 457dc270f5 Fix messed up mounts 2013-01-07 00:36:39 +01:00
Robin Appelman e8d08d4930 merge master into filesystem 2013-01-07 00:16:10 +01:00
Michael Gapczynski 1137723b2a Remove unnecessary length parameter from last commit 2013-01-03 12:13:45 -05:00
Michael Gapczynski 38876fc98a Update old storage classes names to the new namespace during mounting 2013-01-03 12:07:04 -05:00
Michael Gapczynski a068ddff64 Use the sub storage's permission cache for retrieving the correct permission 2013-01-02 14:40:06 -05:00
Robin Appelman a164fd160f Cache: provide path hints to getCache/etc where available 2013-01-01 20:20:20 +01:00
Robin Appelman 04f83e3b53 Cache: optional path argument for getCache/Scanner/etc 2013-01-01 20:20:20 +01:00
Robin Appelman b41189de44 Cache: allow storage backends to overwrite Watcher 2013-01-01 18:04:29 +01:00
Michael Gapczynski d0a50fae83 Fix eTagUpdate and add tests 2012-12-31 18:16:44 -05:00
Michael Gapczynski aea8b0ff5c Merge branch 'filesystem' into filesystem-etags
Conflicts:
	lib/files/cache/updater.php
2012-12-30 21:26:48 -05:00
Michael Gapczynski 96e08a1d96 Fix function name 2012-12-30 21:23:17 -05:00
Michael Gapczynski 3ee3323b87 Fix retrieving of cache and scanner in Updater class 2012-12-30 20:27:38 -05:00
Michael Gapczynski 77f12c526b Update etags in parent folders 2012-12-30 19:54:51 -05:00
Michael Gapczynski 83064aca51 Remove old etag code 2012-12-30 19:23:31 -05:00
Michael Gapczynski 2c23e143d3 Store etags in the file cache 2012-12-30 16:32:55 -05:00
Michael Gapczynski 8bdfb04056 Fix shared folders 2012-12-28 15:06:12 -05:00
Michael Gapczynski b4515d874e Only folders have Create permission 2012-12-26 15:36:50 -05:00
Robin Appelman b12abb2c94 use numeric ids for storages in the filecache 2012-12-15 23:35:07 +01:00
Michael Gapczynski 8951769cae Check sub storage isn't null or false 2012-12-15 17:16:26 -05:00
Robin Appelman cf3665057c make sure folders that are not fully scanned are at least shallow scanned when we open them
the fact that they are in the cache does not mean they are scanned
2012-12-15 03:21:39 +01:00
Robin Appelman 4be039e6cb Filecache Watcher: use scan or scanFile based on the current item, not the cached item 2012-12-15 03:10:56 +01:00
Robin Appelman bc52f12162 dont insert and entry in the filecache during upgrade if the id already exists in the filecache
most likely the result from an incompelte upgrade
2012-12-15 02:29:34 +01:00
Robin Appelman 438d3c21f6 actually connect the filesystem hooks to the cache updater 2012-12-11 01:24:53 +01:00
Robin Appelman 8635699db9 fix cache behaviour for non existing files 2012-12-11 01:06:21 +01:00
Robin Appelman 317cd4c70a catch error if old filecache table is not present during upgrade 2012-12-06 17:49:35 +01:00
Robin Appelman 01eb5d2790 fix some edge cases while scanning the root of a storage 2012-12-02 03:43:51 +01:00
Robin Appelman 702444b242 fail gracefully when no old filecache is present during upgrade 2012-12-01 00:59:49 +01:00
Robin Appelman dbbb357f62 add upgrade path from old cache to preserve file id's 2012-11-30 01:41:30 +01:00
Robin Appelman a609992a75 better check if we are passing a fileid to Cache::get 2012-11-25 16:30:57 +01:00
Robin Appelman 0cfef83ed9 sort output of getFolderContent by name 2012-11-25 16:08:35 +01:00
Michael Gapczynski cc5d8e5609 Check if data variable in scanner isn't null before using it 2012-11-24 20:29:57 -05:00
Robin Appelman 709aacfa0f change behaviour of Filesystem::getMountPoint when a mountpoint is passed as path without trailing slash 2012-11-24 23:41:39 +01:00
Robin Appelman d3e37fa157 remove fileatime from common storage backend 2012-11-24 22:55:26 +01:00
Michael Gapczynski c47bf9bbce Add checks for storage object 2012-11-24 16:42:54 -05:00
Robin Appelman ad706229f5 explicitly sort files when using getFolderContents 2012-11-23 00:17:18 +01:00
Robin Appelman 810563ae8a don't redefine inherited functions as abstract 2012-11-22 12:45:29 +01:00
Robin Appelman 8687e0d346 add Scanner->backgroundScan 2012-11-22 12:45:29 +01:00
Robin Appelman 186c9e77e8 add Cache->getIncomplete for use in background scanning 2012-11-22 12:45:29 +01:00
Robin Appelman e6cf082fe0 emit a hooks during the filesystem scan 2012-11-22 12:45:29 +01:00
Thomas Mueller 208c6fd966 fixing namespace 2012-11-22 10:21:48 +01:00
Michael Gapczynski b76d1afe19 Create public function initMountPoints() for initializing a specified user's mount points 2012-11-22 00:44:48 -05:00
Robin Appelman 40fae0acbf fix outdated permissions cache use in scanner 2012-11-18 14:10:28 +01:00
Robin Appelman cbcd9ba84a allow storage backends to implement custom permission management 2012-11-15 00:57:30 +01:00
Robin Appelman fedff3eafe add cache updater 2012-11-08 21:12:40 +01:00
Robin Appelman 5a173b901f fix Scanner->scan setting the filesize to 0 for files 2012-11-08 20:47:40 +01:00
Robin Appelman 15b8a3f987 move correctFolderSize from Scanner to Cache 2012-11-08 18:10:54 +01:00
Robin Appelman 3f644fe70c fix calculateFolderSize for non existing files 2012-11-08 18:07:30 +01:00
Robin Appelman e7bed5ddab allow creating Cache objects with only the storage id instead of the whole storage object 2012-11-08 17:59:08 +01:00
Robin Appelman 706bb3ccd6 move ETag generation to storage backends 2012-11-08 17:48:26 +01:00
Robin Appelman 72c3868644 add resolvePath to filesystem view api 2012-11-08 17:42:26 +01:00
Robin Appelman 961ff01a93 merge master into filesystem 2012-11-07 17:18:56 +01:00
Robin Appelman 4b940955dd merge master into filesystem 2012-11-04 21:12:18 +01:00
Robin Appelman 8a6bb7965d add Cache::move 2012-11-02 22:25:33 +01:00
Robin Appelman 4a5a36577e merge master into filesystem 2012-11-02 21:42:29 +01:00
Robin Appelman b07672821b check for changes when using the cache api 2012-10-28 11:43:45 +01:00
Robin Appelman fba7be1194 add filesystem watcher to detect updates 2012-10-28 11:39:37 +01:00
Robin Appelman 79d0ac21cc delete child entries when a folder gets removed from cache 2012-10-27 18:08:00 +02:00
Robin Appelman 56e9ce44c3 add a way to recalucale the size of a folder in the cache 2012-10-27 18:08:00 +02:00
Robin Appelman 5bfff6c56e use absolute paths when resolving mount points 2012-10-27 12:17:35 +02:00
Robin Appelman fcc92a9f43 add searchByMime to new cache api 2012-10-27 10:34:25 +02:00
Robin Appelman 695405dfeb add permissions data to the results of the cache api 2012-10-27 10:01:20 +02:00
Robin Appelman 7d6da68d53 prove some compatibility with the old cache api 2012-10-26 23:25:52 +02:00
Robin Appelman 6db81afab9 move some stuff to the new api 2012-10-26 23:05:02 +02:00
Robin Appelman c22a723785 add file permissions cache 2012-10-26 19:07:29 +02:00
Robin Appelman 8bce661e4d add search to the filecache api 2012-10-26 13:23:49 +02:00
Robin Appelman 7ef0ffe8ad add View->putFileInfo to the filecache api 2012-10-26 12:43:23 +02:00
Robin Appelman e63e246c48 fix problem with normalizePath when there was a double leading slash 2012-10-26 12:37:49 +02:00
Robin Appelman 39adadd3e3 move the cache api from OC_Files to filesystem(view) 2012-10-26 12:30:25 +02:00
Robin Appelman 7bc49d2a57 merge master into filesystem 2012-10-25 18:26:08 +02:00
Robin Appelman 56c7ee799c use strtotime on non-nummeric times in oc_filesystem::touch 2012-10-23 16:37:46 +02:00
Robin Appelman 7424f3aef6 merge master into filesystem 2012-10-23 16:16:46 +02:00
Robin Appelman 2522c25af7 use OC_Files::getFileInfo and OC_Files::getDirectoryContent as high level api for the filecache
most apps would want to use this api instead of using the cache directly
2012-10-21 02:12:58 +02:00
Robin Appelman 01594b8610 remove chroot from filesystem api 2012-10-21 00:54:34 +02:00
Robin Appelman 3ff0772a05 add getCache and getScanner to storage api in order to allow storage backends to overwride caching behaviour 2012-10-21 00:31:32 +02:00
Robin Appelman 1901ac8b17 drop depricated is_readable and is_writable 2012-10-21 00:13:16 +02:00
Robin Appelman cfa036eaa9 drop filectime from the filesystem api's 2012-10-20 23:58:07 +02:00
Robin Appelman 11e9ce25e6 merge master into filesystem 2012-10-13 04:29:20 +02:00
Robin Appelman 5c6e9518ed drop Filesystem::getInternalPath and Filesystem::getStorage in favor of Filesystem::resolvePath 2012-10-10 17:46:29 +02:00
Robin Appelman aaa1b73364 don't use depricated OC_Filesystem 2012-10-10 13:18:36 +02:00
Robin Appelman 07c5384189 fix namespaces in filesystem and filesystemview 2012-10-10 12:25:46 +02:00
Robin Appelman 9df60d27bd move some code around 2012-10-10 11:54:44 +02:00
Robin Appelman 13515effc9 add Cache::getStatus 2012-10-08 14:58:21 +02:00
Robin Appelman b9b9fd9dba more tests and fixes for the filesystem scanner 2012-10-03 13:07:19 +02:00
Robin Appelman 85be00be65 add some more test cases for the scanner 2012-10-03 11:40:09 +02:00
Robin Appelman e415e90c6d make filestorage scanner non-static and add a simple test case 2012-10-03 11:24:49 +02:00
Robin Appelman 96d7cd5997 correct namespace usage in common filestorage backend 2012-10-03 11:24:10 +02:00
Robin Appelman 636c75ce06 better parent path bahaviour for the filecache 2012-10-03 11:23:33 +02:00
Robin Appelman 92555eff71 add encrypted column to the new filecache 2012-10-02 23:34:45 +02:00
Robin Appelman 522d7df860 convert Cache to a non-static class that handles the cache for a single storage backend 2012-09-26 17:52:02 +02:00
Robin Appelman dcf995fff3 add Cache::getFolderContent 2012-09-23 15:25:03 +02:00
Robin Appelman 6fafd5d4e9 this should be done elsewhere if needed 2012-09-23 01:46:52 +02:00
Robin Appelman 97b0eabc85 fix several problems in the new filecache in order to complete the tests 2012-09-22 15:43:48 +02:00
Robin Appelman 46896be0d4 fix namespace error in temporary storage backend 2012-09-22 15:03:17 +02:00
Robin Appelman 153cd802a9 add partial file data to the result of Cache::get 2012-09-22 14:40:04 +02:00
Robin Appelman 93292516d9 Merge branch 'master' into filesystem 2012-09-22 14:28:14 +02:00
Robin Appelman 954596c251 rework filecache to work directly on storage backends wip 2012-09-16 16:52:32 +02:00
Robin Appelman c94fe38d39 add getPermissions to storage backends to get all permission flags in one go 2012-09-12 23:25:57 +02:00
Robin Appelman e8d3a47685 add getId to storage backends 2012-09-12 22:50:10 +02:00
Robin Appelman bd83422095 put filestorages in a namespace 2012-09-07 18:30:48 +02:00