« Previous | Next » 

Revision 9df55671

ID9df5567135e42e1ab312f9a560c3eed382517c83

Added by Sebastian Kurfuerst about 9 years ago

[!!!][FEATURE] (Core): Nested FLOW3 Application Contexts

With this change, it is possible to use nested FLOW3 contexts like
"Production/Live" or "Production/Staging/Server1". The main context,
has to be one of "Production", "Development" or "Testing", whereas
arbitrary sub contexts are supported.

If you run in the context "Production/Staging/Server1", the configuration
is inherited in the following way (from most specific to most general):

- Production/Staging/Server1
- Production/Staging
- Production
- as a fallback, the, non-context-specific configuration is used

This change is breaking in the following cases:

- You called TYPO3\FLOW3\Core\Bootstrap::getContext() or
TYPO3\FLOW3\Object\ObjectManagerInterface::getContext()

In this case, not the context string is returned anymore, but instead
the TYPO3\FLOW3\Core\ApplicationContext object. It can be cast to a string to
get the old behavior back; but usually you instead want to call
$context->isDevelopment(), $context->isProduction() or $context->isTesting().

- You wrote your own cache backend

The cache backend constructor now expects the $context object to be of type
TYPO3\FLOW3\Core\ApplicationContext.

Additionally, we removed some leftovers from the configuration manager,
especially Signals/Slots configuration as this is not used anymore.

Releases: 1.1
Resolves: #33581
Change-Id: I3ffe0f98b0c92df41edaa15c7d895422aab28411

  • added
  • modified
  • copied
  • renamed
  • deleted