lithium\data\Model::respondsTo()
Determines if a given method can be called.
Parameters
-
string
$method
Name of the method.
-
boolean
$internal
Provide
true
to perform check from inside the class/object. Whenfalse
checks also for public visibility; defaults tofalse
.
Returns
booleanReturns true
if the method can be called, false
otherwise.
Source
public static function respondsTo($method, $internal = false) {
$message = '`' . __METHOD__ . '()` has been deprecated. ';
$message .= "Use `Model::hasFinder()` instead.";
trigger_error($message, E_USER_DEPRECATED);
$self = static::object();
$methods = static::instanceMethods();
$isFinder = isset($self->_finders[$method]);
preg_match('/^findBy(?P<field>\w+)$|^find(?P<type>\w+)By(?P<fields>\w+)$/', $method, $args);
$staticRepondsTo = $isFinder || $method === 'all' || !!$args;
$instanceRespondsTo = isset($methods[$method]);
return $instanceRespondsTo || $staticRepondsTo || parent::respondsTo($method, $internal);
}