diff options
author | Robin Appelman <icewind1991@gmail.com> | 2011-09-29 14:28:57 +0200 |
---|---|---|
committer | Robin Appelman <icewind1991@gmail.com> | 2011-09-29 14:28:57 +0200 |
commit | 2086bc4be77ba64337b721cec1cac544c1c58452 (patch) | |
tree | 1ce50e6854664b8e8dcf2b741551cd417de88fdd /3rdparty/Sabre/DAV/SimpleFile.php | |
parent | fcc6d61fe195e090da33f213312d3d8bec8c1c71 (diff) | |
download | nextcloud-server-2086bc4be77ba64337b721cec1cac544c1c58452.tar.gz nextcloud-server-2086bc4be77ba64337b721cec1cac544c1c58452.zip |
update sabredav to 1.5.3
Diffstat (limited to '3rdparty/Sabre/DAV/SimpleFile.php')
-rw-r--r-- | 3rdparty/Sabre/DAV/SimpleFile.php | 120 |
1 files changed, 120 insertions, 0 deletions
diff --git a/3rdparty/Sabre/DAV/SimpleFile.php b/3rdparty/Sabre/DAV/SimpleFile.php new file mode 100644 index 00000000000..304dff1c5ec --- /dev/null +++ b/3rdparty/Sabre/DAV/SimpleFile.php @@ -0,0 +1,120 @@ +<?php + +/** + * SimpleFile + * + * The 'SimpleFile' class is used to easily add read-only immutable files to + * the directory structure. One usecase would be to add a 'readme.txt' to a + * root of a webserver with some standard content. + * + * @package Sabre + * @subpackage DAV + * @copyright Copyright (C) 2007-2011 Rooftop Solutions. All rights reserved. + * @author Evert Pot (http://www.rooftopsolutions.nl/) + * @license http://code.google.com/p/sabredav/wiki/License Modified BSD License + */ +class Sabre_DAV_SimpleFile extends Sabre_DAV_File { + + /** + * File contents + * + * @var string + */ + protected $contents = array(); + + /** + * Name of this resource + * + * @var string + */ + protected $name; + + /** + * A mimetype, such as 'text/plain' or 'text/html' + * + * @var string + */ + protected $mimeType; + + /** + * Creates this node + * + * The name of the node must be passed, as well as the contents of the + * file. + * + * @param string $name + * @param string $contents + */ + public function __construct($name, $contents, $mimeType = null) { + + $this->name = $name; + $this->contents = $contents; + $this->mimeType = $mimeType; + + } + + /** + * Returns the node name for this file. + * + * This name is used to construct the url. + * + * @return string + */ + public function getName() { + + return $this->name; + + } + + /** + * Returns the data + * + * This method may either return a string or a readable stream resource + * + * @return mixed + */ + public function get() { + + return $this->contents; + + } + + /** + * Returns the size of the file, in bytes. + * + * @return int + */ + public function getSize() { + + return strlen($this->contents); + + } + + /** + * Returns the ETag for a file + * + * An ETag is a unique identifier representing the current version of the file. If the file changes, the ETag MUST change. + * The ETag is an arbritrary string, but MUST be surrounded by double-quotes. + * + * Return null if the ETag can not effectively be determined + */ + public function getETag() { + + return '"' . md5($this->contents) . '"'; + + } + + /** + * Returns the mime-type for a file + * + * If null is returned, we'll assume application/octet-stream + */ + public function getContentType() { + + return $this->mimeType; + + } + +} + +?> |