protected function checkSourceAndPattern()
    {

        if (!$this->sourcePatterns) {
            throw new LogicException("No source events (or patterns) found, Call from() before calling to()");
        }

        // Bus supports patterns
        if ($this->source instanceof Bus) {
            return;
        }

        foreach ($this->sourcePatterns as $pattern) {
            if ($this->isPattern($pattern)) {
                throw new LogicException("Source has to be a bus to listen to patterns");
            }
        }
    }