PHP Interface FluidTYPO3\Flux\Package\FluxPackageInterface

Implemented by FluxPackage instances - describes required methods for a package class (manifest API) that's unique per extension.
Datei anzeigen Open project: fluidtypo3/flux

Public Methods

Method Description
__construct ( mixed $seedArrayOrExtensionKeyOrManifestPath ) Constructor - takes an array of manifest data in the same structure as in the manifest JSON file, or an extension key in which case the expected manifest is resolved using that and naming convention of the manifest file. Or takes a full path to the manifest file in which case the manifest is read from there.
getExtensionName ( ) : string Must always return the ExtensionName format of the extension key, excluding the vendor name.
getImplementation ( string $implementationName ) : string Get FQN of the class that's designated as an implementation, meaning it is replaceable by Flux Packages via this method.
getNamespacePrefix ( ) : string Must always return the $vendor\$extensioName format of the vendor and extension name, using values from the two preceeding methods.
getVendorName ( ) : string Must always return the vendor name (as used in class namespaces) corresponding to this package.
getViewPaths ( ) : TemplatePaths Returns an instance of Flux's TemplatePaths class with template paths of this package preloaded.
isFeatureEnabled ( string $featureName ) : boolean Asserts whether or not the feature is enabled for this FluxPackage.
isProviderFor ( string $controllerName ) : boolean Asserts whether or not this FluxPackage contains an integration designed for the controller name, e.g.
modify ( array $alternativeManifestDeclaration ) : void Modify properties of this FluxPackage (in this class instance only) by passing an array using the same structure as the constructor and as in the manifest.
upcast ( string | null $desiredClassName = NULL ) : FluidTYPO3\Flux\Package\FluxPackageInterface Upcasts (promotes) the instance to another class name by creating a new instance of the provided class and passing $this->manifest as seed. If NULL is passed as desired class name the expected final class name is determined based on naming convention.

Method Details

__construct() public method

Constructor - takes an array of manifest data in the same structure as in the manifest JSON file, or an extension key in which case the expected manifest is resolved using that and naming convention of the manifest file. Or takes a full path to the manifest file in which case the manifest is read from there.
public __construct ( mixed $seedArrayOrExtensionKeyOrManifestPath )
$seedArrayOrExtensionKeyOrManifestPath mixed

getExtensionName() public method

Must always return the ExtensionName format of the extension key, excluding the vendor name.
public getExtensionName ( ) : string
return string

getImplementation() public method

Get FQN of the class that's designated as an implementation, meaning it is replaceable by Flux Packages via this method.
public getImplementation ( string $implementationName ) : string
$implementationName string
return string

getNamespacePrefix() public method

Must always return the $vendor\$extensioName format of the vendor and extension name, using values from the two preceeding methods.
public getNamespacePrefix ( ) : string
return string

getVendorName() public method

Must always return the vendor name (as used in class namespaces) corresponding to this package.
public getVendorName ( ) : string
return string

getViewPaths() public method

Returns an instance of Flux's TemplatePaths class with template paths of this package preloaded.
public getViewPaths ( ) : TemplatePaths
return FluidTYPO3\Flux\View\TemplatePaths

isFeatureEnabled() public method

Asserts whether or not the feature is enabled for this FluxPackage.
public isFeatureEnabled ( string $featureName ) : boolean
$featureName string
return boolean

isProviderFor() public method

"Content", "Page" etc.
public isProviderFor ( string $controllerName ) : boolean
$controllerName string
return boolean

modify() public method

Is used internally when applying compatibility values: the "overlay" type subset of version dependent values is detected based on current version and passed to this function which then assimilates the values.
public modify ( array $alternativeManifestDeclaration ) : void
$alternativeManifestDeclaration array
return void

upcast() public method

Upcasts (promotes) the instance to another class name by creating a new instance of the provided class and passing $this->manifest as seed. If NULL is passed as desired class name the expected final class name is determined based on naming convention.
public upcast ( string | null $desiredClassName = NULL ) : FluidTYPO3\Flux\Package\FluxPackageInterface
$desiredClassName string | null
return FluidTYPO3\Flux\Package\FluxPackageInterface