Ejemplo n.º 1
0
 /**
  * Creates individual Entry objects of the appropriate type and
  * stores them as members of this entry 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('gphoto') . ':' . 'access':
             $access = new Extension\Access();
             $access->transferFromDOM($child);
             $this->_gphotoAccess = $access;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'location':
             $location = new Extension\Location();
             $location->transferFromDOM($child);
             $this->_gphotoLocation = $location;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'name':
             $name = new Extension\Name();
             $name->transferFromDOM($child);
             $this->_gphotoName = $name;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'numphotos':
             $numPhotos = new Extension\NumPhotos();
             $numPhotos->transferFromDOM($child);
             $this->_gphotoNumPhotos = $numPhotos;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'commentCount':
             $commentCount = new Extension\CommentCount();
             $commentCount->transferFromDOM($child);
             $this->_gphotoCommentCount = $commentCount;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'commentingEnabled':
             $commentingEnabled = new Extension\CommentingEnabled();
             $commentingEnabled->transferFromDOM($child);
             $this->_gphotoCommentingEnabled = $commentingEnabled;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'id':
             $id = new Extension\Id();
             $id->transferFromDOM($child);
             $this->_gphotoId = $id;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'user':
             $user = new Extension\User();
             $user->transferFromDOM($child);
             $this->_gphotoUser = $user;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'timestamp':
             $timestamp = new Extension\Timestamp();
             $timestamp->transferFromDOM($child);
             $this->_gphotoTimestamp = $timestamp;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'nickname':
             $nickname = new Extension\Nickname();
             $nickname->transferFromDOM($child);
             $this->_gphotoNickname = $nickname;
             break;
         case $this->lookupNamespace('georss') . ':' . 'where':
             $geoRssWhere = new \ZendGData\Geo\Extension\GeoRssWhere();
             $geoRssWhere->transferFromDOM($child);
             $this->_geoRssWhere = $geoRssWhere;
             break;
         case $this->lookupNamespace('media') . ':' . 'group':
             $mediaGroup = new \ZendGData\Media\Extension\MediaGroup();
             $mediaGroup->transferFromDOM($child);
             $this->_mediaGroup = $mediaGroup;
             break;
         default:
             parent::takeChildFromDOM($child);
             break;
     }
 }
Ejemplo n.º 2
0
 protected function takeChildFromDOM($child)
 {
     $absoluteNodeName = $child->namespaceURI . ':' . $child->localName;
     switch ($absoluteNodeName) {
         case $this->lookupNamespace('gphoto') . ':' . 'id':
             $id = new Extension\Id();
             $id->transferFromDOM($child);
             $this->_gphotoId = $id;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'version':
             $version = new Extension\Version();
             $version->transferFromDOM($child);
             $this->_gphotoVersion = $version;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'albumid':
             $albumid = new Extension\AlbumId();
             $albumid->transferFromDOM($child);
             $this->_gphotoAlbumId = $albumid;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'width':
             $width = new Extension\Width();
             $width->transferFromDOM($child);
             $this->_gphotoWidth = $width;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'height':
             $height = new Extension\Height();
             $height->transferFromDOM($child);
             $this->_gphotoHeight = $height;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'size':
             $size = new Extension\Size();
             $size->transferFromDOM($child);
             $this->_gphotoSize = $size;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'client':
             $client = new Extension\Client();
             $client->transferFromDOM($child);
             $this->_gphotoClient = $client;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'checksum':
             $checksum = new Extension\Checksum();
             $checksum->transferFromDOM($child);
             $this->_gphotoChecksum = $checksum;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'timestamp':
             $timestamp = new Extension\Timestamp();
             $timestamp->transferFromDOM($child);
             $this->_gphotoTimestamp = $timestamp;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'commentingEnabled':
             $commentingEnabled = new Extension\CommentingEnabled();
             $commentingEnabled->transferFromDOM($child);
             $this->_gphotoCommentingEnabled = $commentingEnabled;
             break;
         case $this->lookupNamespace('gphoto') . ':' . 'commentCount':
             $commentCount = new Extension\CommentCount();
             $commentCount->transferFromDOM($child);
             $this->_gphotoCommentCount = $commentCount;
             break;
         case $this->lookupNamespace('media') . ':' . 'group':
             $mediaGroup = new \ZendGData\Media\Extension\MediaGroup();
             $mediaGroup->transferFromDOM($child);
             $this->_mediaGroup = $mediaGroup;
             break;
         case $this->lookupNamespace('atom') . ':' . 'entry':
             $entryClassName = $this->_entryClassName;
             $tmpEntry = new \ZendGData\App\Entry($child);
             $categories = $tmpEntry->getCategory();
             foreach ($categories as $category) {
                 if ($category->scheme == Photos::KIND_PATH && $this->_entryKindClassMapping[$category->term] != "") {
                     $entryClassName = $this->_entryKindClassMapping[$category->term];
                     break;
                 } else {
                     throw new \ZendGData\App\Exception('Entry is missing kind declaration.');
                 }
             }
             $newEntry = new $entryClassName($child);
             $newEntry->setService($this->getService());
             $this->_entry[] = $newEntry;
             break;
         default:
             parent::takeChildFromDOM($child);
             break;
     }
 }