use of org.apache.zeppelin.resource.ResourcePool in project zeppelin by apache.
the class MockInterpreterResourcePool method interpret.
@Override
public InterpreterResult interpret(String st, InterpreterContext context) {
String[] stmt = st.split(" ");
String cmd = stmt[0];
String noteId = null;
String paragraphId = null;
String name = null;
if (stmt.length >= 2) {
String[] npn = stmt[1].split(":");
if (npn.length >= 3) {
noteId = npn[0];
paragraphId = npn[1];
name = npn[2];
} else {
name = stmt[1];
}
}
String value = null;
if (stmt.length >= 3) {
value = stmt[2];
}
ResourcePool resourcePool = context.getResourcePool();
Object ret = null;
if (cmd.equals("put")) {
resourcePool.put(noteId, paragraphId, name, value);
} else if (cmd.equalsIgnoreCase("get")) {
Resource resource = resourcePool.get(noteId, paragraphId, name);
if (resource != null) {
ret = resourcePool.get(noteId, paragraphId, name).get();
} else {
ret = "";
}
} else if (cmd.equals("remove")) {
ret = resourcePool.remove(noteId, paragraphId, name);
} else if (cmd.equals("getAll")) {
ret = resourcePool.getAll();
} else if (cmd.equals("invoke")) {
Resource resource = resourcePool.get(noteId, paragraphId, name);
LOGGER.info("Resource: " + resource);
if (stmt.length >= 4) {
Resource res = resource.invokeMethod(value, stmt[3]);
LOGGER.info("After invokeMethod: " + resource);
ret = res.get();
} else {
ret = resource.invokeMethod(value);
LOGGER.info("After invokeMethod: " + ret);
}
}
try {
// wait for watcher executed
Thread.sleep(500);
} catch (InterruptedException e) {
}
Gson gson = new Gson();
return new InterpreterResult(Code.SUCCESS, gson.toJson(ret));
}
use of org.apache.zeppelin.resource.ResourcePool in project zeppelin by apache.
the class ZeppelinContext method put.
/**
* Add object into resource pool
*
* @param name
* @param value
*/
@ZeppelinApi
public void put(String name, Object value) {
ResourcePool resourcePool = interpreterContext.getResourcePool();
resourcePool.put(name, value);
}
use of org.apache.zeppelin.resource.ResourcePool in project zeppelin by apache.
the class ZeppelinContext method get.
/**
* Get object from resource pool
* Search local process first and then the other processes
*
* @param name
* @param clazz The class of the returned value
* @return null if resource not found
*/
@ZeppelinApi
public <T> T get(String name, Class<T> clazz) {
ResourcePool resourcePool = interpreterContext.getResourcePool();
Resource resource = resourcePool.get(name);
if (resource != null) {
return resource.get(clazz);
} else {
return null;
}
}
use of org.apache.zeppelin.resource.ResourcePool in project zeppelin by apache.
the class ZeppelinContext method get.
/**
* Get object from resource pool
* Search local process first and then the other processes
*
* @param name
* @return null if resource not found
*/
@ZeppelinApi
public Object get(String name) {
ResourcePool resourcePool = interpreterContext.getResourcePool();
Resource resource = resourcePool.get(name);
if (resource != null) {
return resource.get();
} else {
return null;
}
}
use of org.apache.zeppelin.resource.ResourcePool in project zeppelin by apache.
the class Helium method suggestApp.
public HeliumPackageSuggestion suggestApp(Paragraph paragraph) {
HeliumPackageSuggestion suggestion = new HeliumPackageSuggestion();
Interpreter intp = null;
try {
intp = paragraph.getBindedInterpreter();
} catch (InterpreterNotFoundException e) {
return suggestion;
}
ResourcePool resourcePool = intp.getInterpreterGroup().getResourcePool();
ResourceSet allResources;
if (resourcePool != null) {
if (resourcePool instanceof DistributedResourcePool) {
allResources = ((DistributedResourcePool) resourcePool).getAll(true);
} else {
allResources = resourcePool.getAll();
}
} else {
allResources = interpreterSettingManager.getAllResources();
}
for (List<HeliumPackageSearchResult> pkgs : allPackages.values()) {
for (HeliumPackageSearchResult pkg : pkgs) {
if (pkg.getPkg().getType() == HeliumType.APPLICATION && pkg.isEnabled()) {
ResourceSet resources = ApplicationLoader.findRequiredResourceSet(pkg.getPkg().getResources(), paragraph.getNote().getId(), paragraph.getId(), allResources);
if (resources == null) {
continue;
} else {
suggestion.addAvailablePackage(pkg);
}
break;
}
}
}
suggestion.sort();
return suggestion;
}
Aggregations