PHP Class LazyRecord\Schema\SchemaUtils

Datei anzeigen Open project: corneltek/lazyrecord Class Usage Examples

Public Methods

Method Description
buildSchemaMap ( array $schemas ) * static public function find_schema_parents(array $classes) { $parents = []; foreach ($classes as $class) { $schema = new $class; // declare schema foreach ($schema->relations as $relKey => $rel ) { if (!isset($rel['foreign_schema'])) { continue; } $foreignClass = ltrim($rel['foreign_schema'],'\\'); $schema = new $foreignClass; if ($rel->type == Relationship::BELONGS_TO) { $parents[$class][] = $foreignClass; } else if ($rel->type == Relationship::HAS_ONE || $rel->type == Relationship::HAS_MANY) { $parents[$foreignClass][] = $class; } } } return $parents; }
expandSchemaClasses ( array $classes ) Get referenced schema classes and put them in order.
filterBuildableSchemas ( array $schemas ) Filter non-dynamic schema declare classes.
findSchemasByArguments ( ConfigLoader $loader, array $args, CLIFramework\Logger $logger = null ) : array Returns schema objects.
findSchemasByConfigLoader ( ConfigLoader $loader, CLIFramework\Logger $logger = null )
findSchemasByPaths ( array $paths = null, CLIFramework\Logger $logger = null )
printSchemaClasses ( array $classes, CLIFramework\Logger $logger = null )

Method Details

buildSchemaMap() public static method

* static public function find_schema_parents(array $classes) { $parents = []; foreach ($classes as $class) { $schema = new $class; // declare schema foreach ($schema->relations as $relKey => $rel ) { if (!isset($rel['foreign_schema'])) { continue; } $foreignClass = ltrim($rel['foreign_schema'],'\\'); $schema = new $foreignClass; if ($rel->type == Relationship::BELONGS_TO) { $parents[$class][] = $foreignClass; } else if ($rel->type == Relationship::HAS_ONE || $rel->type == Relationship::HAS_MANY) { $parents[$foreignClass][] = $class; } } } return $parents; }
public static buildSchemaMap ( array $schemas )
$schemas array

expandSchemaClasses() public static method

Get referenced schema classes and put them in order.
public static expandSchemaClasses ( array $classes )
$classes array

filterBuildableSchemas() public static method

Filter non-dynamic schema declare classes.
public static filterBuildableSchemas ( array $schemas )
$schemas array

findSchemasByArguments() public static method

Returns schema objects.
public static findSchemasByArguments ( ConfigLoader $loader, array $args, CLIFramework\Logger $logger = null ) : array
$loader LazyRecord\ConfigLoader
$args array
$logger CLIFramework\Logger
return array schema objects

findSchemasByConfigLoader() public static method

public static findSchemasByConfigLoader ( ConfigLoader $loader, CLIFramework\Logger $logger = null )
$loader LazyRecord\ConfigLoader
$logger CLIFramework\Logger

findSchemasByPaths() public static method

public static findSchemasByPaths ( array $paths = null, CLIFramework\Logger $logger = null )
$paths array
$logger CLIFramework\Logger

printSchemaClasses() public static method

public static printSchemaClasses ( array $classes, CLIFramework\Logger $logger = null )
$classes array
$logger CLIFramework\Logger