Spec-Zone.ru › CakePHP 3.3

Класс OrmCacheShell

ORM кэш оболочка.

Предоставляет интерфейс командной строки для функций кеширования метаданных ORM. Этот инструмент предназначен для использования скриптами развертывания, чтобы предотвратить эффект «грозового стада» на кэше метаданных при развертывании новых версий приложения или при необходимости миграций, требующих обновленных метаданных.

Cake\Console\Shell использует Cake\ORM\Locator\LocatorAwareTrait , Cake\Log\LogTrait , Cake\Utility\MergeVariablesTrait , Cake\Datasource\ModelAwareTrait
Расширенный Cake\Shell\OrmCacheShell
Пространство имён: Cake\Shell
Расположение: Shell/OrmCacheShell.php

Наследованные константы

  • CODE_ERROR, CODE_SUCCESS, NORMAL, QUIET, VERBOSE

Наследованные свойства

  • OptionParser, Tasks, _io, _taskMap, args, command, interactive, name, params, plugin, taskNames, tasks _tableLocator _modelFactories, _modelType, modelClass

Краткое описание методов

  • _getSchema() protected
    Вспомогательный метод для получения коллекции схем.
  • build() public
    Построение метаданных.
  • clear() public
    Очистка метаданных.
  • getOptionParser() public
    Получение анализатора опций для этой оболочки.

Подробное описание методов

_getSchema()source protected

_getSchema( )

Вспомогательный метод для получения коллекции схем.

Возвращает

false|Cake\Database\Schema\Collection

build()source public

build( string|null $name null )

Построение метаданных.

Параметры

string|null $name опционально null
Имя таблицы, для которой нужно построить данные кэша.

Возвращает

boolean

clear()source public

clear( string|null $name null )

Очистка метаданных.

Параметры

string|null $name опционально null
Имя таблицы, для которой нужно очистить данные кэша.

Возвращает

boolean

Переопределяет

Cake\Console\Shell::clear()

getOptionParser()source public

getOptionParser( )

Получение анализатора опций для этой оболочки.

Возвращает

Cake\Console\ConsoleOptionParser

Переопределяет

Cake\Console\Shell::getOptionParser()

Методы, унаследованные от Cake\Console\Shell

__construct()source public

__construct( Cake\Console\ConsoleIo $io null )

Конструирует экземпляр этой оболочки.

Параметры

Cake\Console\ConsoleIo $io опционально null
Экземпляр io.

Ссылка

http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell

__debugInfo()source public

__debugInfo( )

Возвращает массив, который можно использовать для описания внутреннего состояния этого объекта.

Возвращает

array

__get()source public

__get( string $name )

Перегрузка get для ленивой сборки задач

Параметры

string $name
Задача, которую нужно получить.

Возвращает

Cake\Console\Shell
Объект задачи

_displayHelp()source protected

_displayHelp( string $command )

Отображение справки в правильном формате

Параметры

string $command
Команда, для которой нужна справка.

Возвращает

integer|boolean
Количество байтов, возвращённых из вывода в stdout.

_setOutputLevel()source protected

_setOutputLevel( )

Устанавливает уровень вывода на основе параметров.

Это перенастраивает уровень вывода для out() и настроенное протоколирование stdout/stderr.

_stop()source protected

_stop( integer|string $status self::CODE_SUCCESS )

Останавливает выполнение текущего скрипта. Выбрасывает StopException, чтобы попытаться остановить выполнение.

Параметры

integer|string $status опционально self::CODE_SUCCESS
см. http://php.net/exit для значений

Исключения

Cake\Console\Exception\StopException

_welcome()source protected

_welcome( )

Отображает заголовок для оболочки

abort()source public

abort( string $message , integer $exitCode self::CODE_ERROR )

Отображает отформатированное сообщение об ошибке и завершает приложение с кодом состояния 1

Параметры

string $message
Сообщение об ошибке
integer $exitCode опционально self::CODE_ERROR
Код выхода для задачи оболочки.

Исключения

Cake\Console\Exception\StopException

Ссылка

http://book.cakephp.org/3.0/ru/console-and-shells.html#styling-output

createFile()source public

createFile( string $path , string $contents )

Создаёт файл по заданному пути

Параметры

string $path
Куда поместить файл.
string $contents
Содержимое файла.

Возвращает

boolean
Успех

Ссылка

http://book.cakephp.org/3.0/ru/console-and-shells.html#creating-files

dispatchShell()source public

dispatchShell( )

Передача команды другой оболочке. Аналогично Object::requestAction(), но предназначено для запуска оболочек из других оболочек.

Использование:

С строковой командой:

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

Избегайте использования этой формы, если у вас есть строковые аргументы с пробелами в них. Вызванная оболочка будет запущена неправильно. Используйте эту форму только для простого запуска оболочек.

С массивом команд:

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

С массивом, содержащим две пары ключ/значение: - command может принимать либо строку, либо массив. Представляет команду для запуска - extra может принимать массив дополнительных параметров, которые нужно передать диспетчеру. Эти параметры будут доступны в свойстве param вызываемой оболочки Shell

return $this->dispatchShell([ 'command' => 'schema create DbAcl', 'extra' => ['param' => 'value'] ]);

или

return $this->dispatchShell([ 'command' => ['schema', 'create', 'DbAcl'], 'extra' => ['param' => 'value'] ]);

Возвращает

integer
Код выхода команды cli. 0 - успех.

Ссылка

http://book.cakephp.org/3.0/ru/console-and-shells.html#invoking-other-shells-from-your-shell
END_OF_DOCUMENT_MARKER

err()source public

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

Выводит одно или несколько сообщений об ошибках в stderr. Если параметры не переданы, выводится только новая строка.

Параметры

string|array|null $message необязательно null
Строка или массив строк для вывода
integer $newlines необязательно 1
Количество добавляемых новых строк

Возвращает

integer|boolean
Количество байтов, возвращённых из записи в stderr.

error()source public

error( string $title , string|null $message null , integer $exitCode self::CODE_ERROR )

Отображает отформатированное сообщение об ошибке и завершает приложение с кодом состояния 1

Устарело

С версии 3.2.0. Используйте Shell::abort() вместо этого.

Параметры

string $title
Заголовок ошибки
string|null $message необязательно null
Необязательное сообщение об ошибке
integer $exitCode необязательно self::CODE_ERROR
Код выхода для задачи оболочки.

Возвращает

integer
Код ошибки

Имеет исключение

Cake\Console\Exception\StopException

Ссылка

http://book.cakephp.org/3.0/ru/console-and-shells.html#styling-output

hasMethod()source public

hasMethod( string $name )

Проверяет, есть ли у этой оболочки вызываемый метод с заданным именем.

Параметры

string $name
Имя метода для проверки.

Возвращает

boolean

Ссылка

http://book.cakephp.org/3.0/ru/console-and-shells.html#shell-tasks

hasTask()source public

hasTask( string $task )

Проверяет, есть ли у этой оболочки задача с заданным именем.

Параметры

string $task
Имя задачи для проверки.

Возвращает

boolean
Успех

Ссылка

http://book.cakephp.org/3.0/ru/console-and-shells.html#shell-tasks

helper()source public

helper( string $name , array $settings [] )

Отображение помощника оболочки

Создаёт и отображает вывод для объекта помощника. Если объект помощника ещё не загружен, он загрузится и будет сконструирован.

Параметры

string $name
Имя помощника для отображения
array $settings необязательно []
Данные конфигурации для помощника.

Возвращает

Cake\Console\Helper
Созданный экземпляр помощника.

hr()source public

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

Выводит серию символов минус в стандартный вывод, действует как визуальный разделитель.

Параметры

integer $newlines необязательно 0
Количество новых строк для предварительного и последующего добавления
integer $width необязательно 63
Ширина строки, по умолчанию 63

Ссылка

http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::hr

in()source public

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

Запрашивает у пользователя ввод и возвращает его.

Параметры

string $prompt
Текст запроса.
string|array|null $options необязательно null
Массив или строка опций.
string|null $default необязательно null
Значение ввода по умолчанию.

Возвращает

mixed
Значение по умолчанию или введённое пользователем.

Ссылка

http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::in

info()source public

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

Удобный метод для out(), который оборачивает сообщение тегом

Параметры

string|array|null $message необязательно null
Строка или массив строк для вывода
integer $newlines необязательно 1
Количество добавляемых новых строк
integer $level необязательно Cake\Shell\Shell::NORMAL
Уровень вывода сообщения, см. выше.

Возвращает

integer|boolean
Количество байтов, возвращённых из записи в stdout.

См.

http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::out

initialize()source public

initialize( )

Инициализирует оболочку, действует как конструктор для подклассов, позволяет настроить задачи перед выполнением оболочки

Ссылка

http://book.cakephp.org/3.0/ru/console-and-shells.html#Cake\Console\ConsoleOptionParser::initialize

io()source public

io( Cake\Console\ConsoleIo $io null )

Получение/установка объекта io для этой оболочки.

Параметры

Cake\Console\ConsoleIo $io необязательно null
Объект ConsoleIo для использования.

Возвращает

Cake\Console\ConsoleIo
Текущий объект ConsoleIo.

loadTasks()source public

loadTasks( )

Загружает задачи, определённые в public $tasks

Возвращает

boolean

nl()source public

nl( integer $multiplier 1 )

Возвращает одну или несколько последовательностей символов новой строки.

Параметры

integer $multiplier необязательно 1
Количество повторений последовательности символов новой строки

Возвращает

string

Ссылка

http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::nl

out()source public

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

Выводит одно или несколько сообщений в stdout. Если параметры не переданы, выводится только новая строка.

Уровни вывода

Существует 3 встроенных уровня вывода. Shell::QUIET, Shell::NORMAL, Shell::VERBOSE. Уровни вывода verbose и quiet соответствуют переключателям вывода verbose и quiet в большинстве оболочек. Использование Shell::QUIET для сообщения означает, что оно всегда будет отображаться. В то время как использование Shell::VERBOSE означает, что оно будет отображаться только при включённом verbose-выводе.

Параметры

string|array|null $message необязательно null
Строка или массив строк для вывода
integer $newlines необязательно 1
Количество добавляемых новых строк
integer $level необязательно Cake\Shell\Shell::NORMAL
Уровень вывода сообщения, см. выше.

Возвращает

integer|boolean
Количество байтов, возвращённых из записи в stdout.

Ссылка

http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::out

param()source public

param( string $name )

Безопасный доступ к значениям в $this->params.

Параметры

string $name
Имя параметра для получения.

Возвращает

string|boolean|null
Значение. Вернёт null, если параметр не существует.

parseDispatchArguments()source public

parseDispatchArguments( array $args )

Парсит аргументы для метода dispatchShell().

Параметры

массив $args

Аргументы, полученные из метода dispatchShell() с помощью func_get_args()

Возвращает

массив

Первый элемент должен быть массивом аргументов команды. Второй элемент должен быть массивом дополнительных параметров для передачи диспетчеру.


quiet()source public

quiet( string|array $message , integer $newlines 1 )

Вывод на всех уровнях.

Параметры

строка|массив $message
Строка или массив строк для вывода
целое число $newlines необязательный 1
Количество новых строк для добавления

Возвращает

целое число|булево
Количество байтов, возвращенных из записи в stdout.

runCommand()source public

runCommand( array $argv , boolean $autoMethod false , array $extra [] )

Выполняет Shell с предоставленным argv.

Делегирует вызовы задачам и разрешает методы внутри класса. Команды ищутся в следующем порядке:

  • Метод в shell.
  • Совпадающее имя задачи.
  • main() метод.

Если shell реализует метод main(), все отсутствующие вызовы методов будут отправлены в main() с исходным именем метода в argv.

Для вызова задач они должны быть представлены как подкоманды. Если вы определяете подкоманды, вы должны определить все подкоманды, необходимые вашей оболочке, независимо от того, являются ли они методами этого класса или методами задач.

Параметры

массив $argv
Массив аргументов для запуска shell. В этом массиве должно отсутствовать имя shell.
булево $autoMethod необязательный false

Установите в значение true, чтобы разрешить вызов любого публичного метода, даже если он не был определен как подкоманда. Это используется ShellDispatcher, чтобы упростить создание простых оболочек.

массив $extra необязательный []

Дополнительные параметры, которые вы можете вручную передать в Shell для обработки. Встроенный дополнительный параметр: - requested : если используется, предотвратит отображение приветственного сообщения Shell.

Возвращает

целое число|булево|null

Ссылка

http://book.cakephp.org/3.0/ru/console-and-shells.html#the-cakephp-console

shortPath()source public

shortPath( string $file )

Делает абсолютный путь к файлу более читаемым

Параметры

строка $file
Абсолютный путь к файлу

Возвращает

строка
короткий путь

Ссылка

http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::shortPath

startup()source public

startup( )

Запускает Shell и отображает приветственное сообщение. Позволяет проверять и настраивать перед выполнением команды или основного кода.

Переопределите этот метод, если вы хотите удалить приветственную информацию или изменить поток до выполнения команды.

Ссылка

http://book.cakephp.org/3.0/ru/console-and-shells.html#Cake\Console\ConsoleOptionParser::startup

success()source public

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

Удобный метод для out(), который оборачивает сообщение тегами

Параметры

строка|массив|null $message необязательный null
Строка или массив строк для вывода
целое число $newlines необязательный 1
Количество новых строк для добавления
целое число $level необязательный Cake\Shell\Shell::NORMAL
Уровень вывода сообщения, см. выше.

Возвращает

целое число|булево
Количество байтов, возвращенных из записи в stdout.

См. также

http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::out

verbose()source public

verbose( string|array $message , integer $newlines 1 )

Вывод на уровне verbose.

Параметры

строка|массив $message
Строка или массив строк для вывода
целое число $newlines необязательный 1
Количество новых строк для добавления

Возвращает

целое число|булево
Количество байтов, возвращенных из записи в stdout.

warn()source public

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

Удобный метод для err(), который оборачивает сообщение тегами

Параметры

строка|массив|null $message необязательный null
Строка или массив строк для вывода
целое число $newlines необязательный 1
Количество новых строк для добавления

Возвращает

целое число|булево
Количество байтов, возвращенных из записи в stderr.

См. также

http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::err

wrapText()source public

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

Обернуть блок текста. Позволяет задать ширину и отступы блока текста.

Опции

  • width Ширина обертывания. По умолчанию 72
  • wordWrap Обернуть только по разрывам слов (пробелы). По умолчанию true.
  • indent Отступ текста с помощью предоставленной строки. По умолчанию null.

Параметры

строка $text
Текст для форматирования.
целое число|массив $options необязательный []
Массив опций для использования или целое число для обертывания текста.

Возвращает

строка
Обернутый/отступленный текст

См. также

\Cake\Utility\Text::wrap()

Ссылка

http://book.cakephp.org/3.0/ru/console-and-shells.html#Shell::wrapText

Методы, используемые из Cake\ORM\Locator\LocatorAwareTrait

tableLocator()source public

tableLocator( Cake\ORM\Locator\LocatorInterface $tableLocator null )

Устанавливает локатор таблиц. Если параметры не переданы, возвращается текущий используемый локатор.

Параметры

Cake\ORM\Locator\LocatorInterface $tableLocator необязательный null
Экземпляр LocatorInterface.

Возвращает

Cake\ORM\Locator\LocatorInterface

Методы, используемые из Cake\Log\LogTrait

log()source public

log( mixed $msg , integer|string $level LogLevel::ERROR , string|array $context [] )

Удобный метод для записи сообщения в журнал. Подробнее о записи в журналы см. Log::write().

Параметры

смешанный $msg
Сообщение журнала.
целое число|строка $level необязательный LogLevel::ERROR
Уровень ошибки.
строка|массив $context необязательный []
Дополнительные данные журнала, относящиеся к этому сообщению.

Возвращает

булево
Успешность записи в журнал.

Методы, используемые из Cake\Utility\MergeVariablesTrait

_mergeProperty()source protected

_mergeProperty( string $property , array $parentClasses , array $options )

Объединяет одно свойство со значениями, объявленными во всех родительских классах.

Параметры

строка $property
Имя объединяемого свойства.
массив $parentClasses
Массив классов, которые нужно объединить.
массив $options
Опции для объединения свойства, см. _mergeVars()

_mergePropertyData()source protected

_mergePropertyData( array $current , array $parent , boolean $isAssoc )

Объединяет каждый из ключей в свойстве вместе.

Параметры

массив $current
Текущее объединенное значение.
массив $parent
Значение родительского класса.
булево $isAssoc
Выполняется ли объединение в ассоциативном режиме.

Возвращает

смешанный
Обновленное значение.
END_OF_DOCUMENT_MARKER

_mergeVars()source protected

_mergeVars( array $properties , array $options [] )

Объединить список $properties со всеми родительскими классами текущего класса.

Параметры:

  • associative - Список свойств, которые должны обрабатываться как ассоциативные массивы. Свойства в этом списке будут переданы через Hash::normalize() перед объединением.

Параметры

массив $properties
Массив свойств и стратегии их объединения.
массив $options необязательно []
Параметры, используемые при объединении свойств.

Методы, используемые из Cake\Datasource\ModelAwareTrait

_setModelClass()source protected

_setModelClass( string $name )

Установить свойства modelClass и modelKey на основе соглашений.

Если свойства уже установлены, они не будут перезаписаны

Параметры

строка $name
Имя класса.

loadModel()source public

loadModel( string|null $modelClass null , string|null $modelType null )

Загружает и создает объекты хранилища, необходимые для этого объекта.

Обычно используется для загрузки объектов таблиц ORM по мере необходимости. Также может использоваться для загрузки других типов объектов хранилища, используемых вашим приложением.

Если поставщик хранилища не возвращает объект, будет выброшено исключение MissingModelException.

Параметры

строка|null $modelClass необязательно null
Имя класса модели для загрузки. По умолчанию $this->modelClass
строка|null $modelType необязательно null
Тип хранилища для загрузки. По умолчанию значение modelType().

Возвращает

Cake\Datasource\RepositoryInterface
Созданный экземпляр модели.

Исключения

Cake\Datasource\Exception\MissingModelException
Если класс модели не может быть найден.
InvalidArgumentException
При использовании типа, который не был зарегистрирован.
UnexpectedValueException
Если тип модели не определён

modelFactory()source public

modelFactory( string $type , callable $factory )

Переопределить существующую функцию для создания хранилищ заданного типа.

Параметры

строка $type
Имя типа хранилища, для которого предназначена функция-фабрика.
вызываемая функция $factory
Функция-фабрика, используемая для создания экземпляров.

modelType()source public

modelType( string|null $modelType null )

Установить или получить тип модели, который будет использоваться этим классом

Параметры

строка|null $modelType необязательно null
Тип модели или null для получения текущего

Возвращает

строка|Cake\Datasource\ModelAwareTrait
$this

© 2005–2017 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.
https://api.cakephp.org/3.3/class-Cake.Shell.OrmCacheShell.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API