registerAllNamespaces(Zend_Gdata_Media::$namespaces); parent::__construct($element); } /** * Retrieves a DOMElement which corresponds to this element and all * child properties. This is used to build an entry back into a DOM * and eventually XML text for sending to the server upon updates, or * for application storage/persistence. * * @param DOMDocument $doc The DOMDocument used to construct DOMElements * @return DOMElement The DOMElement representing this element and all * child properties. */ public function getDOM($doc = null, $majorVersion = 1, $minorVersion = null) { $element = parent::getDOM($doc, $majorVersion, $minorVersion); foreach ($this->_content as $content) { $element->appendChild($content->getDOM($element->ownerDocument)); } foreach ($this->_category as $category) { $element->appendChild($category->getDOM($element->ownerDocument)); } foreach ($this->_credit as $credit) { $element->appendChild($credit->getDOM($element->ownerDocument)); } foreach ($this->_player as $player) { $element->appendChild($player->getDOM($element->ownerDocument)); } foreach ($this->_rating as $rating) { $element->appendChild($rating->getDOM($element->ownerDocument)); } foreach ($this->_restriction as $restriction) { $element->appendChild($restriction->getDOM($element->ownerDocument)); } foreach ($this->_mediaText as $text) { $element->appendChild($text->getDOM($element->ownerDocument)); } foreach ($this->_thumbnail as $thumbnail) { $element->appendChild($thumbnail->getDOM($element->ownerDocument)); } if ($this->_copyright != null) { $element->appendChild( $this->_copyright->getDOM($element->ownerDocument)); } if ($this->_description != null) { $element->appendChild( $this->_description->getDOM($element->ownerDocument)); } foreach ($this->_hash as $hash) { $element->appendChild($hash->getDOM($element->ownerDocument)); } if ($this->_keywords != null) { $element->appendChild( $this->_keywords->getDOM($element->ownerDocument)); } if ($this->_title != null) { $element->appendChild( $this->_title->getDOM($element->ownerDocument)); } return $element; } /** * Creates individual Entry objects of the appropriate type and * stores them in the $_entry array based upon DOM data. * * @param DOMNode $child The DOMNode to process */ protected function takeChildFromDOM($child) { $absoluteNodeName = $child->namespaceURI . ':' . $child->localName; switch ($absoluteNodeName) { case $this->lookupNamespace('media') . ':' . 'content'; $content = new Zend_Gdata_Media_Extension_MediaContent(); $content->transferFromDOM($child); $this->_content[] = $content; break; case $this->lookupNamespace('media') . ':' . 'category'; $category = new Zend_Gdata_Media_Extension_MediaCategory(); $category->transferFromDOM($child); $this->_category[] = $category; break; case $this->lookupNamespace('media') . ':' . 'copyright'; $copyright = new Zend_Gdata_Media_Extension_MediaCopyright(); $copyright->transferFromDOM($child); $this->_copyright = $copyright; break; case $this->lookupNamespace('media') . ':' . 'credit'; $credit = new Zend_Gdata_Media_Extension_MediaCredit(); $credit->transferFromDOM($child); $this->_credit[] = $credit; break; case $this->lookupNamespace('media') . ':' . 'description'; $description = new Zend_Gdata_Media_Extension_MediaDescription(); $description->transferFromDOM($child); $this->_description = $description; break; case $this->lookupNamespace('media') . ':' . 'hash'; $hash = new Zend_Gdata_Media_Extension_MediaHash(); $hash->transferFromDOM($child); $this->_hash[] = $hash; break; case $this->lookupNamespace('media') . ':' . 'keywords'; $keywords = new Zend_Gdata_Media_Extension_MediaKeywords(); $keywords->transferFromDOM($child); $this->_keywords = $keywords; break; case $this->lookupNamespace('media') . ':' . 'player'; $player = new Zend_Gdata_Media_Extension_MediaPlayer(); $player->transferFromDOM($child); $this->_player[] = $player; break; case $this->lookupNamespace('media') . ':' . 'rating'; $rating = new Zend_Gdata_Media_Extension_MediaRating(); $rating->transferFromDOM($child); $this->_rating[] = $rating; break; case $this->lookupNamespace('media') . ':' . 'restriction'; $restriction = new Zend_Gdata_Media_Extension_MediaRestriction(); $restriction->transferFromDOM($child); $this->_restriction[] = $restriction; break; case $this->lookupNamespace('media') . ':' . 'text'; $text = new Zend_Gdata_Media_Extension_MediaText(); $text->transferFromDOM($child); $this->_mediaText[] = $text; break; case $this->lookupNamespace('media') . ':' . 'thumbnail'; $thumbnail = new Zend_Gdata_Media_Extension_MediaThumbnail(); $thumbnail->transferFromDOM($child); $this->_thumbnail[] = $thumbnail; break; case $this->lookupNamespace('media') . ':' . 'title'; $title = new Zend_Gdata_Media_Extension_MediaTitle(); $title->transferFromDOM($child); $this->_title = $title; break; default: parent::takeChildFromDOM($child); break; } } /** * @return array */ public function getContent() { return $this->_content; } /** * @param array $value * @return Zend_Gdata_Media_MediaGroup Provides a fluent interface */ public function setContent($value) { $this->_content = $value; return $this; } /** * @return array */ public function getCategory() { return $this->_category; } /** * @param array $value * @return Zend_Gdata_Media_Extension_MediaGroup */ public function setCategory($value) { $this->_category = $value; return $this; } /** * @return Zend_Gdata_Media_Extension_MediaCopyright */ public function getCopyright() { return $this->_copyright; } /** * @param Zend_Gdata_Media_Extension_MediaCopyright $value * @return Zend_Gdata_Media_Extension_MediaGroup */ public function setCopyright($value) { $this->_copyright = $value; return $this; } /** * @return array */ public function getCredit() { return $this->_credit; } /** * @param array $value * @return Zend_Gdata_Media_Extension_MediaGroup */ public function setCredit($value) { $this->_credit = $value; return $this; } /** * @return Zend_Gdata_Media_Extension_MediaTitle */ public function getTitle() { return $this->_title; } /** * @param Zend_Gdata_Media_Extension_MediaTitle $value * @return Zend_Gdata_Media_Extension_MediaGroup */ public function setTitle($value) { $this->_title = $value; return $this; } /** * @return Zend_Gdata_Media_Extension_MediaDescription */ public function getDescription() { return $this->_description; } /** * @param Zend_Gdata_Media_Extension_MediaDescription $value * @return Zend_Gdata_Media_Extension_MediaGroup */ public function setDescription($value) { $this->_description = $value; return $this; } /** * @return array */ public function getHash() { return $this->_hash; } /** * @param array $value * @return Zend_Gdata_Media_Extension_MediaGroup */ public function setHash($value) { $this->_hash = $value; return $this; } /** * @return Zend_Gdata_Media_Extension_MediaKeywords */ public function getKeywords() { return $this->_keywords; } /** * @param array $value * @return Zend_Gdata_Media_Extension_MediaGroup Provides a fluent interface */ public function setKeywords($value) { $this->_keywords = $value; return $this; } /** * @return array */ public function getPlayer() { return $this->_player; } /** * @param array * @return Zend_Gdata_Media_Extension_MediaGroup */ public function setPlayer($value) { $this->_player = $value; return $this; } /** * @return array */ public function getRating() { return $this->_rating; } /** * @param array * @return Zend_Gdata_Media_Extension_MediaGroup */ public function setRating($value) { $this->_rating = $value; return $this; } /** * @return array */ public function getRestriction() { return $this->_restriction; } /** * @param array * @return Zend_Gdata_Media_Extension_MediaGroup */ public function setRestriction($value) { $this->_restriction = $value; return $this; } /** * @return array */ public function getThumbnail() { return $this->_thumbnail; } /** * @param array * @return Zend_Gdata_Media_Extension_MediaGroup */ public function setThumbnail($value) { $this->_thumbnail = $value; return $this; } /** * @return array */ public function getMediaText() { return $this->_mediaText; } /** * @param array * @return Zend_Gdata_Media_Extension_MediaGroup */ public function setMediaText($value) { $this->_mediaText = $value; return $this; } }