public function authenticate($method, $arguments)
    {
        $handlers = $this->filterHandlers($method, $arguments);

        if (count($handlers) > 0) {
            foreach ($handlers as $handler) {
                $isAuthenticated = $handler->authenticate($method, $arguments);

                if ($isAuthenticated) {
                    return;
                }
            }

            throw new InvalidAuth();
        } else {
            throw new MissingAuth();
        }
    }