public function commit()
    {
        // First we validate if every property has a handler
        foreach ($this->mutations as $propertyName => $value) {
            if (!isset($this->result[$propertyName])) {
                $this->failed = true;
                $this->result[$propertyName] = 403;
            }
        }

        foreach ($this->propertyUpdateCallbacks as $callbackInfo) {
            if ($this->failed) {
                break;
            }
            if (is_string($callbackInfo[0])) {
                $this->doCallbackSingleProp($callbackInfo[0], $callbackInfo[1]);
            } else {
                $this->doCallbackMultiProp($callbackInfo[0], $callbackInfo[1]);
            }
        }

        /*
         * If anywhere in this operation updating a property failed, we must
         * update all other properties accordingly.
         */
        if ($this->failed) {
            foreach ($this->result as $propertyName => $status) {
                if (202 === $status) {
                    // Failed dependency
                    $this->result[$propertyName] = 424;
                }
            }
        }

        return !$this->failed;
    }
public function commit()
    {
        // First we validate if every property has a handler
        foreach ($this->mutations as $propertyName => $value) {
            if (!isset($this->result[$propertyName])) {
                $this->failed = true;
                $this->result[$propertyName] = 403;
            }
        }

        foreach ($this->propertyUpdateCallbacks as $callbackInfo) {
            if ($this->failed) {
                break;
            }
            if (is_string($callbackInfo[0])) {
                $this->doCallbackSingleProp($callbackInfo[0], $callbackInfo[1]);
            } else {
                $this->doCallbackMultiProp($callbackInfo[0], $callbackInfo[1]);
            }
        }

        /*
         * If anywhere in this operation updating a property failed, we must
         * update all other properties accordingly.
         */
        if ($this->failed) {
            foreach ($this->result as $propertyName => $status) {
                if (202 === $status) {
                    // Failed dependency
                    $this->result[$propertyName] = 424;
                }
            }
        }

        return !$this->failed;
    }
public function commit ( ) { // First we validate if every property has a handler foreach ( $ this -> mutations as $ propertyName => $ value ) { if ( ! isset ( $ this -> result [ $ propertyName ] ) ) { $ this -> failed = true ; $ this -> result [ $ propertyName ] = 403 ; } } foreach ( $ this -> propertyUpdateCallbacks as $ callbackInfo ) { if ( $ this -> failed ) { break ; } if ( is_string ( $ callbackInfo [ 0 ] ) ) { $ this -> doCallbackSingleProp ( $ callbackInfo [ 0 ] , $ callbackInfo [ 1 ] ) ; } else { $ this -> doCallbackMultiProp ( $ callbackInfo [ 0 ] , $ callbackInfo [ 1 ] ) ; } } /*
         * If anywhere in this operation updating a property failed, we must
         * update all other properties accordingly.
         */ if ( $ this -> failed ) { foreach ( $ this -> result as $ propertyName => $ status ) { if ( 202 === $ status ) { // Failed dependency $ this -> result [ $ propertyName ] = 424 ; } } } return ! $ this -> failed ; }
Performs the actual update, and calls all callbacks.

This method returns true or false depending on if the operation was
successful.

@return bool
Performs the actual update and calls all callbacks .