private function _extendedValidation()
    {
        Validator::extend(
            'classExist', function ($attribute, $value, $parameters, $validator) {
                if (empty($value)) {
                    return true;
                }
                return class_exists($value);
            }
        );
        Validator::extend(
            'methodExist', function ($attribute, $value, $parameters, $validator) {
                if (!empty(Request::input('class'))) {
                    return method_exists(Request::input('class'), $value);
                }
                return true;
            }
        );

        Validator::replacer(
            'classExist',
            function ($message, $attribute, $rule, $parameters) {
                return "Class does not exist";
            }
        );
        Validator::replacer(
            'methodExist',
            function ($message, $attribute, $rule, $parameters) {
                return
                    "Method in "
                    . Request::input('class')
                    . " class does not exist.";
            }
        );
    }