JSchemaChangeset

Extends \JObject

Contains 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) 
inherited
since

11.1

Arguments

$properties

mixedEither 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
inherited deprecated
since

11.1

deprecated

12.3 Classes should provide their own __toString() implementation.

Response

stringThe 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

arrayArray of errors if any.

def

Sets a default value if not alreay assigned

def(string $property, mixed $default = null) : mixed
inherited
since

11.1

Arguments

$property

stringThe name of the property.

$default

mixedThe 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
inherited
since

11.1

see \JObject::getProperties()

Arguments

$property

stringThe name of the property.

$default

mixedThe default value.

Response

mixedThe value of the property.

getError

Get the most recent error message.

getError(integer $i = null, boolean $toString = true) : string
inherited deprecated
since

11.1

see \JError
deprecated

12.3 JError has been deprecated

Arguments

$i

integerOption error index.

$toString

booleanIndicates if JError objects should return their error message.

Response

stringError message

getErrors

Return all errors, if any.

getErrors() : array
inherited deprecated
since

11.1

see \JError
deprecated

12.3 JError has been deprecated

Response

arrayArray of error messages or JErrors.

getInstance

Returns the existing JSchemaChangeset object if it exists.

getInstance(\JDatabase $db, string $folder) : \JSchemaChangeSet
static

Otherwise, it creates a new one.

since

2.5

Arguments

$db

\JDatabaseThe current database object

$folder

stringThe full path to the folder containing the update queries

Response

\JSchemaChangeSetThe (possibly chached) instance of JSchemaChangeSet

getProperties

Returns an associative array of object properties.

getProperties(boolean $public = true) : array
inherited
since

11.1

see \JObject::get()

Arguments

$public

booleanIf 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

stringthe schema version for the database

getStatus

Returns an array of results for this set

getStatus() : array
since

2.5

Response

arrayassociative 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

arraylist of sql update full-path names

getUpdateQueries

Get array of SQL queries

getUpdateQueries(array $sqlfiles) : array
since

2.5

Arguments

$sqlfiles

arrayArray of .sql update filenames.

Response

arrayArray 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
inherited
since

11.1

Arguments

$property

stringThe name of the property.

$value

mixedThe value of the property to set.

Response

mixedPrevious value of the property.

setError

Add an error message.

setError(string $error) : void
inherited deprecated
since

11.1

see \JError
deprecated

12.3 JError has been deprecated

Arguments

$error

stringError message.

setProperties

Set the object properties based on a named array/hash.

setProperties(mixed $properties) : boolean
inherited
since

11.1

see \JObject::set()

Arguments

$properties

mixedEither an associative array or another object.

Response

boolean

toString

Converts the object to a string (the class name).

toString() : string
inherited deprecated
since

11.1

deprecated

12.1 Use magic method __toString()

see \JObject::__toString()

Response

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.

inherited deprecated
since

11.1

see \JError
deprecated

12.3 JError has been deprecated

Type(s)

array