lib/components/dataInterface/DataSource.php
public function run()
    {
        $task = $this->task;
        $task->start();
        if (!$this->isReady()) {
            $task->end();

            return false;
        }
        $action = $this->action;
        $this->settings = $action->config;

        if (in_array($this->settings['direction'], ['to_local', 'both'])) {
            // start foreign
            foreach ($this->foreignDataItems as $dataItem) {
                $dataItem->handler->handle($task);
                $this->clearCaches();
            }
        }

        if (in_array($this->settings['direction'], ['to_foreign', 'both'])) {
            // start local
            foreach ($this->localDataItems as $dataItem) {
                $dataItem->handler->handle($task);
                $this->clearCaches();
            }
        }
        $task->end();

        return true;
    }
public function run()
    {
        $task = $this->task;
        $task->start();
        if (!$this->isReady()) {
            $task->end();

            return false;
        }
        $action = $this->action;
        $this->settings = $action->config;

        if (in_array($this->settings['direction'], ['to_local', 'both'])) {
            // start foreign
            foreach ($this->foreignDataItems as $dataItem) {
                $dataItem->handler->handle($task);
                $this->clearCaches();
            }
        }

        if (in_array($this->settings['direction'], ['to_foreign', 'both'])) {
            // start local
            foreach ($this->localDataItems as $dataItem) {
                $dataItem->handler->handle($task);
                $this->clearCaches();
            }
        }
        $task->end();

        return true;
    }
[[@doctodo method_description:run]].

@return [[@doctodo return_type:run]] [[@doctodo return_description:run]]