001 package com.hammurapi.config.runtime;
002
003 import org.eclipse.emf.ecore.EObject;
004
005 import com.hammurapi.config.bootstrap.ConfigurationException;
006
007 /**
008 * Objects which need lifecycle management and advanced configuration (beyond property injection) shall implement this interface.
009 * @author Pavel Vlasov
010 * @param <D> Model element type which is used to configure given instance.
011 */
012 public interface Component<D extends EObject> {
013
014 /**
015 * Initializes element
016 * @param context
017 */
018 void init(ConfigurationContext<D> context) throws ConfigurationException;
019
020 }