
prerna.engine.api.IFunctionEngine Maven / Gradle / Ivy
The newest version!
package prerna.engine.api;
import java.util.List;
import java.util.Map;
import prerna.engine.impl.function.FunctionParameter;
public interface IFunctionEngine extends IEngine {
// this is what the FE sends for the type of storage we are creating
// as a result, cannot be a key in the smss file
String FUNCTION_TYPE = "FUNCTION_TYPE";
String NAME_KEY = "FUNCTION_NAME";
String DESCRIPTION_KEY = "FUNCTION_DESCRIPTION";
String PARAMETER_KEY = "FUNCTION_PARAMETERS";
String REQUIRED_PARAMETER_KEY = "FUNCTION_REQUIRED_PARAMETERS";
/**
*
* @param args
* @return
*/
Object execute(Map parameterValues);
/**
* Unique name of the function
* @return
*/
String getFunctionName();
/**
*
*/
void setFunctionName(String functionName);
/**
* Description of what this function does
* @return
*/
String getFunctionDescription();
/**
*
* @param description
*/
void setFunctionDescription(String description);
/**
*
* @return
*/
List getParameters();
/**
*
* @param parameters
*/
void setParameters(List parameters);
/**
*
* @return
*/
List getRequiredParameters();
/**
*
* @param requiredParameters
*/
void setRequiredParameters(List requiredParameters);
/**
*
* @return
*/
org.json.JSONObject getFunctionDefintionJson();
/**
*
* @return json representation of function
*/
Map buildFunctionEngineToolMap();
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy