//----------------------------BEGIN LICENSE----------------------------
/* 
 * Willow : the Open Source WorkFlow Project
 * Distributable under GNU LGPL license by gun.org
 *
 * Copyright (C) 2004-2010 huihoo.org 
 * Copyright (C) 2004-2010  ZosaTapo <dertyang@hotmail.com> 
 * 
 * ====================================================================
 * Project Homepage : http://www.huihoo.org/willow
 * Source Forge     : http://sourceforge.net/projects/huihoo
 * Mailing list     : willow@lists.sourceforge.net 
 */
//----------------------------END  LICENSE-----------------------------
package org.huihoo.workflow.script.compiler;

import java.io.OutputStream;

public interface JavaCompiler
{
	/**
	 *  Where should I keep generated code including java and class?
	 */
	public void setOutputDir(String outputDir);
	/**
	 * Should we include debug information in compiled class?
	 */
	public void setClassDebugInfo(boolean classDebugInfo);
	/**
	 * What classpath should I use while compiling the java source
	 * generated from script files?
	 */
	public void setClassPath(String classPath);
	/**
	 * Java platform encoding to generate the script file class.
	 */
	public void setJavaEncoding(String javaEncoding);
	/**
	 * Set where you want the compiler output (messages) to go 
	 */
	public void setMsgOutput(OutputStream out);

	/**
	 * Full path name of the Java source file to be compiled
	 */
	public void setJavaFilePath(String javaFilePath);

	/**
	* Execute the compiler
	* @param source - file name of the source to be compiled
	*/
	public boolean compile();
}
