
prerna.project.impl.AddRPYProjectPath Maven / Gradle / Ivy
The newest version!
package prerna.project.impl;
import prerna.ds.py.PyTranslator;
import prerna.reactor.AbstractReactor;
import prerna.reactor.frame.r.util.AbstractRJavaTranslator;
import prerna.sablecc2.om.ReactorKeysEnum;
import prerna.sablecc2.om.nounmeta.NounMetadata;
import prerna.util.AssetUtility;
public class AddRPYProjectPath extends AbstractReactor {
public AddRPYProjectPath()
{
this.keysToGet = new String [] {ReactorKeysEnum.PROJECT.getKey()};
this.keyRequired = new int[] {1};
}
@Override
public NounMetadata execute()
{
// TODO Auto-generated method stub
// get the project id
// set it as part of path
organizeKeys();
PyTranslator pyt = this.insight.getPyTranslator();
AbstractRJavaTranslator rt = this.insight.getRJavaTranslator(this.getClass().getName());
String projectId = keyValue.get(keysToGet[0]);
String basePath = AssetUtility.getProjectAssetFolder(projectId);
String folderName = basePath + "/py";
folderName = folderName.replace("\\", "/");
if(pyt != null)
{
String path = "import sys";
pyt.runScript(path);
path = "sys.path.append('" + folderName +"')";
pyt.runScript(path);
}
if(rt != null)
{
rt.runR("setwd('" + folderName + "')");
}
return NounMetadata.getSuccessNounMessage("Added " + projectId + " to path");
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy