/*
 * Created on 2004-8-29
 *
 * To change the template for this generated file go to
 * Window - Preferences - Java - Code Generation - Code and Comments
 */
package org.huihoo.willow;

import java.net.URL;

import workflow.WorkflowException;
import workflow.wfmc.xpdl.WorkflowPackage;

/**
 * @author reic
 *
 * To change the template for this generated type comment go to
 * Window - Preferences - Java - Code Generation - Code and Comments
 */
public interface ContextDeployer
{
	// ----------------------------------------------------- Manifest TypeConstants

	/**
	 * The ContainerEvent event type sent when a new application is
	 * being installed by <code>install()</code>, before it has been
	 * started.
	 */
	public static final String PRE_INSTALL_EVENT = "pre-install";

	/**
	 * The ContainerEvent event type sent when a new application is
	 * installed by <code>install()</code>, after it has been started.
	 */
	public static final String INSTALL_EVENT = "install";

	/**
	 * The ContainerEvent event type sent when an existing application is
	 * removed by <code>remove()</code>.
	 */
	public static final String REMOVE_EVENT = "remove";

	// --------------------------------------------------------- Public Methods

	/**
	 * Return the name of the Container with which this ContextDeployer is associated.
	 */
	public String getName();

	public void install(String xpdlFileName,URL xpdlFileURL) throws WorkflowException;
	public void remove(String xpdlFileName) throws WorkflowException;
	
	public WorkflowPackage findDeployedPackage(String xpdlFileName);
	public String[] findDeployedPackages();


	

}
