MOON
Server: Apache
System: Linux nserver.cafsindia.com 4.18.0-553.104.1.lve.el8.x86_64 #1 SMP Tue Feb 10 20:07:30 UTC 2026 x86_64
User: cafsindia (1002)
PHP: 8.2.30
Disabled: NONE
Upload Files
File: //home/cafsindia/www/wp-content/plugins/google-site-kit/third-party/react/promise/src/Deferred.php
<?php

namespace Google\Site_Kit_Dependencies\React\Promise;

class Deferred implements \Google\Site_Kit_Dependencies\React\Promise\PromisorInterface
{
    private $promise;
    private $resolveCallback;
    private $rejectCallback;
    private $notifyCallback;
    private $canceller;
    public function __construct(callable $canceller = null)
    {
        $this->canceller = $canceller;
    }
    public function promise()
    {
        if (null === $this->promise) {
            $this->promise = new \Google\Site_Kit_Dependencies\React\Promise\Promise(function ($resolve, $reject, $notify) {
                $this->resolveCallback = $resolve;
                $this->rejectCallback = $reject;
                $this->notifyCallback = $notify;
            }, $this->canceller);
            $this->canceller = null;
        }
        return $this->promise;
    }
    public function resolve($value = null)
    {
        $this->promise();
        \call_user_func($this->resolveCallback, $value);
    }
    public function reject($reason = null)
    {
        $this->promise();
        \call_user_func($this->rejectCallback, $reason);
    }
    /**
     * @deprecated 2.6.0 Progress support is deprecated and should not be used anymore.
     * @param mixed $update
     */
    public function notify($update = null)
    {
        $this->promise();
        \call_user_func($this->notifyCallback, $update);
    }
    /**
     * @deprecated 2.2.0
     * @see Deferred::notify()
     */
    public function progress($update = null)
    {
        $this->notify($update);
    }
}