public function isCompiletimeCommand(string $commandIdentifier): bool
    {
        $commandIdentifierParts = explode(':', $commandIdentifier);
        if (count($commandIdentifierParts) !== 3) {
            return false;
        }
        if (isset($this->compiletimeCommands[$commandIdentifier])) {
            return true;
        }

        unset($commandIdentifierParts[2]);
        $shortControllerIdentifier = implode(':', $commandIdentifierParts);

        foreach ($this->compiletimeCommands as $fullControllerIdentifier => $isCompiletimeCommandController) {
            list($packageKey, $controllerName, $commandName) = explode(':', $fullControllerIdentifier);
            $packageKeyParts = explode('.', $packageKey);
            $packageKeyPartsCount = count($packageKeyParts);
            for ($offset = 0; $offset < $packageKeyPartsCount; $offset++) {
                $possibleCommandControllerIdentifier = implode('.', array_slice($packageKeyParts, $offset)) . ':' . $controllerName;

                if (substr($fullControllerIdentifier, -2, 2) === ':*') {
                    if ($possibleCommandControllerIdentifier === $shortControllerIdentifier) {
                        return true;
                    }
                } else {
                    $possibleCommandControllerIdentifier .= ':' . $commandName;
                    if ($possibleCommandControllerIdentifier === $commandIdentifier) {
                        return true;
                    }
                }
            }
        }
        return false;
    }
public function isCompiletimeCommand(string $commandIdentifier): bool
    {
        $commandIdentifierParts = explode(':', $commandIdentifier);
        if (count($commandIdentifierParts) !== 3) {
            return false;
        }
        if (isset($this->compiletimeCommands[$commandIdentifier])) {
            return true;
        }

        unset($commandIdentifierParts[2]);
        $shortControllerIdentifier = implode(':', $commandIdentifierParts);

        foreach ($this->compiletimeCommands as $fullControllerIdentifier => $isCompiletimeCommandController) {
            list($packageKey, $controllerName, $commandName) = explode(':', $fullControllerIdentifier);
            $packageKeyParts = explode('.', $packageKey);
            $packageKeyPartsCount = count($packageKeyParts);
            for ($offset = 0; $offset < $packageKeyPartsCount; $offset++) {
                $possibleCommandControllerIdentifier = implode('.', array_slice($packageKeyParts, $offset)) . ':' . $controllerName;

                if (substr($fullControllerIdentifier, -2, 2) === ':*') {
                    if ($possibleCommandControllerIdentifier === $shortControllerIdentifier) {
                        return true;
                    }
                } else {
                    $possibleCommandControllerIdentifier .= ':' . $commandName;
                    if ($possibleCommandControllerIdentifier === $commandIdentifier) {
                        return true;
                    }
                }
            }
        }
        return false;
    }
public function isCompiletimeCommand ( string $ commandIdentifier ) : bool { $ commandIdentifierParts = explode ( ':' , $ commandIdentifier ) ; if ( count ( $ commandIdentifierParts ) !== 3 ) { return false ; } if ( isset ( $ this -> compiletimeCommands [ $ commandIdentifier ] ) ) { return true ; } unset ( $ commandIdentifierParts [ 2 ] ) ; $ shortControllerIdentifier = implode ( ':' , $ commandIdentifierParts ) ; foreach ( $ this -> compiletimeCommands as $ fullControllerIdentifier => $ isCompiletimeCommandController ) { list ( $ packageKey , $ controllerName , $ commandName ) = explode ( ':' , $ fullControllerIdentifier ) ; $ packageKeyParts = explode ( '.' , $ packageKey ) ; $ packageKeyPartsCount = count ( $ packageKeyParts ) ; for ( $ offset = 0 ; $ offset < $ packageKeyPartsCount ; $ offset ++ ) { $ possibleCommandControllerIdentifier = implode ( '.' , array_slice ( $ packageKeyParts , $ offset ) ) . ':' . $ controllerName ; if ( substr ( $ fullControllerIdentifier , - 2 , 2 ) === ':*' ) { if ( $ possibleCommandControllerIdentifier === $ shortControllerIdentifier ) { return true ; } } else { $ possibleCommandControllerIdentifier .= ':' . $ commandName ; if ( $ possibleCommandControllerIdentifier === $ commandIdentifier ) { return true ; } } } } return false ; }
Tells if the given command controller is registered for compiletime or not.

@param string $commandIdentifier Package key, controller name and command name separated by colon, e.g. "neos.flow:cache:flush"
@return boolean
@api
Tells if the given command controller is registered for compiletime or not .