ScriptEngineDriver.java
/**
* @(#)ScriptEngineDriver.java
* Copyright (C) 2008-2011 delhezi.com
*
* This class is released under the:
* GNU Lesser General Public License (LGPL) version 3 or later.
* http://www.gnu.org/copyleft/lesser.html
*/
package com.delhezi.ga.fitnessfunction.drivers;
import com.delhezi.ga.exception.GeneticAlgorithmException;
import com.delhezi.ga.utility.ScriptEngine;
/**
* <code>ScriptEngineDriver</code>: Silnik skryptów dla funkcji celu.
* @version 1.0 2009-12-10
* @author <a href="mailto:wojciech.wolszczak@delhezi.com">
* Wojciech Wolszczak</a>
*/
public class ScriptEngineDriver extends ScriptEngine
implements IFitnessFunctionDriver {
/**
* Konstruktor.
* @param scriptEnginName Nazwa silnika skryptów. Przykładowe wartości:
* [js, rhino, JavaScript, javascript,
* ECMAScript, ecmascript].
* @param scriptPath Bezwzględna ścieżka zakończona "/" do katalogu w
* którym składowane są skrytpy.
* @param scriptFile Naza pliku ze skrytem.
* @throws GeneticAlgorithmException Propagacja DERC-1-9-1-1, DERC-1-9-1-2,
* DERC-1-9-1-3
* @since 1.0
*/
public ScriptEngineDriver(final String scriptEnginName,
final String scriptPath,
final String scriptFile)
throws GeneticAlgorithmException {
super(scriptEnginName, scriptPath, scriptFile);
}
/**
* Wywołuje funkcję celu zdefiniowaną w skrypcie.
* @param functionName Nazwa funkcji celu zdefiniowanej w skrypcie.
* @param args Argumenty do przekazania do wywoływanej funkcji.
* @return Wartość zwrócona przez funkcję celu.
* @throws GeneticAlgorithmException Propagacja DERC-1-9-1-4, DERC-1-9-1-5
* @since 1.0
*/
public final double invokeFunction(final String functionName,
final Object... args)
throws GeneticAlgorithmException {
return (Double) super.invoke(functionName, args);
}
}