com.novartis.opensource.yada.adaptor.RdsAdaptor Maven / Gradle / Ivy
The newest version!
package com.novartis.opensource.yada.adaptor;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.script.ScriptEngine;
import javax.script.ScriptException;
import org.apache.log4j.Logger;
import org.renjin.eval.EvalException;
import org.renjin.script.RenjinScriptEngineFactory;
import org.renjin.sexp.SEXP;
import com.novartis.opensource.yada.YADAQuery;
import com.novartis.opensource.yada.YADAQueryResult;
import com.novartis.opensource.yada.YADARequest;
/**
* @author dvaron
* @since 9.1.0
*/
public class RdsAdaptor extends FileSystemAdaptor {
/**
* Local logger instance
*/
private static Logger l = Logger.getLogger(RdsAdaptor.class);
/**
* Delimeter separating file name and references to objects in file
*/
protected final static String INDEX_DELIMITER_RX = "(?:#(.+))?";
/**
* Regex matches strings like any non-path-delimiter char followed by optional path delimiter chars.
* Path pattern to facilitate extraction of path and arguments into separate groups *
*/
protected final static String PATH_RX = "^([^#]+)?"+INDEX_DELIMITER_RX+"$";
/**
* Constant equal to: {@code (\\?[idvn])}
*/
protected final static String PARAM_SYMBOL_RX = "\\?[idvn]";
/**
* No arg constructor (unused)
*/
public RdsAdaptor() {
}
/**
* @param yadaReq the request containing the query the adaptor will execute
*/
public RdsAdaptor(YADARequest yadaReq) {
super(yadaReq);
}
@Override
public void execute(YADAQuery yq) throws YADAAdaptorExecutionException
{
Object result = null;
resetCountParameter(yq);
for(int row=0;row © 2015 - 2025 Weber Informatics LLC | Privacy Policy