import org.simantics.db.ReadGraph;
import org.simantics.db.Resource;
-import org.simantics.db.common.utils.Logger;
+import org.simantics.db.common.request.UniqueRead;
import org.simantics.db.exception.DatabaseException;
import org.simantics.db.layer0.adapter.GenericRelationIndex;
import org.simantics.db.service.QueryControl;
import org.simantics.operation.Layer0X;
import org.simantics.scl.runtime.function.FunctionImpl4;
import org.simantics.scl.runtime.function.UnsaturatedFunction2;
+import org.slf4j.LoggerFactory;
/**
* dependencies:
*/
public class Dependencies extends FunctionImpl4<ReadGraph, Resource, String, Integer, Object> {
+ private static final org.slf4j.Logger LOGGER = LoggerFactory.getLogger(Dependencies.class);
+
public static final String FIELD_MODEL = "Model";
public static final String FIELD_PARENT = "Parent";
public static final String FIELD_RESOURCE = "Resource";
public static final String FIELD_GUID = "GUID";
public static final String FIELD_NAME_SEARCH = "NameSearch";
public static final String FIELD_TYPES_SEARCH = "TypesSearch";
+ public static final String FIELD_TYPE_RESOURCE = "TypeId";
protected Resource getIndexRelation(ReadGraph graph) {
return Layer0X.getInstance(graph).DependenciesRelation;
}
protected static String getBindingPattern() {
- return "bfffffff";
+ return "bffffffff";
}
@Override
final int maxResults = _maxResults != null ? _maxResults : Integer.MAX_VALUE;
QueryControl qc = graph.getService(QueryControl.class);
- return index.query(qc.getIndependentGraph(graph), query, getBindingPattern(), new Object[] { model }, maxResults);
+ return qc.syncRequestIndependent(graph, new UniqueRead<Object>() {
+ @Override
+ public Object perform(ReadGraph graph) throws DatabaseException {
+ return index.query(graph, query, getBindingPattern(), new Object[] { model }, maxResults);
+ }
+ });
} catch (DatabaseException e) {
- Logger.defaultLogError(e);
+ LOGGER.error("Error while performing index query", e);
return null;
}
}