001 /*******************************************************************************
002 * Copyright (C) PicoContainer Organization. All rights reserved.
003 * ---------------------------------------------------------------------------
004 * The software in this package is published under the terms of the BSD style
005 * license a copy of which has been included with this distribution in the
006 * LICENSE.txt file.
007 ******************************************************************************/
008 package org.picocontainer.script.xml;
009
010 import org.picocontainer.PicoContainer;
011 import org.w3c.dom.Element;
012
013 /**
014 * Factory that creates instances from DOM Elements
015 *
016 * @author Paul Hammant
017 * @author Marcos Tarruella
018 */
019 public interface XMLComponentInstanceFactory {
020 /**
021 * Creates an instance of an Object from a DOM Element
022 *
023 * @param container the PicoContainer
024 * @param element the DOM Element
025 * @param classLoader the ClassLoader
026 * @return An Object instance
027 */
028 Object makeInstance(PicoContainer container, Element element, ClassLoader classLoader);
029 }