Class ShellDispatcher

Shell dispatcher handles dispatching cli commands.

Package: Cake\Console
Copyright: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
License: MIT License
Location: Cake/Console/ShellDispatcher.php

Properties summary

  • $args public
    array
    Contains arguments parsed from the command line.
  • $params public
    array
    Contains command switches parsed from the command line.

Method Summary

  • __construct() public
    Constructor
  • _bootstrap() protected
    Initializes the environment and loads the CakePHP core.
  • _getShell() protected
    Get shell to use, either plugin shell or application shell
  • _initConstants() protected
    Defines core configuration.
  • _initEnvironment() protected
    Defines current working environment.
  • _parsePaths() protected
    Parses out the paths from from the argv
  • _stop() protected
    Stop execution of the current script
  • dispatch() public
    Dispatches a CLI request
  • help() public
    Shows console help. Performs an internal dispatch to the CommandList Shell
  • parseParams() public
    Parses command line options and extracts the directory paths from $params
  • run() public static
    Run the dispatcher
  • Set the error/exception handlers for the console based on the Error.consoleHandler, and Exception.consoleHandler values if they are set. If they are not set, the default ConsoleErrorHandler will be used.

  • shiftArgs() public
    Removes first argument and shifts other arguments up

Method Detail

__construct()source public

__construct( array $args array() , boolean $bootstrap true )

Constructor

The execution of the script is stopped after dispatching the request with a status code of either 0 or 1 according to the result of the dispatch.

Parameters

array $args optional array()
the argv from PHP
boolean $bootstrap optional true
Should the environment be bootstrapped.

_bootstrap()source protected

_bootstrap( )

Initializes the environment and loads the CakePHP core.

Returns

boolean
Success.

_getShell()source protected

_getShell( string $shell )

Get shell to use, either plugin shell or application shell

All paths in the loaded shell paths are searched.

Parameters

string $shell
Optionally the name of a plugin

Returns

mixed
An object

Throws

MissingShellException
when errors are encountered.

_initConstants()source protected

_initConstants( )

Defines core configuration.

_initEnvironment()source protected

_initEnvironment( )

Defines current working environment.

Throws

CakeException

_parsePaths()source protected

_parsePaths( array $args )

Parses out the paths from from the argv

Parameters

array $args
The argv to parse.

_stop()source protected

_stop( integer|string $status 0 )

Stop execution of the current script

Parameters

integer|string $status optional 0
see http://php.net/exit for values

dispatch()source public

dispatch( )

Dispatches a CLI request

Returns

boolean

Throws

MissingShellMethodException

help()source public

help( )

Shows console help. Performs an internal dispatch to the CommandList Shell

parseParams()source public

parseParams( array $args )

Parses command line options and extracts the directory paths from $params

Parameters

array $args
Parameters to parse

run()source public static

run( array $argv )

Run the dispatcher

Parameters

array $argv
The argv from PHP

setErrorHandlers()source public

setErrorHandlers( )

Set the error/exception handlers for the console based on the Error.consoleHandler, and Exception.consoleHandler values if they are set. If they are not set, the default ConsoleErrorHandler will be used.

shiftArgs()source public

shiftArgs( )

Removes first argument and shifts other arguments up

Returns

mixed
Null if there are no arguments otherwise the shifted argument

Properties detail

$argssource

public array

Contains arguments parsed from the command line.

array()

$paramssource

public array

Contains command switches parsed from the command line.

array()

© 2005–2016 The Cake Software Foundation, Inc.
Licensed under the MIT License.
CakePHP is a registered trademark of Cake Software Foundation, Inc.
We are not endorsed by or affiliated with CakePHP.
http://api.cakephp.org/2.8/class-ShellDispatcher.html