|
|
|
|
|
|
|
|
use OCA\DAV\Connector\Sabre\Exception\PasswordLoginForbidden; |
|
|
use OCA\DAV\Connector\Sabre\Exception\PasswordLoginForbidden; |
|
|
use OCP\Files\StorageNotAvailableException; |
|
|
use OCP\Files\StorageNotAvailableException; |
|
|
use OCP\ILogger; |
|
|
use OCP\ILogger; |
|
|
|
|
|
use Sabre\DAV\Exception\BadRequest; |
|
|
use Sabre\DAV\Exception\Conflict; |
|
|
use Sabre\DAV\Exception\Conflict; |
|
|
use Sabre\DAV\Exception\Forbidden; |
|
|
use Sabre\DAV\Exception\Forbidden; |
|
|
use Sabre\DAV\Exception\InvalidSyncToken; |
|
|
use Sabre\DAV\Exception\InvalidSyncToken; |
|
|
|
|
|
|
|
|
// the sync client uses this to find out whether files exist, |
|
|
// the sync client uses this to find out whether files exist, |
|
|
// so it is not always an error, log it as debug |
|
|
// so it is not always an error, log it as debug |
|
|
NotFound::class => true, |
|
|
NotFound::class => true, |
|
|
|
|
|
// the sync client messed up their request |
|
|
|
|
|
// (e.g. propfind for tags with string instead of int) |
|
|
|
|
|
// so it is not always an error, log it as debug |
|
|
|
|
|
BadRequest::class => true, |
|
|
// this one mostly happens when the same file is uploaded at |
|
|
// this one mostly happens when the same file is uploaded at |
|
|
// exactly the same time from two clients, only one client |
|
|
// exactly the same time from two clients, only one client |
|
|
// wins, the second one gets "Precondition failed" |
|
|
// wins, the second one gets "Precondition failed" |