StandardsCommand

Class
extends Command
Final: Yes

Executes the full suite of Fast Forward code standard checks.

Description

This class MUST NOT be modified through inheritance and SHALL streamline code validation workflows.

Attributes
#[AsCommand]
$name : 'dev-tools:standards'
$description : 'Runs Fast Forward code standards checks.'
$aliases : ['standards']

Table of Contents

Properties

Methods

 : mixed
addCacheDirOption()

Adds the standard cache directory option to the current command.

 : static
addCacheOption()

Adds the standard cache control option to the current command.

 : static
addJsonOption()

Adds the standard JSON output options to the current command.

 : static
configure()

Configures constraints and arguments for the collective standard runner.

 : void
 : int
isCacheEnabled()

Resolves whether cache writes SHOULD be enabled for the current invocation.

 : bool
isJsonOutput()

Determines whether JSON output was requested.

 : bool
isPrettyJsonOutput()

Determines whether pretty JSON output was requested.

 : bool
resolveCacheArgument()

Returns the explicit cache flag that SHOULD be forwarded to nested commands.

 : string|null
resolveCacheDirArgument()

Resolves a nested cache directory for a child command.

 : string|null
failure()

Logs a failed command result and returns the failure exit code.

 : int
getProcessLabel()

Resolves a human-readable process label for a nested standards command.

 : string
hasExplicitCacheDirArgument()

Determines whether the current invocation explicitly passed `--cache-dir`.

 : bool
isNoCacheRequested()

Determines whether cache writes were explicitly disabled for the current invocation.

 : bool
notice()

Logs an informational command message at notice level.

 : void
success()

Logs a successful command result and returns the success exit code.

 : int
Properties
Methods

addCacheDirOption()

Protected

Adds the standard cache directory option to the current command.

protected addCacheDirOption( string  $description, string  $default) : static
Parameters
$description : string

Description

the cache directory option description

$default : string

Description

the command-specific default cache directory

Return values
static

addCacheOption()

Protected

Adds the standard cache control option to the current command.

protected addCacheOption( string  $description) : static
Parameters
$description : string

Description

the cache option description

Return values
static

addJsonOption()

Protected

Adds the standard JSON output options to the current command.

protected addJsonOption() : static
Return values
static

configure()

Protected

Configures constraints and arguments for the collective standard runner.

protected configure() : void

execute()

Protected
protected execute(InputInterface  $input, OutputInterface  $output) : int
Parameters
$input : InputInterface
$output : OutputInterface
Return values
int

isCacheEnabled()

Protected

Resolves whether cache writes SHOULD be enabled for the current invocation.

protected isCacheEnabled(InputInterface  $input[, bool  $default = true]) : bool
Parameters
$input : InputInterface

Description

the current command input

$default : bool = true

Description

the command-specific default cache behavior when the option is omitted

Return values
bool

isJsonOutput()

Protected

Determines whether JSON output was requested.

protected isJsonOutput(InputInterface  $input) : bool

Description

The pretty-json flag SHALL imply JSON output.

Parameters
$input : InputInterface
Return values
bool

isPrettyJsonOutput()

Protected

Determines whether pretty JSON output was requested.

protected isPrettyJsonOutput(InputInterface  $input) : bool
Parameters
$input : InputInterface
Return values
bool

resolveCacheArgument()

Protected

Returns the explicit cache flag that SHOULD be forwarded to nested commands.

protected resolveCacheArgument(InputInterface  $input) : string|null
Parameters
$input : InputInterface

Description

the current command input

Return values
string|null

resolveCacheDirArgument()

Protected

Resolves a nested cache directory for a child command.

protected resolveCacheDirArgument(InputInterface  $input[, string  $path = '']) : string|null
Parameters
$input : InputInterface

Description

the current command input

$path : string = ''

Description

the child cache path relative to the current command cache root

Return values
string|null

failure()

Private

Logs a failed command result and returns the failure exit code.

private failure( string  $message, InputInterface  $input[, array<string, mixed>  $context = []][, string|null  $file = null][, int|null  $line = null]) : int
Parameters
$message : string

Description

the failure message

$input : InputInterface

Description

the originating command input

$context : array<string, mixed> = []

Description

optional extra log context

$file : string|null = null

Description

the related file path when known

$line : int|null = null

Description

the related line when known

Return values
int

getProcessLabel()

Private

Resolves a human-readable process label for a nested standards command.

private getProcessLabel( string  $command) : string
Parameters
$command : string

Description

the nested dev-tools command name

Return values
string

Description

the process section label

hasExplicitCacheDirArgument()

Private

Determines whether the current invocation explicitly passed `--cache-dir`.

private hasExplicitCacheDirArgument(InputInterface  $input) : bool
Parameters
$input : InputInterface

Description

the current command input

Return values
bool

isNoCacheRequested()

Private

Determines whether cache writes were explicitly disabled for the current invocation.

private isNoCacheRequested(InputInterface  $input) : bool

Description

The Composer application already provides a global --no-cache flag, so commands SHALL reuse that switch instead of redefining a local negated variant.

Parameters
$input : InputInterface

Description

the current command input

Return values
bool

notice()

Private

Logs an informational command message at notice level.

private notice( string  $message, InputInterface  $input[, array<string, mixed>  $context = []]) : void
Parameters
$message : string

Description

the notice message

$input : InputInterface

Description

the originating command input

$context : array<string, mixed> = []

Description

optional extra log context

success()

Private

Logs a successful command result and returns the success exit code.

private success( string  $message, InputInterface  $input[, array<string, mixed>  $context = []][, string  $logLevel = LogLevel::INFO]) : int
Parameters
$message : string

Description

the success message

$input : InputInterface

Description

the originating command input

$context : array<string, mixed> = []

Description

optional extra log context

$logLevel : string = LogLevel::INFO

Description

the PSR-3 log level used for the successful result

Return values
int