Feature #2110
Add support for custom factories
Status: | Resolved | Start date: | 2008-11-10 | |
---|---|---|---|---|
Priority: | Should have | Due date: | ||
Assigned To: | Robert Lemke | % Done: | 100% |
|
Category: | Object | |||
Target version: | TYPO3 Flow Base Distribution - 1.0 alpha 1 | |||
PHP Version: | Complexity: | |||
Has patch: |
Description
The Object Framework should support custom factories which are used whenever a object of a certain type needs to be instantiated.
Such a factory could be defined / configured in the Objects configuration like this:
F3\FLOW3\Cache\CacheInterface ‧‧factoryClassName:‧F3\FLOW3\Cache\Factory
Now whenever a "CacheInterface" object type needs to be intantiated, the Cache Factory's create() method will be called. Of course the arguments for the create() method still have to be defined:
$myCache = $this->objectFactory->create('F3\FLOW3\Cache\CacheInterface', 'cacheId', 'F3\FLOW3\Cache\VariableCache', 'F3\FLOW3\Cache\Backend\File');
Related issues
Associated revisions
- FLOW3: (Cache) Introduced two new interfaces - for Cache frontends and backends
- FLOW3: (Cache) Fixed an issue with the File Backend: initializeObject() overrode the cacheDirectory setting even if it has been set through setter injection
- FLOW3: (Object) The property / argument type "reference" has been renamed to "object" (see also updated documentation)
- FLOW3: (Object) The object configuration option "constructorArguments" has been renamed to "arguments"
- FLOW3: (Object) In the code "Constructor Arguments" are now referred to simply as "Arguments"
- FLOW3: (Object) Implemented support for custom factories. Resolves #2110
- FLOW3: (Object) Implemented support for specifying arguments / properties for objects which are injected. Resolves #2109
- FLOW3: (Resource) Added the file_exists() check again to the Class Loader. Ommitting the check resulted in hard-to-track error messages
- FLOW3: (Documentation) Updated the documentation. Still missing: custom factories and syntax of feature #2109
- FLOW3: (TestPackage) Adopted and cleaned up the Object related tests
History
#1 Updated by Robert Lemke over 6 years ago
- Status changed from Accepted to Resolved
- % Done changed from 0 to 100
Applied in changeset r1670.