JSchemaChangeset
Extends \JObjectContains a set of JSchemaChange objects for a particular instance of Joomla.
Each of these objects contains a DDL query that should have been run against the database when this database was created or updated. This enables the Installation Manager to check that the current database schema is up to date.
package |
CMS.Library |
---|---|
subpackage |
Schema |
since |
2.5 |
Methods
__construct
Class constructor, overridden in descendant classes.
__construct(mixed $properties = null)
since |
11.1 |
---|
Arguments
- $properties
mixed
Either and associative array or another object to set the initial properties of the object.
__toString
Magic method to convert the object to a string gracefully.
__toString() : string
since |
11.1 |
---|---|
deprecated |
12.3 Classes should provide their own __toString() implementation. |
Response
string
The classname.
check
Checks the database and returns an array of any errors found.
check() : array
Note these are not database errors but rather situations where the current schema is not up to date.
since |
2.5 |
---|
Response
array
Array of errors if any.
def
Sets a default value if not alreay assigned
def(string $property, mixed $default = null) : mixed
since |
11.1 |
---|
Arguments
- $property
string
The name of the property.- $default
mixed
The default value.
Response
mixed
fix
Runs the update query to apply the change to the database
fix() : void
since |
2.5 |
---|
get
Returns a property of the object or the default value if the property is not set.
get(string $property, mixed $default = null) : mixed
since |
11.1 |
---|---|
see | \JObject::getProperties() |
Arguments
- $property
string
The name of the property.- $default
mixed
The default value.
Response
mixed
The value of the property.
getError
Get the most recent error message.
getError(integer $i = null, boolean $toString = true) : string
since |
11.1 |
---|---|
see | \JError |
deprecated |
12.3 JError has been deprecated |
Arguments
- $i
integer
Option error index.- $toString
boolean
Indicates if JError objects should return their error message.
Response
string
Error message
getErrors
Return all errors, if any.
getErrors() : array
since |
11.1 |
---|---|
see | \JError |
deprecated |
12.3 JError has been deprecated |
Response
array
Array of error messages or JErrors.
getInstance
Returns the existing JSchemaChangeset object if it exists.
getInstance(\JDatabase $db, string $folder) : \JSchemaChangeSet
Otherwise, it creates a new one.
since |
2.5 |
---|
Arguments
- $db
\JDatabase
The current database object- $folder
string
The full path to the folder containing the update queries
Response
\JSchemaChangeSet
The (possibly chached) instance of JSchemaChangeSet
getProperties
Returns an associative array of object properties.
getProperties(boolean $public = true) : array
since |
11.1 |
---|---|
see | \JObject::get() |
Arguments
- $public
boolean
If true, returns only the public properties.
Response
array
getSchema
Gets the current database schema, based on the highest version number.
getSchema() : string
Note that the .sql files are named based on the version and date, so the file name of the last file should match the database schema version in the #__schemas table.
since |
2.5 |
---|
Response
string
the schema version for the database
getStatus
Returns an array of results for this set
getStatus() : array
since |
2.5 |
---|
Response
array
associative array of changeitems grouped by unchecked, ok, error, and skipped
getUpdateFiles
Get list of SQL update files for this database
getUpdateFiles() : array
since |
2.5 |
---|
Response
array
list of sql update full-path names
getUpdateQueries
Get array of SQL queries
getUpdateQueries(array $sqlfiles) : array
since |
2.5 |
---|
Arguments
- $sqlfiles
array
Array of .sql update filenames.
Response
array
Array of stdClass objects where:
file=filename,
update_query = text of SQL update query
set
Modifies a property of the object, creating it if it does not already exist.
set(string $property, mixed $value = null) : mixed
since |
11.1 |
---|
Arguments
- $property
string
The name of the property.- $value
mixed
The value of the property to set.
Response
mixed
Previous value of the property.
setError
Add an error message.
setError(string $error) : void
since |
11.1 |
---|---|
see | \JError |
deprecated |
12.3 JError has been deprecated |
Arguments
- $error
string
Error message.
setProperties
Set the object properties based on a named array/hash.
setProperties(mixed $properties) : boolean
since |
11.1 |
---|---|
see | \JObject::set() |
Arguments
- $properties
mixed
Either an associative array or another object.
Response
boolean
toString
Converts the object to a string (the class name).
toString() : string
Properties
changeItems
Array of JSchemaChangeItem objects
Type(s)
string
db
JDatabase object
Type(s)
string
folder
Folder where SQL update files will be found
Type(s)
string
_errors
An array of error messages or Exception objects.