/******************************************************************************* * Copyright (c) 2013 Olivier Moises * * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Olivier Moises- initial API and implementation *******************************************************************************/ package org.eclipse.wazaabi.engine.edp; import org.eclipse.wazaabi.engine.edp.coderesolution.AbstractCodeDescriptor; public interface ComponentFactory extends IdentifiableFactory { /** * Creates and returns a component (which can be of any type of * </code>Object</code>). * * @param callingContext * The instance which calls this method * @param model * the Object used as a model during the creation phase of the * component. For instance, {@link AbstractCodeDescriptor} are * created given a specific URI which is a {@link String}. In * this case, the model is the URI. * @param creationHint * Any type of Object (may be null) which can help during the * creation phase of the component. * @return A Object if the component has been created, null otherwise. */ public Object createComponent(Object callingContext, Object model, Object creationHint); }