Blame view
sources/3rdparty/sabre/dav/lib/Sabre/DAV/Exception/Locked.php
1.69 KB
|
03e52840d
|
1 |
<?php |
|
6d9380f96
|
2 3 4 |
namespace Sabre\DAV\Exception; use Sabre\DAV; |
|
03e52840d
|
5 6 7 8 9 |
/** * Locked * * The 423 is thrown when a client tried to access a resource that was locked, without supplying a valid lock token * |
|
6d9380f96
|
10 11 12 |
* @copyright Copyright (C) 2007-2014 fruux GmbH (https://fruux.com/). * @author Evert Pot (http://evertpot.com/) * @license http://sabre.io/license/ Modified BSD License |
|
03e52840d
|
13 |
*/ |
|
6d9380f96
|
14 |
class Locked extends DAV\Exception {
|
|
03e52840d
|
15 16 17 18 |
/**
* Lock information
*
|
|
6d9380f96
|
19 |
* @var Sabre\DAV\Locks\LockInfo |
|
03e52840d
|
20 21 22 23 24 25 26 27 28 |
*/
protected $lock;
/**
* Creates the exception
*
* A LockInfo object should be passed if the user should be informed
* which lock actually has the file locked.
*
|
|
6d9380f96
|
29 |
* @param DAV\Locks\LockInfo $lock |
|
03e52840d
|
30 |
*/ |
|
6d9380f96
|
31 |
public function __construct(DAV\Locks\LockInfo $lock = null) {
|
|
03e52840d
|
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 |
$this->lock = $lock;
}
/**
* Returns the HTTP statuscode for this exception
*
* @return int
*/
public function getHTTPCode() {
return 423;
}
/**
* This method allows the exception to include additional information into the WebDAV error response
*
|
|
6d9380f96
|
51 52 |
* @param DAV\Server $server
* @param \DOMElement $errorNode
|
|
03e52840d
|
53 54 |
* @return void
*/
|
|
6d9380f96
|
55 |
public function serialize(DAV\Server $server,\DOMElement $errorNode) {
|
|
03e52840d
|
56 57 58 59 |
if ($this->lock) {
$error = $errorNode->ownerDocument->createElementNS('DAV:','d:lock-token-submitted');
$errorNode->appendChild($error);
|
|
6d9380f96
|
60 61 62 63 64 65 |
$href = $errorNode->ownerDocument->createElementNS('DAV:','d:href');
$href->appendChild($errorNode->ownerDocument->createTextNode($this->lock->uri));
$error->appendChild(
$href
);
|
|
03e52840d
|
66 67 68 69 70 |
}
}
}
|