package com.sap.furcas.runtime.parser.textblocks; import com.sap.furcas.metamodel.FURCAS.textblocks.TextBlock; import com.sap.furcas.runtime.common.exceptions.DeferredModelElementCreationException; import com.sap.furcas.runtime.parser.textblocks.observer.TextBlockProxy; /** * Util interface to decouple instantiation of Textblocks. */ public interface TextBlockFactory { /** * Creates a new empty {@link TextBlock} having set some initial properties. * * @return a newly instantiated {@link TextBlock} */ TextBlock createBlock(); /** * Instantiate a new {@link TextBlock} using the information given by the * <tt>proxy</tt> and the given parent {@link TextBlock} * * @param proxy the proxy for which to instantiate a new {@link TextBlock} * @param parent The parent to which to add the new proxy. * @return A newly instantiated {@link TextBlock} */ TextBlock createNewTextBlock(TextBlockProxy proxy, TextBlock parent) throws DeferredModelElementCreationException; }