Example #1
0
 /**
  * get result
  *
  * @param string $type
  * @param string $resource
  * @param string $context
  * @return array
  */
 public function result($type, $resource, $context)
 {
     if (!is_object($resource)) {
         return null;
     }
     $result = null;
     switch ($type) {
         case 'next':
             if (!isset($resource->rows)) {
                 $result = (array) $resource;
             } elseif (isset($resource->rows[$this->_iterator])) {
                 $result = (array) $resource->rows[$this->_iterator]->value;
                 $result['id'] = $resource->rows[$this->_iterator]->id;
                 if (isset($resource->rows[$this->_iterator]->key)) {
                     $result['key'] = $resource->rows[$this->_iterator]->key;
                 }
                 $this->_iterator++;
             } else {
                 $this->_iterator = 0;
             }
             if (isset($result['_id'])) {
                 $result['id'] = $result['_id'];
                 unset($result['_id']);
                 if (isset($result['_rev'])) {
                     $result['rev'] = $result['_rev'];
                     unset($result['_rev']);
                 }
             }
             break;
         case 'close':
             unset($resource);
             $result = null;
             break;
         default:
             $result = parent::result($type, $resource, $context);
             break;
     }
     return $result;
 }