Пример #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('gd') . ':' . 'attendeeStatus':
             $attendeeStatus = new AttendeeStatus();
             $attendeeStatus->transferFromDOM($child);
             $this->_attendeeStatus = $attendeeStatus;
             break;
         case $this->lookupNamespace('gd') . ':' . 'attendeeType':
             $attendeeType = new AttendeeType();
             $attendeeType->transferFromDOM($child);
             $this->_attendeeType = $attendeeType;
             break;
         case $this->lookupNamespace('gd') . ':' . 'entryLink':
             $entryLink = new EntryLink();
             $entryLink->transferFromDOM($child);
             $this->_entryLink = $entryLink;
             break;
         default:
             parent::takeChildFromDOM($child);
             break;
     }
 }
Пример #2
0
 public function testExtensionAttributes() {
     $extensionAttributes = $this->attendeeStatus->extensionAttributes;
     $extensionAttributes['foo1'] = array('name'=>'foo1', 'value'=>'bar');
     $extensionAttributes['foo2'] = array('name'=>'foo2', 'value'=>'rab');
     $this->attendeeStatus->extensionAttributes = $extensionAttributes;
     $this->assertEquals('bar', $this->attendeeStatus->extensionAttributes['foo1']['value']);
     $this->assertEquals('rab', $this->attendeeStatus->extensionAttributes['foo2']['value']);
     $attendeeStatusXml = $this->attendeeStatus->saveXML();
     $newAttendeeStatus = new Extension\AttendeeStatus();
     $newAttendeeStatus->transferFromXML($attendeeStatusXml);
     $this->assertEquals('bar', $newAttendeeStatus->extensionAttributes['foo1']['value']);
     $this->assertEquals('rab', $newAttendeeStatus->extensionAttributes['foo2']['value']);
 }