*/ abstract public function getStorageClass(); /** * Check if object is valid for use * * @return MissingDependency[] Unsatisfied dependencies */ public function checkDependencies() { $ret = []; $result = call_user_func([$this->getStorageClass(), 'checkDependencies']); if ($result !== true) { if (!is_array($result)) { $result = [$result]; } foreach ($result as $key => $value) { if (!($value instanceof MissingDependency)) { $module = null; $message = null; if (is_numeric($key)) { $module = $value; } else { $module = $key; $message = $value; } $value = new MissingDependency($module); $value->setMessage($message); } $ret[] = $value; } } return $ret; } }