Commit Graph

420 Commits

Author SHA1 Message Date
Bernhard Posselt e70aef603f Merge pull request #1573 from owncloud/fixing-ctor-local-storage-master
adding dtor to Local and revert call to it within Temporary
2013-02-11 04:40:54 -08:00
Robin Appelman 2921d2fb78 Cache: don't create a new etag when the mtime hasn't changed 2013-02-11 13:33:56 +01:00
Robin Appelman d84c3cd014 Cache: actually use parameter 2013-02-11 13:33:48 +01:00
Robin Appelman 299649b40e Cache: reuse known folder sizes when doing a shallow scan 2013-02-11 13:33:41 +01:00
Robin Appelman 56d10e9054 Cache: simplify scanner logic a bit when handeling with unknown folder sizes 2013-02-11 13:33:34 +01:00
Michael Gapczynski eeb409a6ec Merge branch 'master' into fix-shared-links 2013-02-10 19:10:06 -05:00
Michael Gapczynski 8e3b8c7f47 Proper fix for shared links 2013-02-10 19:09:58 -05:00
Frank Karlitschek dc12dd523e Merge pull request #1581 from owncloud/mapper_md5
Mapper: use md5 hashes for database indexes
2013-02-10 06:47:44 -08:00
Lukas Reschke d08a3bb46e Merge pull request #1590 from owncloud/fix_470
append .part to put files
2013-02-10 06:38:31 -08:00
Jörn Friedrich Dreyer 1263511a17 append .part to put files 2013-02-10 14:16:45 +01:00
Administrator 4e5a3fbcaf - Fixed indentations.
- Fixed a bug in legacy.php: there was an error that was not checked for if the table 'fscache' did not exist in the database.
2013-02-10 14:08:00 +01:00
Lukas Reschke 6f785e211b Merge pull request #1030 from hkjolhede/master
SFTP support in files_external app
2013-02-10 05:06:00 -08:00
Robin Appelman 9738fae3cf Emulate touch() for backends that don't support it 2013-02-10 12:44:27 +01:00
Robin Appelman 3e70d563a6 Cache: bookkeeping of storage_mtime 2013-02-10 12:27:35 +01:00
Robin Appelman 0c05244f8b Mapper: use md5 hashes for database indexes
indexing the full path exeeds the maximum index length for MySQL
2013-02-10 11:49:37 +01:00
Thomas Müller 2b0b6bb63c Merge pull request #1566 from owncloud/fixing-1505-master
fixes zip download for folders containing a dot .....
2013-02-09 08:33:44 -08:00
icewind1991 5a309c11ca Merge pull request #1572 from owncloud/fix_empty_path_handling
fix empty path handling
2013-02-09 08:25:25 -08:00
Thomas Müller e0da721a7d adding ctor to Local and revert call to it within Temporary 2013-02-09 17:16:13 +01:00
Lukas Reschke 06bba59249 Merge pull request #1618 from owncloud/mapped-storage-unit-testing-linux-master
Mapped storage unit testing linux master
2013-02-12 22:58:37 -08:00
Thomas Mueller 92e6409f40 fixing mappedlocal storage to work on non-windows as well
this allows us to run unit tests on linux - necessary to enable easy regression testing
2013-02-11 13:53:10 +01:00
Thomas Mueller f223ab796b Merge branch 'master' into mapped-storage-unit-testing-linux-master 2013-02-11 12:59:23 +01:00
Thomas Müller 8174e5faf1 make MappedLocal available and testable within Linux as well 2013-02-09 19:03:03 +01:00
Jörn Friedrich Dreyer 420b63cbe4 fix empty path handling 2013-02-09 16:58:55 +01:00
Bart Visscher 60411f7d3d Remove unneeded __destruct call in OC\Files\Storage\Temporary 2013-02-09 16:18:30 +01:00
Henrik Kjölhede d6b4d25d1d Merge branch 'master' of https://github.com/hkjolhede/owncloud_core 2013-02-09 14:13:54 +01:00
Henrik Kjölhede 41fa65e7be Merge branch 'master' of https://github.com/owncloud/core
Conflicts:
	apps/files_external/appinfo/app.php
2013-02-09 14:05:33 +01:00
Thomas Müller ddc7af9a53 know your libraries ;-)
strrpos fails in cases the file in the path has no dot but the parent folder
2013-02-09 13:51:44 +01:00
Thomas Mueller fd8cb9974b initial version of a local storage implementation which will use unique slugified filename on the local filesystem.
This implementation will only be enabled on windows based system to solve the issues around UTF-8 file names with php on windows.
2013-02-06 23:41:52 +01:00
Lukas Reschke e6400b3059 Merge pull request #1474 from samtuke/master
Improvements to files_encryption
2013-02-05 09:58:35 -08:00
Sam Tuke 50faddfa40 Minor improvement to comments 2013-02-05 15:37:40 +00:00
Thomas Mueller 9446017821 spell check 2013-02-05 16:24:40 +01:00
Thomas Mueller 1fd807a7d6 pass the argument to the ctor
Conflicts:
	lib/files/storage/temporary.php
2013-02-05 16:24:11 +01:00
Thomas Mueller 02e6adfdb3 fixing namespace 2013-02-04 20:49:01 +01:00
Thomas Müller 301afac291 Merge pull request #1427 from TheSFReader/master
The mimetype/mimepart need to be readable, even from searchByMime
2013-02-04 06:44:40 -08:00
Thomas Müller 814369e0cd Merge pull request #1436 from owncloud/cache_check_path
Cache: check for invalid paths in getFileInfo/getDirectoryContent
2013-02-04 05:51:34 -08:00
Robin Appelman 7c33d0a5a7 Cache: fix copy-paste errors 2013-02-04 13:28:31 +01:00
Thomas Müller f7258cc5e8 Merge pull request #1423 from owncloud/getowner
Add getOwner to Filesystem and View classes
2013-02-04 03:08:13 -08:00
Robin Appelman 80dd8d7802 Cache: check for invalid paths in getFileInfo/getDirectoryContent 2013-02-03 23:34:27 +01:00
Lukas Reschke 3def7f8187 Make fileblacklist configurable 2013-02-03 23:03:06 +01:00
TheSFReader d03155a8d5 translate the mimtype/mimepart to readable in the searchByMime function 2013-02-03 11:06:26 +01:00
Michael Gapczynski 6093d961a0 Add getOwner to Filesystem and View classes 2013-02-02 18:50:40 -05:00
TheSFReader 42d59d5a16 Remove a warning by making sure the renamed file is a dir before trying and opening it 2013-02-02 23:18:29 +01:00
Robin Appelman af3b0e30ed Cache: don't insert duplicated during upgrade 2013-01-30 19:19:19 +01:00
Robin Appelman 232cc3211b add oc:// streamwrapper to provide access to ownCloud's virtual filesystem 2013-01-28 15:35:30 +01:00
Robin Appelman c9c919da57 Move streamwrappers to seperate files and put them in a namespace 2013-01-28 15:34:15 +01:00
Robin Appelman 3e59a87153 Filesystem: use the updated Mount::findById in getPath to ensure we get the correct path if the storage is also mounted outside the view 2013-01-28 01:02:04 +01:00
Robin Appelman 577e3b11d7 Filesystem: return all matching mounts in Mount::findById 2013-01-28 00:59:43 +01:00
Robin Appelman 4cae141673 Filesystem: also add getPath to \OC\Filesystem 2013-01-27 00:18:15 +01:00
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