Parser of config for LudoDBObject classes.
Instances of this class are created automatically by LudoDB.
Methods
Constructs new parser.
__construct(\LudoDBObject $obj, array $config)
Returns true when LudoDBModel can be populated/constructed by this column.
canBePopulatedBy($column) : bool
Parameters
$column
Returns
bool
Returns true if user can read value of given column.
canReadFrom($name) : mixed
This is for the getValues and read methods of a LudoDBModel. You
will get access to column values internally using $this->getValue($columnName);
Parameters
$name
Returns
mixed
Returns true if user can write to given column.
canWriteTo($name) : mixed
This is for the "save" and "setValues" methods of a LudoDBModel. You can
always call $this->setValue($name, $value) internally in your LudoDBModel classes.
Parameters
$name
Returns
mixed
Return name of external class for column.
externalClassNameFor($column) : null
Parameters
$column
Returns
null
Return foreign key for a column if exists.
foreignKeyFor($column) : null
Parameters
$column
Returns
null
Return config of a column
getColumn($column) : array | null
Parameters
$column
Returns
array
null
Return name of column by "set" or "get" method.
getColumnByMethod($methodName) : null | string
Parameters
$methodName
Returns
null
string
Return array of columns from config.
getColumns() : array
Return columns to select from joined tables prefixed by their table names.
getColumnsToSelectFromJoins() : array
Return columns to validate
getColumnsToValidate() : array
Return config
getConfig() : array | null
Return constructor params.
getConstructorParams() : array | null
Get default data for database table.
getDefaultData() : array | null
Return default value of a column.
getDefaultValue($column) : null
Parameters
$column
Returns
null
Return default values of all columns.
getDefaultValues() : array | null
Return file location of this class.
getFileLocation() : string
Return "get" property of a column in config, i.e.
getGetMethod($column) : null | string
Parameters
$column
Returns
null
string
Return name of id field.
getIdField() : string
Return indexed columns from config.
getIndexes() : null
Return internal column name, i.e.
getInternalColName($column) : mixed
key in column config. alias name will be translated to internal names.
Parameters
$column
Returns
mixed
Return array of names of joined columns prefixed by their table names.
getJoinsForSQL() : array
Returns ludoJS config for database columns and static columns.
getLudoJSConfig() : array
Return name of my columns prefixed by tableName + .
getMyColumnsForSQL() : array
Return orderBy property from config.
getOrderBy() : null
Return path to JSON file for default data (name is ClassName.data.json).
getPathToJsonConfigDefaultData() : string
Return public column name.
getPublicColumnName($name) : mixed
If "alias" is defined in config, that
Parameters
$name
Returns
mixed
Return "set" property of a column in config, i.e.
getSetMethod($column) : null
Parameters
$column
Returns
null
Return static columns
getStaticColumns() : array | null
Return value of static column.
getStaticValue($column) : mixed
Parameters
$column
Returns
mixed
Return array of values for static columns.
getStaticValues() : array
Name of column is the key in the returned array.
Returns
array
Return table name for LudoDB
getTableName() : mixed
Return array of table names for joined columns.
getTableNamesFromJoins() : array
Returns references to other tables as array,
example array(
array('table' => 'city', 'column' => 'zip'),
array('table' => 'country', 'column' => 'id')
)
getTableReferences() : array
Return true if any columns are defined in config.
hasColumns() : bool
Returns true if config has static columns.
hasStaticColumns() : bool
Returns true if given column is from external LudoDBObject
isExternalColumn($name) : mixed
Parameters
$name
Returns
mixed
Returns true if auto increment of id is specified in config.
isIdAutoIncremented() : bool
Returns true if given column is a static column, i.e.
isStaticColumn($column) : bool
column not defined in database which should have a static value
defined in config.
Parameters
$column
Returns
bool
Return a config property by key.
getProperty($key) : null
Parameters
$key
Returns
null
Return a column property from config, example: "db", "references", "alias"
getColumnProperty($name, $property) : null
Parameters
$name
$property
Returns
null
Return config from JSON file as array.
getConfigFromFile() : array
Return db definition of a column, example: "int auto_increment not null primary key"
getDbDefinition($column) : mixed
Parameters
$column
Returns
mixed
Return a LudoDBObject instance this LudoDBObject object extends.
getExtends() : \LudoDBObject
(Only when this class extends another LudoDBObject).
Returns
Return config property from external class referenced in config of the LudoDBObject of this class.
getExternalClassProperty($column, $property) : null
Parameters
$column
$property
Returns
null
Return column name for given set or get method from mapping cache (fast lookup).
getFromMappingCache($methodName) : null
Parameters
$methodName
Returns
null
Return array of joined tables
getJoins() : null | array
Return LudoJS config of these columns
getLudoJSOf(array $columns) : array
Parameters
$columns
array
Returns
array
Return config of this LudoDBObject with config of parent LudoDBObject.
getMergedConfigs($config1, $config2) : array
Parameters
$config1
$config2
Returns
array
Return path to JSON config file.
getPathToJSONConfig() : string
Return input config validated.
getValidConfig($config) : array
Parameters
$config
Returns
array
Return true if config for given column is defined in config.
hasColumn($columnName) : bool
Parameters
$columnName
Returns
bool
Returns true if you have given access (read or write) to given column.
hasColumnAccess($name, $access) : mixed
Parameters
$name
$access
Returns
mixed
Save column alias to cache.
mapColumnAliases()
Parse config.
parseConfig(array $config)
Save mapping between set and get methods and column names in internal cache for fast lookup.
saveInMappingCache($methodName, $col) : mixed
Parameters
$methodName
$col
Returns
mixed
Properties
$columnAccessCache : array
$columnMappingCache : array
$customConstructorParams : array
$extensionClasses : array
$validationColumns : array