Interface Decomposable

All Known Subinterfaces:
ComponentComposite, ComponentComposite.ExtendedComponentComposite<CTX,CON>, Decomposable.DecomposeAutomaton
All Known Implementing Classes:
AbstractComponentComposite, AbstractComponentComposite.ExtendedCompositeComponentImpl

public interface Decomposable
This mixin might be implemented by a component in order to provide decomposition facilities. No exception is thrown as decomposition must work always!

The "decompose()" method decompose() differs from the "destroy()" method Destroyable.destroy() in that "destroy()" shuts down the component in memory, whereas "decompose()" also tears down external resources such as files or DB schemas. This means that with "decompose()" all external data will be lost, as with "destroy()" external data will be kept (in terms that it makes sense for the actual implementation).