Class ExtractTask

Language string extractor

Object
Extended by Shell
Extended by AppShell
Extended by ExtractTask
Package: Cake\Console\Command\Task
Copyright: Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
License: MIT License
Located at Cake/Console/Command/Task/ExtractTask.php

Method Detail

_addTranslationsource protected

_addTranslation( string $category , string $domain , string $msgid , array $details array() )

Add a translation to the internal translations property

Takes care of duplicate translations

Parameters

string $category
The category
string $domain
The domain
string $msgid
The message string
array $details optional array()
The file and line references

_buildFilessource protected

_buildFiles( )

Build the translate template file contents out of obtained strings

_extractsource protected

_extract( )

Extract text

_extractPluginValidationMessagessource protected

_extractPluginValidationMessages( string $plugin null )

Extract validation messages from application or plugin models

Parameters

string $plugin optional null
Plugin name or null to process application models

_extractTokenssource protected

_extractTokens( )

Extract tokens out of all files to be processed

_extractValidationMessagessource protected

_extractValidationMessages( )

Looks for models in the application and extracts the validation messages to be added to the translation map

_formatStringsource protected

_formatString( string $string )

Format a string to be added as a translatable string

Parameters

string $string
String to format

Returns

string
Formatted string

_getPathssource protected

_getPaths( )

Method to interact with the User and get path selections.

_getStringssource protected

_getStrings( integer $position , integer $target )

Get the strings from the position forward

Parameters

integer $position
$position Actual position on tokens array
integer $target
Number of strings to extract

Returns

array
Strings extracted

_isExtractingAppsource protected

_isExtractingApp( )

Returns whether this execution is meant to extract string only from directories in folder represented by the APP constant, i.e. this task is extracting strings from same application.

Returns

boolean
bool

_isPathUsablesource protected

_isPathUsable( string $path )

Checks whether or not a given path is usable for writing.

Parameters

string $path
Path to folder

Returns

boolean
true if it exists and is writable, false otherwise

_markerErrorsource protected

_markerError( string $file , integer $line , string $marker , integer $count )

Indicate an invalid marker on a processed file

Parameters

string $file
File where invalid marker resides
integer $line
Line number
string $marker
Marker found
integer $count
Count

_parsesource protected

_parse( string $functionName , array $map )

Parse tokens

Parameters

string $functionName
Function name that indicates translatable string (e.g: '__')
array $map
Array containing what variables it will find (e.g: category, domain, singular, plural)

_processValidationRulessource protected

_processValidationRules( string $field , array $rules , string $file , string $domain , string $category 'LC_MESSAGES' )

Process a validation rule for a field and looks for a message to be added to the translation map

Parameters

string $field
the name of the field that is being processed
array $rules
the set of validation rules for the field
string $file
the file name where this validation rule was found
string $domain
default domain to bind the validations to
string $category optional 'LC_MESSAGES'
the translation category

_searchFilessource protected

_searchFiles( )

Search files that may contain translatable strings

_storesource protected

_store( string $category , string $domain , string $header , string $sentence )

Prepare a file to be stored

Parameters

string $category
The category
string $domain
The domain
string $header
The header content.
string $sentence
The sentence to store.

_writeFilessource protected

_writeFiles( )

Write the files that need to be stored

_writeHeadersource protected

_writeHeader( )

Build the translation template header

Returns

string
Translation template header

executesource public

execute( )

Execution method always used for tasks

getOptionParsersource public

getOptionParser( )

Gets the option parser instance and configures it.

Returns

ConsoleOptionParser
ConsoleOptionParser

Overrides

Shell::getOptionParser()

Methods inherited from Shell

__constructsource public

__construct( ConsoleOutput $stdout null , ConsoleOutput $stderr null , ConsoleInput $stdin null )

Constructs this Shell instance.

Parameters

ConsoleOutput $stdout optional null
A ConsoleOutput object for stdout.
ConsoleOutput $stderr optional null
A ConsoleOutput object for stderr.
ConsoleInput $stdin optional null
A ConsoleInput object for stdin.

Link

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell

Overrides

Object::__construct()

__getsource public

__get( string $name )

Overload get for lazy building of tasks

Parameters

string $name
The property name to access.

Returns

Shell
Object of Task

__issetsource public

__isset( string $name )

Lazy loads models using the loadModel() method if declared in $uses

Parameters

string $name
The name of the model to look for.

_checkUnitTestsource protected

_checkUnitTest( )

Action to create a Unit Test

Returns

boolean
Success

_controllerNamesource protected

_controllerName( string $name )

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

Parameters

string $name
Controller class name

Returns

string
Controller plural name

_controllerPathsource protected

_controllerPath( string $name )

Creates the proper controller path for the specified controller class name

Parameters

string $name
Controller class name

Returns

string
Path to controller

_displayHelpsource protected

_displayHelp( string $command )

Display the help in the correct format

Parameters

string $command
The command to get help for.

_getInputsource protected

_getInput( string $prompt , string|array $options , string $default )

Prompts the user for input, and returns it.

Parameters

string $prompt
Prompt text.
string|array $options
Array or string of options.
string $default
Default input value.

Returns

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

_loadModelssource protected

_loadModels( )

If $uses is an array load each of the models in the array

Returns

boolean
bool

_modelKeysource protected

_modelKey( string $name )

Creates the proper underscored model key for associations

Parameters

string $name
Model class name

Returns

string
Singular model key

_modelNamesource protected

_modelName( string $name )

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

Parameters

string $name
Name

Returns

string
Camelized and singularized model name

_modelNameFromKeysource protected

_modelNameFromKey( string $key )

Creates the proper model name from a foreign key

Parameters

string $key
Foreign key

Returns

string
Model name

_pluginPathsource protected

_pluginPath( string $pluginName )

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

Parameters

string $pluginName
Name of the plugin you want ie. DebugKit

Returns

string
path path to the correct plugin.

_pluralHumanNamesource protected

_pluralHumanName( string $name )

Creates the plural human name used in views

Parameters

string $name
Controller name

Returns

string
Plural human name

_pluralNamesource protected

_pluralName( string $name )

Creates the plural name for views

Parameters

string $name
Name to use

Returns

string
Plural name for views

_singularHumanNamesource protected

_singularHumanName( string $name )

Creates the singular human name used in views

Parameters

string $name
Controller name

Returns

string
Singular human name

_singularNamesource protected

_singularName( string $name )

creates the singular name for use in views.

Parameters

string $name
The plural underscored value.

Returns

string
name

_useLoggersource protected

_useLogger( boolean $enable true )

Used to enable or disable logging stream output to stdout and stderr If you don't wish to see in your stdout or stderr everything that is logged through CakeLog, call this function with first param as false

Parameters

boolean $enable optional true
whether to enable CakeLog output or not

_welcomesource protected

_welcome( )

Displays a header for the shell

createFilesource public

createFile( string $path , string $contents )

Creates a file at given path

Parameters

string $path
Where to put the file.
string $contents
Content to put in the file.

Returns

boolean
Success

Link

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::createFile

dispatchShellsource public

dispatchShell( )

Dispatch a command to another Shell. Similar to Object::requestAction() but intended for running shells from other shells.

Usage:

With a string command:

return $this->dispatchShell('schema create DbAcl');

Avoid using this form if you have string arguments, with spaces in them. The dispatched will be invoked incorrectly. Only use this form for simple command dispatching.

With an array command:

return $this->dispatchShell('schema', 'create', 'i18n', '--dry');

Returns

mixed
The return of the other shell.

Link

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::dispatchShell

errsource public

err( string|array $message null , integer $newlines 1 )

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

Parameters

string|array $message optional null
A string or an array of strings to output
integer $newlines optional 1
Number of newlines to append

Link

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::err

errorsource public

error( string $title , string $message null )

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

Parameters

string $title
Title of the error
string $message optional null
An optional error message

Link

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::error

hasMethodsource public

hasMethod( string $name )

Check to see if this shell has a callable method by the given name.

Parameters

string $name
The method name to check.

Returns

boolean
bool

Link

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::hasMethod

hasTasksource public

hasTask( string $task )

Check to see if this shell has a task with the provided name.

Parameters

string $task
The task name to check.

Returns

boolean
Success

Link

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::hasTask

hrsource public

hr( integer $newlines 0 , integer $width 63 )

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
integer $width optional 63
Width of the line, defaults to 63

Link

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::hr

insource public

in( string $prompt , string|array $options null , string $default null )

Prompts the user for input, and returns it.

Parameters

string $prompt
Prompt text.
string|array $options optional null
Array or string of options.
string $default optional null
Default input value.

Returns

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

Link

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::in

initializesource public

initialize( )

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

Link

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::initialize

loadModelsource public

loadModel( string $modelClass null , mixed $id null )

Loads and instantiates models required by this shell.

Parameters

string $modelClass optional null
Name of model class to load
mixed $id optional null
Initial ID the instanced model class should have

Returns

mixed
true when single model found and instance created, error returned if model not found.

Throws

MissingModelException
if the model class cannot be found.

loadTaskssource public

loadTasks( )

Loads tasks defined in public $tasks

Returns

boolean
bool

nlsource public

nl( integer $multiplier 1 )

Returns a single or multiple linefeeds sequences.

Parameters

integer $multiplier optional 1
Number of times the linefeed sequence should be repeated

Returns

string
string

Link

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::nl

outsource public

out( string|array $message null , integer $newlines 1 , integer $level Shell::NORMAL )

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

Output levels

There are 3 built-in output level. Shell::QUIET, Shell::NORMAL, Shell::VERBOSE. The verbose and quiet output levels, map to the verbose and quiet output switches present in most shells. Using Shell::QUIET for a message means it will always display. While using Shell::VERBOSE means it will only display when verbose output is toggled.

Parameters

string|array $message optional null
A string or an array of strings to output
integer $newlines optional 1
Number of newlines to append
integer $level optional Shell::NORMAL
The message's output level, see above.

Returns

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

Link

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::out

overwritesource public

overwrite( array|string $message , integer $newlines 1 , integer $size null )

Overwrite some already output text.

Useful for building progress bars, or when you want to replace text already output to the screen with new text.

Warning You cannot overwrite text that contains newlines.

Parameters

array|string $message
The message to output.
integer $newlines optional 1
Number of newlines to append.
integer $size optional null
The number of bytes to overwrite. Defaults to the length of the last message output.

Returns

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

paramsource public

param( string $name )

Safely access the values in $this->params.

Parameters

string $name
The name of the parameter to get.

Returns

string|boolean|null
Value. Will return null if it doesn't exist.

runCommandsource public

runCommand( string $command , array $argv )

Runs the Shell with the provided argv.

Delegates calls to Tasks and resolves methods inside the class. Commands are looked up with the following order:

  • Method on the shell.
  • Matching task name.
  • main() method.

If a shell implements a main() method, all missing method calls will be sent to main() with the original method name in the argv.

Parameters

string $command
The command name to run on this shell. If this argument is empty, and the shell has a main() method, that will be called instead.
array $argv
Array of arguments to run the shell with. This array should be missing the shell name.

Link

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::runCommand

shortPathsource public

shortPath( string $file )

Makes absolute file path easier to read

Parameters

string $file
Absolute file path

Returns

string
short path

Link

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::shortPath

startupsource public

startup( )

Starts up the Shell and displays the welcome message. Allows for checking and configuring prior to command or main execution

Override this method if you want to remove the welcome information, or otherwise modify the pre-command flow.

Link

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::startup

wrapTextsource public

wrapText( string $text , string|integer|array $options array() )

Wrap a block of text. Allows you to set the width, and indenting on a block of text.

Options

  • width The width to wrap to. Defaults to 72
  • wordWrap Only wrap on words breaks (spaces) Defaults to true.
  • indent Indent the text with the string provided. Defaults to null.

Parameters

string $text
Text the text to format.
string|integer|array $options optional array()
Array of options to use, or an integer to wrap the text to.

Returns

string
Wrapped / indented text

See

CakeText::wrap()

Link

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::wrapText

Methods inherited from Object

_mergeVarssource protected

_mergeVars( array $properties , string $class , boolean $normalize true )

Merges this objects $property with the property in $class' definition. This classes value for the property will be merged on top of $class'

This provides some of the DRY magic CakePHP provides. If you want to shut it off, redefine this method as an empty function.

Parameters

array $properties
The name of the properties to merge.
string $class
The class to merge the property with.
boolean $normalize optional true
Set to true to run the properties through Hash::normalize() before merging.

_setsource protected

_set( array $properties array() )

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.

_stopsource protected

_stop( integer|string $status 0 )

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

Parameters

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

dispatchMethodsource public

dispatchMethod( string $method , array $params array() )

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

Parameters

string $method
Name of the method to call
array $params optional array()
Parameter list to use when calling $method

Returns

mixed
Returns the result of the method call

logsource public

log( string $msg , integer $type LOG_ERR , null|string|array $scope null )

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

Parameters

string $msg
Log message
integer $type optional LOG_ERR
Error type constant. Defined in app/Config/core.php.
null|string|array $scope optional null
The scope(s) a log message is being created in. See CakeLog::config() for more information on logging scopes.

Returns

boolean
Success of log write

requestActionsource public

requestAction( string|array $url , array $extra array() )

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.

Under the hood this method uses Router::reverse() to convert the $url parameter into a string URL. You should use URL formats that are compatible with Router::reverse()

Passing POST and GET data

POST and GET data can be simulated in requestAction. Use $extra['url'] for GET data. The $extra['data'] parameter allows POST data simulation.

Parameters

string|array $url
String or array-based URL. Unlike other URL arrays in CakePHP, this URL will not automatically handle passed and named arguments in the $url parameter.
array $extra optional array()
if array includes the key "return" it sets the AutoRender to true. Can also be used to submit GET/POST data, and named/passed arguments.

Returns

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

toStringsource public

toString( )

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

Returns

string
The name of this class

Constants inherited from Shell

CODE_ERROR, NORMAL, QUIET, VERBOSE

Properties summary

$_excludesource

protected array

An array of directories to exclude.

array()

$_extractCoresource

protected boolean

Holds whether this call should extract the CakePHP Lib messages

false

$_extractValidationsource

protected boolean

Holds whether this call should extract model validation messages

true

$_filesource

protected string

Current file being processed

null

$_filessource

protected array

Files from where to extract

array()

$_mergesource

protected boolean

Merge all domain and category strings into the default.pot file

false

$_outputsource

protected string

Destination path

null

$_pathssource

protected string

Paths to use when looking for strings

array()

$_storagesource

protected string

Contains all content waiting to be write

array()

$_tokenssource

protected array

Extracted tokens

array()

$_translationssource

protected array

Extracted strings indexed by category, domain, msgid and context.

array()

$_validationDomainsource

protected boolean

Holds the validation string domain to use for validation messages when extracting

'default'

Properties inherited from Shell

$OptionParsersource

public ConsoleOptionParser

An instance of ConsoleOptionParser that has been configured for this class.

$Taskssource

public TaskCollection

Task Collection for the command, used to create Tasks.

$_lastWrittensource

protected integer

The number of bytes last written to the output stream used when overwriting the previous message.

$_taskMapsource

protected string

Normalized map of tasks.

array()

$argssource

public array

Contains arguments parsed from the command line.

array()

$commandsource

public string

The command (method/task) that is being run.

$interactivesource

public boolean

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

true

$modelClasssource

public string

This shell's primary model class name, the first model in the $uses property

null

$namesource

public string

The name of the shell in camelized.

null

$paramssource

public array

Contains command switches parsed from the command line.

array()

$pluginsource

public string

The name of the plugin the shell belongs to. Is automatically set by ShellDispatcher when a shell is constructed.

null

$stderrsource

public ConsoleOutput

stderr object.

$stdinsource

public ConsoleInput

stdin object

$stdoutsource

public ConsoleOutput

stdout object.

$taskNamessource

public array

Contains the loaded tasks

array()

$taskssource

public array

Contains tasks to load and instantiate

Link

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::$tasks
array()

$usessource

public array

Contains models to load and instantiate

Link

http://book.cakephp.org/2.0/en/console-and-shells.html#Shell::$uses
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.7/class-ExtractTask.html