protected function takeChildFromDOM($child) { $absoluteNodeName = $child->namespaceURI . ':' . $child->localName; switch ($absoluteNodeName) { case $this->lookupNamespace('gd') . ':' . 'where': $where = new Zend_Gdata_Extension_Where(); $where->transferFromDOM($child); $this->_where[] = $where; break; case $this->lookupNamespace('gd') . ':' . 'when': $when = new Zend_Gdata_Extension_When(); $when->transferFromDOM($child); $this->_when[] = $when; break; case $this->lookupNamespace('gd') . ':' . 'who': $who = new Zend_Gdata_Extension_Who(); $who->transferFromDOM($child); $this->_who[] = $who; break; case $this->lookupNamespace('gd') . ':' . 'recurrence': $recurrence = new Zend_Gdata_Extension_Recurrence(); $recurrence->transferFromDOM($child); $this->_recurrence = $recurrence; break; case $this->lookupNamespace('gd') . ':' . 'eventStatus': $eventStatus = new Zend_Gdata_Extension_EventStatus(); $eventStatus->transferFromDOM($child); $this->_eventStatus = $eventStatus; break; case $this->lookupNamespace('gd') . ':' . 'comments': $comments = new Zend_Gdata_Extension_Comments(); $comments->transferFromDOM($child); $this->_comments = $comments; break; case $this->lookupNamespace('gd') . ':' . 'transparency': $transparency = new Zend_Gdata_Extension_Transparency(); $transparency->transferFromDOM($child); $this->_transparency = $transparency; break; case $this->lookupNamespace('gd') . ':' . 'visibility': $visiblity = new Zend_Gdata_Extension_Visibility(); $visiblity->transferFromDOM($child); $this->_visibility = $visiblity; break; case $this->lookupNamespace('gd') . ':' . 'recurrenceException': require_once 'vendor/Zend/Gdata/Extension/RecurrenceException.php'; $recurrenceException = new Zend_Gdata_Extension_RecurrenceException(); $recurrenceException->transferFromDOM($child); $this->_recurrenceException[] = $recurrenceException; break; case $this->lookupNamespace('gd') . ':' . 'originalEvent': $originalEvent = new Zend_Gdata_Extension_OriginalEvent(); $originalEvent->transferFromDOM($child); $this->_originalEvent = $originalEvent; break; case $this->lookupNamespace('gd') . ':' . 'extendedProperty': $extProp = new Zend_Gdata_Extension_ExtendedProperty(); $extProp->transferFromDOM($child); $this->_extendedProperty[] = $extProp; break; case $this->lookupNamespace('gd') . ':' . 'entryLink': $entryLink = new Zend_Gdata_Extension_EntryLink(); $entryLink->transferFromDOM($child); $this->_entryLink = $entryLink; break; default: parent::takeChildFromDOM($child); break; } }
public function testExtensionAttributes() { $extensionAttributes = $this->visibility->extensionAttributes; $extensionAttributes['foo1'] = array('name' => 'foo1', 'value' => 'bar'); $extensionAttributes['foo2'] = array('name' => 'foo2', 'value' => 'rab'); $this->visibility->extensionAttributes = $extensionAttributes; $this->assertEquals('bar', $this->visibility->extensionAttributes['foo1']['value']); $this->assertEquals('rab', $this->visibility->extensionAttributes['foo2']['value']); $visibilityXml = $this->visibility->saveXML(); $newVisibility = new Zend_Gdata_Extension_Visibility(); $newVisibility->transferFromXML($visibilityXml); $this->assertEquals('bar', $newVisibility->extensionAttributes['foo1']['value']); $this->assertEquals('rab', $newVisibility->extensionAttributes['foo2']['value']); }