Fire/Sql/Collection.php
private function _updateObjectIndexes($object)
    {
        //delete all indexed references to this object
        $update = Statement::get(
            'DELETE_OBJECT_INDEX',
            [
                '@collection' => $this->_name,
                '@id' => $this->_connector->quote($object->__id)
            ]
        );
        //parse each property of the object an attempt to index each value
        foreach (get_object_vars($object) as $property => $value) {
            if (
                $this->_isPropertyIndexable($property)
                && $this->_isValueIndexable($value)
            ) {
                $insert = Statement::get(
                    'INSERT_OBJECT_INDEX',
                    [
                        '@collection' => $this->_name,
                        '@type' => $this->_connector->quote('value'),
                        '@prop' => $this->_connector->quote($property),
                        '@val' => $this->_connector->quote($value),
                        '@id' => $this->_connector->quote($object->__id),
                        '@origin' => $this->_connector->quote($object->__origin)
                    ]
                );
                $update .= $insert;
            }
        }
        //add the object registry index
        $insert = Statement::get(
            'INSERT_OBJECT_INDEX',
            [
                '@collection' => $this->_name,
                '@type' => $this->_connector->quote('registry'),
                '@prop' => $this->_connector->quote(''),
                '@val' => $this->_connector->quote(''),
                '@id' => $this->_connector->quote($object->__id),
                '@origin' => $this->_connector->quote($object->__origin)
            ]
        );
        $update .= $insert;
        //execute all the sql to update indexes.
        $this->_connector->exec($update);
    }
private function _updateObjectIndexes($object)
    {
        //delete all indexed references to this object
        $update = Statement::get(
            'DELETE_OBJECT_INDEX',
            [
                '@collection' => $this->_name,
                '@id' => $this->_connector->quote($object->__id)
            ]
        );
        //parse each property of the object an attempt to index each value
        foreach (get_object_vars($object) as $property => $value) {
            if (
                $this->_isPropertyIndexable($property)
                && $this->_isValueIndexable($value)
            ) {
                $insert = Statement::get(
                    'INSERT_OBJECT_INDEX',
                    [
                        '@collection' => $this->_name,
                        '@type' => $this->_connector->quote('value'),
                        '@prop' => $this->_connector->quote($property),
                        '@val' => $this->_connector->quote($value),
                        '@id' => $this->_connector->quote($object->__id),
                        '@origin' => $this->_connector->quote($object->__origin)
                    ]
                );
                $update .= $insert;
            }
        }
        //add the object registry index
        $insert = Statement::get(
            'INSERT_OBJECT_INDEX',
            [
                '@collection' => $this->_name,
                '@type' => $this->_connector->quote('registry'),
                '@prop' => $this->_connector->quote(''),
                '@val' => $this->_connector->quote(''),
                '@id' => $this->_connector->quote($object->__id),
                '@origin' => $this->_connector->quote($object->__origin)
            ]
        );
        $update .= $insert;
        //execute all the sql to update indexes.
        $this->_connector->exec($update);
    }
private function _updateObjectIndexes ( $ object ) { //delete all indexed references to this object $ update = Statement :: get ( 'DELETE_OBJECT_INDEX' , [ '@collection' => $ this -> _name , '@id' => $ this -> _connector -> quote ( $ object -> __id ) ] ) ; //parse each property of the object an attempt to index each value foreach ( get_object_vars ( $ object ) as $ property => $ value ) { if ( $ this -> _isPropertyIndexable ( $ property ) && $ this -> _isValueIndexable ( $ value ) ) { $ insert = Statement :: get ( 'INSERT_OBJECT_INDEX' , [ '@collection' => $ this -> _name , '@type' => $ this -> _connector -> quote ( 'value' ) , '@prop' => $ this -> _connector -> quote ( $ property ) , '@val' => $ this -> _connector -> quote ( $ value ) , '@id' => $ this -> _connector -> quote ( $ object -> __id ) , '@origin' => $ this -> _connector -> quote ( $ object -> __origin ) ] ) ; $ update .= $ insert ; } } //add the object registry index $ insert = Statement :: get ( 'INSERT_OBJECT_INDEX' , [ '@collection' => $ this -> _name , '@type' => $ this -> _connector -> quote ( 'registry' ) , '@prop' => $ this -> _connector -> quote ( '' ) , '@val' => $ this -> _connector -> quote ( '' ) , '@id' => $ this -> _connector -> quote ( $ object -> __id ) , '@origin' => $ this -> _connector -> quote ( $ object -> __origin ) ] ) ; $ update .= $ insert ; //execute all the sql to update indexes. $ this -> _connector -> exec ( $ update ) ; }
Updates an object's "value" index.
@param object $object
@return void
Updates an object s value index .