summaryrefslogtreecommitdiffstats
path: root/3rdparty/Sabre/DAV/SimpleFile.php
diff options
context:
space:
mode:
authorRobin Appelman <icewind1991@gmail.com>2011-09-29 14:28:57 +0200
committerRobin Appelman <icewind1991@gmail.com>2011-09-29 14:28:57 +0200
commit2086bc4be77ba64337b721cec1cac544c1c58452 (patch)
tree1ce50e6854664b8e8dcf2b741551cd417de88fdd /3rdparty/Sabre/DAV/SimpleFile.php
parentfcc6d61fe195e090da33f213312d3d8bec8c1c71 (diff)
downloadnextcloud-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.php120
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;
+
+ }
+
+}
+
+?>