/library/Zend/Feed/Writer/Deleted.php
PHP | 202 lines | 121 code | 18 blank | 63 comment | 22 complexity | 9360d67d6a75559319e05d9e3ea3339c MD5 | raw file
Possible License(s): AGPL-1.0
- f<?php
- /**
- * Zend Framework
- *
- * LICENSE
- *
- * This source file is subject to the new BSD license that is bundled
- * with this package in the file LICENSE.txt.
- * It is also available through the world-wide-web at this URL:
- * http://framework.zend.com/license/new-bsd
- * If you did not receive a copy of the license and are unable to
- * obtain it through the world-wide-web, please send an email
- * to license@zend.com so we can send you a copy immediately.
- *
- * @category Zend
- * @package Zend_Feed_Writer
- * @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- * @license http://framework.zend.com/license/new-bsd New BSD License
- * @version $Id: Deleted.php 24648 2012-02-25 22:06:01Z adamlundrigan $
- */
- require_once 'Zend/Feed/Writer/Feed/FeedAbstract.php';
- /**
- * @category Zend
- * @package Zend_Feed_Writer
- * @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
- * @license http://framework.zend.com/license/new-bsd New BSD License
- */
- class Zend_Feed_Writer_Deleted
- {
- /**
- * Internal array containing all data associated with this entry or item.
- *
- * @var array
- */
- protected $_data = array();
- /**
- * Holds the value "atom" or "rss" depending on the feed type set when
- * when last exported.
- *
- * @var string
- */
- protected $_type = null;
- /**
- * Set the feed character encoding
- *
- * @return string|null
- */
- public function setEncoding($encoding)
- {
- if (empty($encoding) || !is_string($encoding)) {
- require_once 'Zend/Feed/Exception.php';
- throw new Zend_Feed_Exception('Invalid parameter: parameter must be a non-empty string');
- }
- $this->_data['encoding'] = $encoding;
- }
- /**
- * Get the feed character encoding
- *
- * @return string|null
- */
- public function getEncoding()
- {
- if (!array_key_exists('encoding', $this->_data)) {
- return 'UTF-8';
- }
- return $this->_data['encoding'];
- }
- /**
- * Unset a specific data point
- *
- * @param string $name
- */
- public function remove($name)
- {
- if (isset($this->_data[$name])) {
- unset($this->_data[$name]);
- }
- }
- /**
- * Set the current feed type being exported to "rss" or "atom". This allows
- * other objects to gracefully choose whether to execute or not, depending
- * on their appropriateness for the current type, e.g. renderers.
- *
- * @param string $type
- */
- public function setType($type)
- {
- $this->_type = $type;
- }
- /**
- * Retrieve the current or last feed type exported.
- *
- * @return string Value will be "rss" or "atom"
- */
- public function getType()
- {
- return $this->_type;
- }
- public function setReference($reference)
- {
- if (empty($reference) || !is_string($reference)) {
- require_once 'Zend/Feed/Exception.php';
- throw new Zend_Feed_Exception('Invalid parameter: reference must be a non-empty string');
- }
- $this->_data['reference'] = $reference;
- }
- public function getReference()
- {
- if (!array_key_exists('reference', $this->_data)) {
- return null;
- }
- return $this->_data['reference'];
- }
- public function setWhen($date = null)
- {
- $zdate = null;
- if ($date === null) {
- $zdate = new Zend_Date;
- } elseif (ctype_digit((string)$date)) {
- $zdate = new Zend_Date($date, Zend_Date::TIMESTAMP);
- } elseif ($date instanceof Zend_Date) {
- $zdate = $date;
- } else {
- require_once 'Zend/Feed/Exception.php';
- throw new Zend_Feed_Exception('Invalid Zend_Date object or UNIX Timestamp passed as parameter');
- }
- $this->_data['when'] = $zdate;
- }
- public function getWhen()
- {
- if (!array_key_exists('when', $this->_data)) {
- return null;
- }
- return $this->_data['when'];
- }
- public function setBy(array $by)
- {
- $author = array();
- if (!array_key_exists('name', $by)
- || empty($by['name'])
- || !is_string($by['name'])
- ) {
- require_once 'Zend/Feed/Exception.php';
- throw new Zend_Feed_Exception('Invalid parameter: author array must include a "name" key with a non-empty string value');
- }
- $author['name'] = $by['name'];
- if (isset($by['email'])) {
- if (empty($by['email']) || !is_string($by['email'])) {
- require_once 'Zend/Feed/Exception.php';
- throw new Zend_Feed_Exception('Invalid parameter: "email" array value must be a non-empty string');
- }
- $author['email'] = $by['email'];
- }
- if (isset($by['uri'])) {
- if (empty($by['uri'])
- || !is_string($by['uri'])
- || !Zend_Uri::check($by['uri'])
- ) {
- require_once 'Zend/Feed/Exception.php';
- throw new Zend_Feed_Exception('Invalid parameter: "uri" array value must be a non-empty string and valid URI/IRI');
- }
- $author['uri'] = $by['uri'];
- }
- $this->_data['by'] = $author;
- }
- public function getBy()
- {
- if (!array_key_exists('by', $this->_data)) {
- return null;
- }
- return $this->_data['by'];
- }
- public function setComment($comment)
- {
- $this->_data['comment'] = $comment;
- }
- public function getComment()
- {
- if (!array_key_exists('comment', $this->_data)) {
- return null;
- }
- return $this->_data['comment'];
- }
- }