public function handler()
    {
        if ($this->allow_public_access) {
            Container::resolve_method($this, 'handle');
            return;
        }

        if (empty($this->restrict_to_roles) || \in_array(User_Utils::get_user_role()->name, $this->restrict_to_roles)) {
            Container::resolve_method($this, 'handle');
            return;
        }

        \wp_send_json_error('You do not have sufficient permissions to perform this action', 403);
    }