Fix undefined Manifest::php_resolve_class() in Type_Ref_Registry
🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -142,7 +142,7 @@ class Type_Ref_Registry
|
||||
$morph_map = [];
|
||||
foreach (static::$map_class_to_id as $class_name => $id) {
|
||||
// Try to resolve the fully qualified class name
|
||||
$fqcn = Manifest::php_resolve_class($class_name);
|
||||
$fqcn = static::_resolve_fqcn($class_name);
|
||||
if ($fqcn) {
|
||||
$morph_map[$class_name] = $fqcn;
|
||||
}
|
||||
@@ -253,7 +253,7 @@ class Type_Ref_Registry
|
||||
RsxCache::set(static::CACHE_KEY, static::$map_class_to_id, RsxCache::HOUR);
|
||||
|
||||
// Update Laravel morph map
|
||||
$fqcn = Manifest::php_resolve_class($class_name);
|
||||
$fqcn = static::_resolve_fqcn($class_name);
|
||||
if ($fqcn) {
|
||||
Relation::morphMap([$class_name => $fqcn]);
|
||||
}
|
||||
@@ -270,7 +270,7 @@ class Type_Ref_Registry
|
||||
protected static function _validate_class(string $class_name): void
|
||||
{
|
||||
// Resolve the fully qualified class name
|
||||
$fqcn = Manifest::php_resolve_class($class_name);
|
||||
$fqcn = static::_resolve_fqcn($class_name);
|
||||
|
||||
if (!$fqcn) {
|
||||
throw new RuntimeException(
|
||||
@@ -296,7 +296,7 @@ class Type_Ref_Registry
|
||||
*/
|
||||
protected static function _get_table_name(string $class_name): ?string
|
||||
{
|
||||
$fqcn = Manifest::php_resolve_class($class_name);
|
||||
$fqcn = static::_resolve_fqcn($class_name);
|
||||
if (!$fqcn) {
|
||||
return null;
|
||||
}
|
||||
@@ -309,4 +309,21 @@ class Type_Ref_Registry
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Resolve a simple class name to its fully qualified class name
|
||||
*
|
||||
* @param string $class_name Simple class name (e.g., "Contact_Model")
|
||||
* @return string|null FQCN or null if not found in manifest
|
||||
*/
|
||||
protected static function _resolve_fqcn(string $class_name): ?string
|
||||
{
|
||||
try {
|
||||
$metadata = Manifest::php_get_metadata_by_class($class_name);
|
||||
return $metadata['fqcn'] ?? null;
|
||||
} catch (\RuntimeException $e) {
|
||||
// Class not found in manifest
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user