import org.simantics.Simantics;
import org.simantics.db.ReadGraph;
+import org.simantics.db.RequestProcessor;
import org.simantics.db.Resource;
import org.simantics.db.exception.DatabaseException;
import org.simantics.db.request.Read;
private static Map<String,Instruction> cache = new HashMap<String, Instruction>();
- public static void preloadCache(String libUri) throws Exception {
- List<Item> items = P3DUtil.getEnds(libUri);
- items.addAll(P3DUtil.getInlines(libUri));
- items.addAll(P3DUtil.getNozzles(libUri));
- items.addAll(P3DUtil.getTurns(libUri));
+ public static void preloadCache(RequestProcessor session, String libUri) throws Exception {
+ List<Item> items = P3DUtil.getEnds(session, libUri);
+ items.addAll(P3DUtil.getInlines(session, libUri));
+ items.addAll(P3DUtil.getNozzles(session, libUri));
+ items.addAll(P3DUtil.getTurns(session, libUri));
for (Item item : items) {
- Instruction inst = createInstruction(item.getUri());
+ Instruction inst = createInstruction(session, item.getUri());
cache.put(item.getUri(), inst);
}
}
public static PipeControlPoint create(PipelineComponent component) throws Exception {
Instruction inst = cache.get(component.getType());
if (inst == null) {
- inst = createInstruction(component.getType());
+ inst = createInstruction(Simantics.getSession(), component.getType());
cache.put(component.getType(), inst);
}
if (inst == null) {
}
- private static Instruction createInstruction(final String type) throws Exception {
- return Simantics.getSession().syncRequest(new Read<Instruction>() {
+ private static Instruction createInstruction(RequestProcessor session, final String type) throws Exception {
+ return session.syncRequest(new Read<Instruction>() {
@Override
public Instruction perform(ReadGraph graph) throws DatabaseException {
Resource res = graph.getResource(type);