/** * @param Trouble $trouble */ public final function support(Trouble $trouble) { if ($this->resolve($trouble)) { $this->done($trouble); } elseif (!is_null($this->next)) { $this->next->support($trouble); } else { $this->fail($trouble); } }