SchemaShell Class Info:

Class Declaration:

class SchemaShell extends Shell

File name:
cake/console/libs/schema.php
Description:

Schema is a command-line database management utility for automating programmer chores.

Class Inheritance

Shell Object

Properties:

Show/Hide parent properties
  • alias string

    An alias for the shell

  • args array

    Contains arguments parsed from the command line.

  • className string

    The class name of the shell that was invoked.

  • command string

    The command called if public methods are available.

  • DbConfig DATABASE_CONFIG

    Holds the DATABASE_CONFIG object for the app. Null if database.php could not be found, or the app does not exist.

  • Dispatch ShellDispatcher

    An instance of the ShellDispatcher object that loaded this script

  • interactive boolean

    If true, the script will ask for permission to perform actions.

  • name string

    The name of the shell in camelized.

  • params array

    Contains command switches parsed from the command line.

  • shell string

    The file name of the shell that was invoked.

  • taskNames array

    Contains the loaded tasks

  • tasks array

    Contains tasks to load and instantiate

  • uses array

    Contains models to load and instantiate

cakeError

top

Used to report user friendly errors. If there is a file app/error.php or app/app_error.php this file will be loaded error.php is the AppError class it should extend ErrorHandler class.

Parameters:
  • string $method required

    Method to be called in the error class (AppError or ErrorHandler classes)

  • array $messages optional array ( )

    Message that is to be displayed by the error class

Method defined in:
cake/libs/object.php on line 187
Return

error message

Access

public

_checkArgs

top

Will check the number args matches otherwise throw an error

Parameters:
  • integer $expectedNum required

    Expected number of paramters

  • string $command optional NULL

    Command

Method defined in:
cake/console/libs/shell.php on line 437
Access

protected

_checkUnitTest

top

Action to create a Unit Test

Method defined in:
cake/console/libs/shell.php on line 511
Return

boolean Success

Access

protected

__construct

top

Constructs this Shell instance.

Parameters:
  • $dispatch required

Method defined in:
cake/console/libs/shell.php on line 138

_controllerName

top

Creates the proper controller plural name for the specified controller class name

Parameters:
  • string $name required

    Controller class name

Method defined in:
cake/console/libs/shell.php on line 557
Return

string Controller plural name

Access

protected

_controllerPath

top

Creates the proper controller path for the specified controller class name

Parameters:
  • string $name required

    Controller class name

Method defined in:
cake/console/libs/shell.php on line 546
Return

string Path to controller

Access

protected

create

top

Run database create commands. Alias for run create.

Method defined in:
cake/console/libs/schema.php on line 255
Return

void

createFile

top

Creates a file at given path

Parameters:
  • string $path required

    Where to put the file.

  • string $contents required

    Content to put in the file.

Method defined in:
cake/console/libs/shell.php on line 458
Return

boolean Success

Access

public

dispatchMethod

top

Calls a method on this object with the given parameters. Provides an OO wrapper for call_user_func_array

Parameters:
  • string $method required

    Name of the method to call

  • array $params optional array ( )

    Parameter list to use when calling $method

Method defined in:
cake/libs/object.php on line 107
Return

mixed Returns the result of the method call

Access

public

dump

top

Dump Schema object to sql file Use the write param to enable and control SQL file output location. Simply using -write will write the sql file to the same dir as the schema file. If -write contains a full path name the file will be saved there. If -write only contains no DS, that will be used as the file name, in the same dir as the schema file.

Method defined in:
cake/console/libs/schema.php on line 210
Access

public

err

top

Outputs a single or multiple error messages to stderr. If no parameters are passed outputs just a newline.

Parameters:
  • mixed $message optional NULL

    A string or a an array of strings to output

  • integer $newlines optional 1

    Number of newlines to append

Method defined in:
cake/console/libs/shell.php on line 383
Access

public

error

top

Displays a formatted error message and exits the application with status code 1

Parameters:
  • string $title required

    Title of the error

  • string $message optional NULL

    An optional error message

Method defined in:
cake/console/libs/shell.php on line 421
Access

public

generate

top

Read database and Write schema object accepts a connection as first arg or path to save as second arg

Method defined in:
cake/console/libs/schema.php on line 133
Access

public

help

top

Displays help contents

Method defined in:
cake/console/libs/schema.php on line 440
Access

public

hr

top

Outputs a series of minus characters to the standard output, acts as a visual separator.

Parameters:
  • integer $newlines optional 0

    Number of newlines to pre- and append

Method defined in:
cake/console/libs/shell.php on line 407
Access

public

in

top

Prompts the user for input, and returns it.

Parameters:
  • string $prompt required

    Prompt text.

  • mixed $options optional NULL

    Array or string of options.

  • string $default optional NULL

    Default input value.

Method defined in:
cake/console/libs/shell.php on line 334
Return

Either the default value, or the user-provided input.

Access

public

initialize

top

Override initialize

Method defined in:
cake/console/libs/schema.php on line 48
Access

public

_loadDbConfig

top

Loads database file and constructs DATABASE_CONFIG class makes $this->DbConfig available to subclasses

Method defined in:
cake/console/libs/shell.php on line 216
Return

bool

Access

protected

_loadModels

top

if var $uses = true Loads AppModel file and constructs AppModel class makes $this->AppModel available to subclasses if var $uses is an array of models will load those models

Method defined in:
cake/console/libs/shell.php on line 235
Return

bool

Access

protected

_loadSchema

top

Prepares the Schema objects for database operations.

Method defined in:
cake/console/libs/schema.php on line 275
Return

void

loadTasks

top

Loads tasks defined in var $tasks

Method defined in:
cake/console/libs/shell.php on line 273
Return

bool

Access

public

log

top

Convience method to write a message to CakeLog. See CakeLog::write() for more information on writing to logs.

Parameters:
  • string $msg required

    Log message

  • integer $type optional 2

    Error type constant. Defined in app/config/core.php.

Method defined in:
cake/libs/object.php on line 148
Return

boolean Success of log write

Access

public

main

top

Override main

Method defined in:
cake/console/libs/schema.php on line 105
Access

public

_modelKey

top

Creates the proper underscored model key for associations

Parameters:
  • string $name required

    Model class name

Method defined in:
cake/console/libs/shell.php on line 579
Return

string Singular model key

Access

protected

_modelName

top

Creates the proper controller camelized name (singularized) for the specified name

Parameters:
  • string $name required

    Name

Method defined in:
cake/console/libs/shell.php on line 568
Return

string Camelized and singularized controller name

Access

protected

_modelNameFromKey

top

Creates the proper model name from a foreign key

Parameters:
  • string $key required

    Foreign key

Method defined in:
cake/console/libs/shell.php on line 590
Return

string Model name

Access

protected

nl

top

Returns a single or multiple linefeeds sequences.

Parameters:
  • integer $multiplier optional 1

    Number of times the linefeed sequence should be repeated

Method defined in:
cake/console/libs/shell.php on line 397
Access

public

Return

string

Object

top

A hack to support __construct() on PHP 4 Hint: descendant classes have no PHP4 class_name() constructors, so this constructor gets called first and calls the top-layer __construct() which (if present) should call parent::__construct()

Method defined in:
cake/libs/object.php on line 43
Return

Object

out

top

Outputs a single or multiple messages to stdout. If no parameters are passed outputs just a newline.

Parameters:
  • mixed $message optional NULL

    A string or a an array of strings to output

  • integer $newlines optional 1

    Number of newlines to append

Method defined in:
cake/console/libs/shell.php on line 368
Return

integer Returns the number of bytes returned from writing to stdout.

Access

public

_persist

top

Checks for a persistent class file, if found file is opened and true returned If file is not found a file is created and false returned If used in other locations of the model you should choose a unique name for the persistent file There are many uses for this method, see manual for examples

Parameters:
  • string $name required

    name of the class to persist

  • $return required

  • string $object required

    the object to persist

  • $type optional NULL

Method defined in:
cake/libs/object.php on line 218
Return

boolean Success

Access

protected

Todo

add examples to manual

_pluginPath

top

Find the correct path for a plugin. Scans $pluginPaths for the plugin you want.

Parameters:
  • string $pluginName required

    Name of the plugin you want ie. DebugKit

Method defined in:
cake/console/libs/shell.php on line 644
Return

string $path path to the correct plugin.

_pluralHumanName

top

Creates the plural human name used in views

Parameters:
  • string $name required

    Controller name

Method defined in:
cake/console/libs/shell.php on line 634
Return

string Plural human name

Access

protected

_pluralName

top

Creates the plural name for views

Parameters:
  • string $name required

    Name to use

Method defined in:
cake/console/libs/shell.php on line 612
Return

string Plural name for views

Access

protected

requestAction

top

Calls a controller's method from any location. Can be used to connect controllers together or tie plugins into a main application. requestAction can be used to return rendered views or fetch the return value from controller actions.

Parameters:
  • mixed $url required

    String or array-based url.

  • array $extra optional array ( )

    if array includes the key "return" it sets the AutoRender to true.

Method defined in:
cake/libs/object.php on line 80
Return

mixed Boolean true or false on success/failure, or contents of rendered action if 'return' is set in $extra.

Access

public

_savePersistent

top

You should choose a unique name for the persistent file

There are many uses for this method, see manual for examples

Parameters:
  • string $name required

    name used for object to cache

  • object $object required

    the object to persist

Method defined in:
cake/libs/object.php on line 247
Return

boolean true on save, throws error if file can not be created

Access

protected

_set

top

Allows setting of multiple properties of the object in a single line of code. Will only set properties that are part of a class declaration.

Parameters:
  • array $properties optional array ( )

    An associative array containing properties and corresponding values.

Method defined in:
cake/libs/object.php on line 166
Return

void

Access

protected

shortPath

top

Makes absolute file path easier to read

Parameters:
  • string $file required

    Absolute file path

Method defined in:
cake/console/libs/shell.php on line 533
Return

sting short path

Access

public

_singularHumanName

top

Creates the singular human name used in views

Parameters:
  • string $name required

    Controller name

Method defined in:
cake/console/libs/shell.php on line 623
Return

string Singular human name

Access

protected

_singularName

top

creates the singular name for use in views.

Parameters:
  • string $name required

Method defined in:
cake/console/libs/shell.php on line 601
Return

string $name

Access

protected

startup

top

Override startup

Method defined in:
cake/console/libs/schema.php on line 59
Access

public

_stop

top

Stop execution of the current script. Wraps exit() making testing easier.

Parameters:
  • $status optional 0

Method defined in:
cake/libs/object.php on line 135
Return

void

Access

public

toString

top

Object-to-string conversion. Each class can override this method as necessary.

Method defined in:
cake/libs/object.php on line 64
Return

string The name of this class

Access

public

update

top

Run database create commands. Alias for run create.

Method defined in:
cake/console/libs/schema.php on line 265
Return

void

view

top

Read and output contents of schema object path to read as second arg

Method defined in:
cake/console/libs/schema.php on line 115
Access

public

_welcome

top

Displays a header for the shell

Method defined in:
cake/console/libs/shell.php on line 199
Access

protected