Shell Class Info:

Class Declaration:

class Shell extends Object

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

Base class for command-line utilities for automating programmer chores.

Class Inheritance

Object

Package
cake
Subpackage
cake.cake.console.libs

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

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

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

help

top

Outputs usage text on the standard output. Implement it in subclasses.

Method defined in:
cake/console/libs/shell.php on line 496
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

Initializes the Shell acts as constructor for subclasses allows configuration of tasks prior to shell execution

Method defined in:
cake/console/libs/shell.php on line 179
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

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

_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

Starts up the Shell allows for checking and configuring prior to command or main execution can be overriden in subclasses

Method defined in:
cake/console/libs/shell.php on line 190
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

_welcome

top

Displays a header for the shell

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

protected