Spec-Zone.ru › CakePHP 3.8

Класс OrmCacheShell

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

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

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

Наследуемые константы

  • CODE_ERROR, CODE_SUCCESS, NORMAL, QUIET, VERBOSE

Наследуемые свойства

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

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

_getSchemaCache()исходный код protected

_getSchemaCache( )

Получает экземпляр Schema Cache.

Возвращает

Cake\Database\SchemaCache

build()исходный код public

build( string|null $name = null )

Создать метаданные.

Параметры

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

Возвращает

boolean

clear()исходный код public

clear( string|null $name = null )

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

Параметры

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

Возвращает

boolean

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

Cake\Console\Shell::clear()

getOptionParser()исходный код public

getOptionParser( )

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

Возвращает

Cake\Console\ConsoleOptionParser

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

Cake\Console\Shell::getOptionParser()

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

__construct()исходный код public

__construct( Cake\Console\ConsoleIo $io = null , Cake\ORM\Locator\LocatorInterface $locator = null )

Создает экземпляр этой оболочки.

Параметры

Cake\Console\ConsoleIo $io необязательно null
Экземпляр io.
Cake\ORM\Locator\LocatorInterface $locator необязательно null
Экземпляр локатора таблиц.

Ссылка

https://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
Объект Task

_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 optional self::CODE_SUCCESS
см. https://secure.php.net/exit для значений

Выбрасывает

Cake\Console\Exception\StopException

_validateTasks()source protected

_validateTasks( )

Проверяет, что задачи в карте задач фактически доступны

Выбрасывает

RuntimeException

_welcome()source protected

_welcome( )

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

abort()source public

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

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

Параметры

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

Выбрасывает

Cake\Console\Exception\StopException

Ссылка

https://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
Успех

Ссылка

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

dispatchShell()source public

dispatchShell( )

Отправляет команду другому Shell. Аналогично Object::requestAction(), но предназначено для запуска shell из другого shell.

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

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

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

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

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

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
Код выхода командной строки. 0 — успех.

Ссылка

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

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 deprecated

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

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

Параметры

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

Возвращает

integer
Код ошибки

Выбрасывает

Cake\Console\Exception\StopException

Ссылка

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

getIo()source public

getIo( )

Получить объект io для этого shell.

Возвращает

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

hasMethod()source public

hasMethod( string $name )

Проверка наличия вызываемого метода с данным именем в этом shell.

Параметры

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

Возвращает

boolean

Ссылка

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

hasTask()source public

hasTask( string $task )

Проверка наличия задачи с заданным именем в этом shell.

Параметры

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

Возвращает

boolean
Успех

Ссылка

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

helper()source public

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

Отображение помощника Console Helper

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

Параметры

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

Возвращает

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

hr()source public

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

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

Параметры

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

Ссылка

https://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 )

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

Параметры

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

Возвращаемое значение

смешанное
Либо значение по умолчанию, либо введенное пользователем значение.

Ссылка

https://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 = Shell::NORMAL )

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

Параметры

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

Возвращаемое значение

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

См. также

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

initialize()source public

initialize( )

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

Ссылка

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

io()source public deprecated

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 )

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

Параметры

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

Возвращаемое значение

строка

Ссылка

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

out()source public

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

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

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

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

Параметры

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

Возвращает

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

Ссылка

https://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().

Параметры

array $args

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

Возвращает

array

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


quiet()source public

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

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

Параметры

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

Возвращает

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

runCommand()source public

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

Выполняет оболочку с предоставленным argv.

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

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

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

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

Параметры

array $argv
Массив аргументов для запуска оболочки. Этот массив должен быть без имени оболочки.
boolean $autoMethod optional false

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

array $extra optional []

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

Возвращает

integer|boolean|null

Ссылка

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

setIo()source public

setIo( Cake\Console\ConsoleIo $io )

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

Параметры

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

setRootName()source public

setRootName( string $name )

Установите имя корневой команды для вывода справки.

Параметры

string $name
Имя корневой команды.

Возвращает


$this

shortPath()source public

shortPath( string $file )

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

Параметры

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

Возвращает

string
сокращенный путь

Ссылка

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

startup()source public

startup( )

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

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

Ссылка

https://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 = Shell::NORMAL )

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

Параметры

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

Возвращает

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

См. также

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

verbose()source public

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

Вывод на уровне подробностей.

Параметры

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

Возвращает

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

warn()source public

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

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

Параметры

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

Возвращает

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

См. также

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

wrapMessageWithType()source protected deprecated

wrapMessageWithType( string $messageType , string|array $message )

Оборачивает сообщение с заданным типом сообщения, например

Параметры

string $messageType
Тип сообщения, например «предупреждение».
string|array $message
Сообщение для обёртывания.

Возвращает

array|string
Сообщение, обернутое с заданным типом сообщения.

wrapText()source public

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

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

Параметры

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

Параметры

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

Возвращаемое значение

string
Оборачиваемый/отступающий текст

См. также

\Cake\Utility\Text::wrap()

Ссылка

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

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

getTableLocator()source public

getTableLocator( )

Получает локатор таблицы.

Возвращаемое значение

Cake\ORM\Locator\LocatorInterface

setTableLocator()source public

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

Устанавливает локатор таблицы.

Параметры

Cake\ORM\Locator\LocatorInterface $tableLocator
Экземпляр LocatorInterface.

Возвращаемое значение


$this

tableLocator()source public deprecated

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

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

Параметры

Cake\ORM\Locator\LocatorInterface $tableLocator optional 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().

Параметры

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

Возвращаемое значение

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

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

_mergeProperty()source protected

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

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

Параметры

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

_mergePropertyData()source protected

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

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

Параметры

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

Возвращаемое значение

mixed
Обновленное значение.
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
Имя класса.

getModelType()source public

getModelType( )

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

Возвращает

строка

loadModel()source public

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

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

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

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

Параметры

строка|null $modelClass необязательно null

Имя класса модели для загрузки. По умолчанию равно $this->modelClass. Имя может быть псевдонимом, например 'Post' или полным именем класса, например App\Model\Table\PostsTable::class.

строка|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 deprecated

modelType( string|null $modelType = null )

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

Параметры

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

Возвращает

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

setModelType()source public

setModelType( string $modelType )

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

Параметры

строка $modelType
Тип модели

Возвращает


$this

Магические методы, унаследованные от Cake\Console\Shell

main()

© 2005–present 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.8/class-Cake.Shell.OrmCacheShell.html

Spec-Zone.ru

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