import v1.1.0_beta1 | 2009-08-21

This commit is contained in:
2019-07-17 22:16:19 +02:00
parent 2c1152f0d3
commit 8dee6b1a10
2306 changed files with 251360 additions and 23428 deletions

View File

@ -15,10 +15,16 @@
*
* @category Zend
* @package Zend_Gdata
* @subpackage Gdata
* @copyright Copyright (c) 2005-2008 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
/**
* @see Zend_Gdata
*/
require_once 'Zend/Gdata.php';
/**
* @see Zend_Gdata_App_Feed
*/
@ -49,6 +55,7 @@ require_once 'Zend/Gdata/Extension/OpenSearchItemsPerPage.php';
*
* @category Zend
* @package Zend_Gdata
* @subpackage Gdata
* @copyright Copyright (c) 2005-2008 Zend Technologies USA Inc. (http://www.zend.com)
* @license http://framework.zend.com/license/new-bsd New BSD License
*/
@ -65,29 +72,27 @@ class Zend_Gdata_Feed extends Zend_Gdata_App_Feed
/**
* The openSearch:totalResults element
*
* @var string
* @var Zend_Gdata_Extension_OpenSearchTotalResults|null
*/
protected $_totalResults = null;
/**
* The openSearch:startIndex element
*
* @var string
* @var Zend_Gdata_Extension_OpenSearchStartIndex|null
*/
protected $_startIndex = null;
/**
* The openSearch:itemsPerPage element
*
* @var string
* @var Zend_Gdata_Extension_OpenSearchItemsPerPage|null
*/
protected $_itemsPerPage = null;
public function __construct($element = null)
{
foreach (Zend_Gdata::$namespaces as $nsPrefix => $nsUri) {
$this->registerNamespace($nsPrefix, $nsUri);
}
$this->registerAllNamespaces(Zend_Gdata::$namespaces);
parent::__construct($element);
}
@ -103,6 +108,17 @@ class Zend_Gdata_Feed extends Zend_Gdata_App_Feed
if ($this->_itemsPerPage != null) {
$element->appendChild($this->_itemsPerPage->getDOM($element->ownerDocument));
}
// ETags are special. We only support them in protocol >= 2.X.
// This will be duplicated by the HTTP ETag header.
if ($majorVersion >= 2) {
if ($this->_etag != null) {
$element->setAttributeNS($this->lookupNamespace('gd'),
'gd:etag',
$this->_etag);
}
}
return $element;
}
@ -137,29 +153,96 @@ class Zend_Gdata_Feed extends Zend_Gdata_App_Feed
}
}
/**
* Given a DOMNode representing an attribute, tries to map the data into
* instance members. If no mapping is defined, the name and value are
* stored in an array.
*
* @param DOMNode $attribute The DOMNode attribute needed to be handled
*/
protected function takeAttributeFromDOM($attribute)
{
switch ($attribute->localName) {
case 'etag':
// ETags are special, since they can be conveyed by either the
// HTTP ETag header or as an XML attribute.
$etag = $attribute->nodeValue;
if ($this->_etag === null) {
$this->_etag = $etag;
}
elseif ($this->_etag != $etag) {
require_once('Zend/Gdata/App/IOException.php');
throw new Zend_Gdata_App_IOException("ETag mismatch");
}
break;
default:
parent::takeAttributeFromDOM($attribute);
break;
}
}
/**
* Set the value of the totalResults property.
*
* @param Zend_Gdata_Extension_OpenSearchTotalResults|null $value The
* value of the totalResults property. Use null to unset.
* @return Zend_Gdata_Feed Provides a fluent interface.
*/
function setTotalResults($value) {
$this->_totalResults = $value;
return $this;
}
/**
* Get the value of the totalResults property.
*
* @return Zend_Gdata_Extension_OpenSearchTotalResults|null The value of
* the totalResults property, or null if unset.
*/
function getTotalResults() {
return $this->_totalResults;
}
/**
* Set the start index property for feed paging.
*
* @param Zend_Gdata_Extension_OpenSearchStartIndex|null $value The value
* for the startIndex property. Use null to unset.
* @return Zend_Gdata_Feed Provides a fluent interface.
*/
function setStartIndex($value) {
$this->_startIndex = $value;
return $this;
}
/**
* Get the value of the startIndex property.
*
* @return Zend_Gdata_Extension_OpenSearchStartIndex|null The value of the
* startIndex property, or null if unset.
*/
function getStartIndex() {
return $this->_startIndex;
}
/**
* Set the itemsPerPage property.
*
* @param Zend_Gdata_Extension_OpenSearchItemsPerPage|null $value The
* value for the itemsPerPage property. Use nul to unset.
* @return Zend_Gdata_Feed Provides a fluent interface.
*/
function setItemsPerPage($value) {
$this->_itemsPerPage = $value;
return $this;
}
/**
* Get the value of the itemsPerPage property.
*
* @return Zend_Gdata_Extension_OpenSearchItemsPerPage|null The value of
* the itemsPerPage property, or null if unset.
*/
function getItemsPerPage() {
return $this->_itemsPerPage;
}