CakePHP
  • Documentation
    • Book
    • API
    • Videos
    • Reporting Security Issues
    • Privacy Policy
    • Logos & Trademarks
  • Business Solutions
  • Swag
  • Road Trip
  • Team
  • Community
    • Community
    • Get Involved
    • Issues (Github)
    • Bakery
    • Featured Resources
    • Training
    • Meetups
    • My CakePHP
    • CakeFest
    • Newsletter
    • Linkedin
    • YouTube
    • Facebook
    • Twitter
    • Mastodon
    • Help & Support
    • Forum
    • Stack Overflow
    • IRC
    • Slack
    • Paid Support
CakePHP

C Authorization 3.x API

  • Project:
    • Authorization
      • CakePHP
      • Authentication
      • Authorization
      • Chronos
      • Elastic Search
      • Queue
  • Version:
    • 3.x
      • 3.x
      • 2.x

Namespaces

  • Authorization
    • Command
    • Controller
    • Exception
    • Middleware
    • Policy

Class PolicyCommand

Bake task for building policy classes

Namespace: Authorization\Command

Constants

  • int
    CODE_ERROR ¶
    1

    Default error code

  • int
    CODE_SUCCESS ¶
    0

    Default success code

Property Summary

  • $_eventClass protected
    string

    Default class name for new event objects.

  • $_eventManager protected
    Cake\Event\EventManagerInterface|null

    Instance of the Cake\Event\EventManager this object is using to dispatch inner events.

  • $_tableLocator protected
    Cake\ORM\Locator\LocatorInterface|null

    Table locator instance

  • $connection public
    string
  • $defaultTable protected
    string|null

    This object's default table alias.

  • $factory protected
    ?CommandFactoryInterface
  • $force public
    bool
  • $name protected
    string

    The name of this command.

  • $pathFragment public
    string

    Path to Policy directory

  • $plugin public
    string
  • $theme public
    string|null
  • $type protected
    string

Method Summary

  • __construct() public

    Constructor

  • _camelize() protected

    Creates a camelized version of $name

  • _entityName() protected

    Creates the proper entity name (singular) for the specified name

  • _fixtureName() protected

    Creates a fixture name

  • _getBakeThemes() protected

    Get available bake themes

  • _getName() protected

    Handles splitting up the plugin prefix and classname.

  • _modelKey() protected

    Creates the proper underscored model key for associations

  • _modelNameFromKey() protected

    Creates the proper model name from a foreign key

  • _pluginNamespace() protected

    Return plugin's namespace

  • _pluginPath() protected

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

  • _pluralHumanName() protected

    Creates the plural human name used in views

  • _setCommonOptions() protected

    Set common options used by all bake tasks.

  • _singularHumanName() protected

    Creates the singular human name used in views

  • _singularName() protected

    Creates the singular name for use in views.

  • _variableName() protected

    Creates the plural variable name for views

  • abort() public

    Halt the current process with a StopException.

  • bake() protected

    Generate a class stub

  • bakeTest() public

    Do nothing (for now)

  • buildOptionParser() public

    Gets the option parser instance and configures it.

  • createTemplateRenderer() public

    Creates a new instance of TemplateRenderer with theme set.

  • defaultName() public static

    Get the command name.

  • deleteEmptyFile() protected

    Delete empty file in a given path

  • dispatchEvent() public

    Wrapper for creating and dispatching events.

  • displayHelp() protected

    Output help content

  • execute() public

    Execute the command.

  • executeCommand() public

    Execute another command with the provided set of arguments.

  • extractCommonProperties() protected

    Pull common/frequently used arguments & options into properties so that method signatures can be simpler.

  • fetchTable() public

    Convenience method to get a table instance.

  • fileName() public

    Get the generated object's filename without the leading path.

  • getDescription() public static

    Get the command description.

  • getEventManager() public

    Returns the Cake\Event\EventManager manager instance for this object.

  • getName() public

    Get the command name.

  • getOptionParser() public

    Get the option parser.

  • getPath() public

    Gets the path for output. Checks the plugin property and returns the correct path.

  • getPrefix() protected

    Get the prefix name.

  • getRootName() public

    Get the root command name.

  • getTableLocator() public

    Gets the table locator.

  • getTemplatePath() public

    Gets the path to the template path for the application or plugin.

  • initialize() public

    Hook method invoked by CakePHP when a command is about to be executed.

  • isValidColumnName() protected

    Check if a column name is valid.

  • log() public

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

  • name() public

    Get the generated object's name.

  • parseFile() protected

    Parses a file if it exists.

  • run() public

    Run the command.

  • setEventManager() public

    Returns the Cake\Event\EventManagerInterface instance for this object.

  • setName() public

    Set the name this command uses in the collection.

  • setOutputLevel() protected

    Set the output level based on the Arguments.

  • setTableLocator() public

    Sets the table locator.

  • template() public

    Get the template name.

  • templateData() public

    Get template data.

  • writeFile() protected

    Write file contents out to path and prompt user with options with file exists.

Method Detail

__construct() ¶ public

__construct(Cake\Console\CommandFactoryInterface|null $factory = null)

Constructor

Parameters
Cake\Console\CommandFactoryInterface|null $factory optional

Command factory instance.

_camelize() ¶ protected

_camelize(string $name): string

Creates a camelized version of $name

Parameters
string $name

name

Returns
string

_entityName() ¶ protected

_entityName(string $name): string

Creates the proper entity name (singular) for the specified name

Parameters
string $name

Name

Returns
string

_fixtureName() ¶ protected

_fixtureName(string $name): string

Creates a fixture name

Parameters
string $name

Model class name

Returns
string

_getBakeThemes() ¶ protected

_getBakeThemes(): array

Get available bake themes

Returns
array

_getName() ¶ protected

_getName(string $name): string

Handles splitting up the plugin prefix and classname.

Sets the plugin parameter and plugin property.

Parameters
string $name

The name to possibly split.

Returns
string

_modelKey() ¶ protected

_modelKey(string $name): string

Creates the proper underscored model key for associations

If the input contains a dot, assume that the right side is the real table name.

Parameters
string $name

Model class name

Returns
string

_modelNameFromKey() ¶ protected

_modelNameFromKey(string $key): string

Creates the proper model name from a foreign key

Parameters
string $key

Foreign key

Returns
string

_pluginNamespace() ¶ protected

_pluginNamespace(string $pluginName): string

Return plugin's namespace

Parameters
string $pluginName

Plugin name

Returns
string

_pluginPath() ¶ protected

_pluginPath(string $pluginName): string

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

_pluralHumanName() ¶ protected

_pluralHumanName(string $name): string

Creates the plural human name used in views

Parameters
string $name

Controller name

Returns
string

_setCommonOptions() ¶ protected

_setCommonOptions(Cake\Console\ConsoleOptionParser $parser): Cake\Console\ConsoleOptionParser

Set common options used by all bake tasks.

Parameters
Cake\Console\ConsoleOptionParser $parser

Options parser.

Returns
Cake\Console\ConsoleOptionParser

_singularHumanName() ¶ protected

_singularHumanName(string $name): string

Creates the singular human name used in views

Parameters
string $name

Controller name

Returns
string

_singularName() ¶ protected

_singularName(string $name): string

Creates the singular name for use in views.

Parameters
string $name

Name to use

Returns
string

_variableName() ¶ protected

_variableName(string $name): string

Creates the plural variable name for views

Parameters
string $name

Name to use

Returns
string

abort() ¶ public

abort(int $code = self::CODE_ERROR): never

Halt the current process with a StopException.

Parameters
int $code optional

The exit code to use.

Returns
never
Throws
Cake\Console\Exception\StopException

bake() ¶ protected

bake(string $name, Cake\Console\Arguments $args, Cake\Console\ConsoleIo $io): void

Generate a class stub

Parameters
string $name

The class name

Cake\Console\Arguments $args

The console arguments

Cake\Console\ConsoleIo $io

The console io

Returns
void

bakeTest() ¶ public

bakeTest(string $className, Cake\Console\Arguments $args, Cake\Console\ConsoleIo $io): void

Do nothing (for now)

Parameters
string $className

The class to bake a test for.

Cake\Console\Arguments $args

The arguments object

Cake\Console\ConsoleIo $io

The consoleio object

Returns
void

buildOptionParser() ¶ public

buildOptionParser(Cake\Console\ConsoleOptionParser $parser): Cake\Console\ConsoleOptionParser

Gets the option parser instance and configures it.

Parameters
Cake\Console\ConsoleOptionParser $parser

The parser to update.

Returns
Cake\Console\ConsoleOptionParser

createTemplateRenderer() ¶ public

createTemplateRenderer(): Bake\Utility\TemplateRenderer

Creates a new instance of TemplateRenderer with theme set.

Returns
Bake\Utility\TemplateRenderer

defaultName() ¶ public static

defaultName(): string

Get the command name.

Returns the command name based on class name. For e.g. for a command with class name UpdateTableCommand or BakeUpdateTableCommand the default name returned would be 'bake update_table'.

Returns
string

deleteEmptyFile() ¶ protected

deleteEmptyFile(string $path, Cake\Console\ConsoleIo $io): void

Delete empty file in a given path

Parameters
string $path

Path to folder which contains 'empty' file.

Cake\Console\ConsoleIo $io

ConsoleIo to delete file with.

Returns
void

dispatchEvent() ¶ public

dispatchEvent(string $name, array $data = [], TSubject|null $subject = null): Cake\Event\EventInterface<TSubject>

Wrapper for creating and dispatching events.

Returns a dispatched event.

Parameters
string $name

Name of the event.

array $data optional

Any value you wish to be transported with this event to it can be read by listeners.

TSubject|null $subject optional

The object that this event applies to ($this by default).

Returns
Cake\Event\EventInterface<TSubject>

displayHelp() ¶ protected

displayHelp(Cake\Console\ConsoleOptionParser $parser, Cake\Console\Arguments $args, Cake\Console\ConsoleIo $io): void

Output help content

Parameters
Cake\Console\ConsoleOptionParser $parser

The option parser.

Cake\Console\Arguments $args

The command arguments.

Cake\Console\ConsoleIo $io

The console io

Returns
void

execute() ¶ public

execute(Cake\Console\Arguments $args, Cake\Console\ConsoleIo $io): int|null

Execute the command.

Parameters
Cake\Console\Arguments $args

The command arguments.

Cake\Console\ConsoleIo $io

The console io

Returns
int|null

executeCommand() ¶ public

executeCommand(Cake\Console\CommandInterface|string $command, array $args = [], Cake\Console\ConsoleIo|null $io = null): int|null

Execute another command with the provided set of arguments.

If you are using a string command name, that command's dependencies will not be resolved with the application container. Instead you will need to pass the command as an object with all of its dependencies.

Parameters
Cake\Console\CommandInterface|string $command

The command class name or command instance.

array $args optional

The arguments to invoke the command with.

Cake\Console\ConsoleIo|null $io optional

The ConsoleIo instance to use for the executed command.

Returns
int|null

extractCommonProperties() ¶ protected

extractCommonProperties(Cake\Console\Arguments $args): void

Pull common/frequently used arguments & options into properties so that method signatures can be simpler.

Parameters
Cake\Console\Arguments $args

Arguments to extract

Returns
void

fetchTable() ¶ public

fetchTable(string|null $alias = null, array<string, mixed> $options = []): Cake\ORM\Table

Convenience method to get a table instance.

Parameters
string|null $alias optional

The alias name you want to get. Should be in CamelCase format. If null then the value of $defaultTable property is used.

array<string, mixed> $options optional

The options you want to build the table with. If a table has already been loaded the registry options will be ignored.

Returns
Cake\ORM\Table
Throws
Cake\Core\Exception\CakeException
If `$alias` argument and `$defaultTable` property both are `null`.
See Also
\Cake\ORM\TableLocator::get()

fileName() ¶ public

fileName(string $name): string

Get the generated object's filename without the leading path.

Parameters
string $name
Returns
string

getDescription() ¶ public static

getDescription(): string

Get the command description.

Returns
string

getEventManager() ¶ public

getEventManager(): Cake\Event\EventManagerInterface

Returns the Cake\Event\EventManager manager instance for this object.

You can use this instance to register any new listeners or callbacks to the object events, or create your own events and trigger them at will.

Returns
Cake\Event\EventManagerInterface

getName() ¶ public

getName(): string

Get the command name.

Returns
string

getOptionParser() ¶ public

getOptionParser(): Cake\Console\ConsoleOptionParser

Get the option parser.

You can override buildOptionParser() to define your options & arguments.

Returns
Cake\Console\ConsoleOptionParser
Throws
Cake\Core\Exception\CakeException
When the parser is invalid

getPath() ¶ public

getPath(Cake\Console\Arguments $args): string

Gets the path for output. Checks the plugin property and returns the correct path.

Parameters
Cake\Console\Arguments $args

Arguments instance to read the prefix option from.

Returns
string

getPrefix() ¶ protected

getPrefix(Cake\Console\Arguments $args): string

Get the prefix name.

Handles camelcasing each namespace in the prefix path.

Parameters
Cake\Console\Arguments $args

Arguments instance to read the prefix option from.

Returns
string

getRootName() ¶ public

getRootName(): string

Get the root command name.

Returns
string

getTableLocator() ¶ public

getTableLocator(): Cake\ORM\Locator\LocatorInterface

Gets the table locator.

Returns
Cake\ORM\Locator\LocatorInterface

getTemplatePath() ¶ public

getTemplatePath(Cake\Console\Arguments $args, string|null $container = null): string

Gets the path to the template path for the application or plugin.

Parameters
Cake\Console\Arguments $args

Arguments instance to read the prefix option from.

string|null $container optional

The container directory in the templates directory.

Returns
string

initialize() ¶ public

initialize(): void

Hook method invoked by CakePHP when a command is about to be executed.

Override this method and implement expensive/important setup steps that should not run on every command run. This method will be called before the options and arguments are validated and processed.

Returns
void

isValidColumnName() ¶ protected

isValidColumnName(string $name): bool

Check if a column name is valid.

The Regex used here basically states that:

  • the column name has to start with an ASCII character (lower or upper case) or an underscore and
  • further characters are allowed to be either lower or upper case ASCII characters, numbers or underscores.
Parameters
string $name

The name of the column.

Returns
bool

log() ¶ public

log(Stringable|string $message, string|int $level = LogLevel::ERROR, array|string $context = []): bool

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

Parameters
Stringable|string $message

Log message.

string|int $level optional

Error level.

array|string $context optional

Additional log data relevant to this message.

Returns
bool

name() ¶ public

name(): string

Get the generated object's name.

Returns
string

parseFile() ¶ protected

parseFile(string $path): Bake\CodeGen\ParsedFile|null

Parses a file if it exists.

Parameters
string $path

File path

Returns
Bake\CodeGen\ParsedFile|null

run() ¶ public

run(array $argv, Cake\Console\ConsoleIo $io): int|null

Run the command.

Parameters
array $argv
Cake\Console\ConsoleIo $io
Returns
int|null

setEventManager() ¶ public

setEventManager(Cake\Event\EventManagerInterface $eventManager): $this

Returns the Cake\Event\EventManagerInterface instance for this object.

You can use this instance to register any new listeners or callbacks to the object events, or create your own events and trigger them at will.

Parameters
Cake\Event\EventManagerInterface $eventManager

the eventManager to set

Returns
$this

setName() ¶ public

setName(string $name): $this

Set the name this command uses in the collection.

Generally invoked by the CommandCollection when the command is added. Required to have at least one space in the name so that the root command can be calculated.

Parameters
string $name
Returns
$this

setOutputLevel() ¶ protected

setOutputLevel(Cake\Console\Arguments $args, Cake\Console\ConsoleIo $io): void

Set the output level based on the Arguments.

Parameters
Cake\Console\Arguments $args

The command arguments.

Cake\Console\ConsoleIo $io

The console io

Returns
void

setTableLocator() ¶ public

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

Sets the table locator.

Parameters
Cake\ORM\Locator\LocatorInterface $tableLocator

LocatorInterface instance.

Returns
$this

template() ¶ public

template(): string

Get the template name.

Returns
string

templateData() ¶ public

templateData(Cake\Console\Arguments $arguments): array

Get template data.

Parameters
Cake\Console\Arguments $arguments
Returns
array

writeFile() ¶ protected

writeFile(Cake\Console\ConsoleIo $io, string $path, string $contents, bool $forceOverwrite = false, bool $skipIfUnchanged = true): bool

Write file contents out to path and prompt user with options with file exists.

Parameters
Cake\Console\ConsoleIo $io

Console io

string $path

The path to create the file at

string $contents

The contents to put into the file

bool $forceOverwrite optional

Whether the file should be overwritten without prompting the user

bool $skipIfUnchanged optional

Skip writing output if the contents match existing file

Returns
bool
Throws
Cake\Console\Exception\StopException
When `q` is given as an answer to whether a file should be overwritten.

Property Detail

$_eventClass ¶ protected

Default class name for new event objects.

Type
string

$_eventManager ¶ protected

Instance of the Cake\Event\EventManager this object is using to dispatch inner events.

Type
Cake\Event\EventManagerInterface|null

$_tableLocator ¶ protected

Table locator instance

Type
Cake\ORM\Locator\LocatorInterface|null

$connection ¶ public

Type
string

$defaultTable ¶ protected

This object's default table alias.

Type
string|null

$factory ¶ protected

Type
?CommandFactoryInterface

$force ¶ public

Type
bool

$name ¶ protected

The name of this command.

Type
string

$pathFragment ¶ public

Path to Policy directory

Type
string

$plugin ¶ public

Type
string

$theme ¶ public

Type
string|null

$type ¶ protected

Type
string
OpenHub
Pingping
Linode
  • Business Solutions
  • Showcase
  • Documentation
  • Book
  • API
  • Videos
  • Reporting Security Issues
  • Privacy Policy
  • Logos & Trademarks
  • Community
  • Get Involved
  • Issues (Github)
  • Bakery
  • Featured Resources
  • Training
  • Meetups
  • My CakePHP
  • CakeFest
  • Newsletter
  • Linkedin
  • YouTube
  • Facebook
  • Twitter
  • Mastodon
  • Help & Support
  • Forum
  • Stack Overflow
  • IRC
  • Slack
  • Paid Support

Generated using CakePHP API Docs