use of com.vaticle.typedb.core.common.parameters.Options in project grakn by graknlabs.
the class QueryService method execute.
public void execute(TransactionProto.Transaction.Req req) {
try (FactoryTracingThreadStatic.ThreadTrace ignored = traceOnThread("query")) {
QueryProto.QueryManager.Req queryReq = req.getQueryManagerReq();
Options.Query options = new Options.Query();
applyDefaultOptions(options, queryReq.getOptions());
applyQueryOptions(options, queryReq.getOptions());
UUID reqID = byteStringAsUUID(req.getReqId());
switch(queryReq.getReqCase()) {
case DEFINE_REQ:
this.define(queryReq.getDefineReq().getQuery(), options, reqID);
return;
case UNDEFINE_REQ:
this.undefine(queryReq.getUndefineReq().getQuery(), options, reqID);
return;
case MATCH_REQ:
this.match(queryReq.getMatchReq().getQuery(), options, reqID);
return;
case MATCH_AGGREGATE_REQ:
this.matchAggregate(queryReq.getMatchAggregateReq().getQuery(), options, reqID);
return;
case MATCH_GROUP_REQ:
this.matchGroup(queryReq.getMatchGroupReq().getQuery(), options, reqID);
return;
case MATCH_GROUP_AGGREGATE_REQ:
this.matchGroupAggregate(queryReq.getMatchGroupAggregateReq().getQuery(), options, reqID);
return;
case INSERT_REQ:
this.insert(queryReq.getInsertReq().getQuery(), options, reqID);
return;
case DELETE_REQ:
this.delete(queryReq.getDeleteReq().getQuery(), options, reqID);
return;
case UPDATE_REQ:
this.update(queryReq.getUpdateReq().getQuery(), options, reqID);
return;
case EXPLAIN_REQ:
this.explain(queryReq.getExplainReq().getExplainableId(), reqID);
return;
case REQ_NOT_SET:
default:
throw TypeDBException.of(UNKNOWN_REQUEST_TYPE);
}
}
}
use of com.vaticle.typedb.core.common.parameters.Options in project grakn by graknlabs.
the class TypeDBService method sessionOpen.
@Override
public void sessionOpen(SessionProto.Session.Open.Req request, StreamObserver<SessionProto.Session.Open.Res> responder) {
try {
Instant start = Instant.now();
Arguments.Session.Type sessionType = Arguments.Session.Type.of(request.getType().getNumber());
Options.Session options = applyDefaultOptions(new Options.Session(), request.getOptions());
TypeDB.Session session = databaseMgr.session(request.getDatabase(), sessionType, options);
SessionService sessionSvc = new SessionService(this, session, options);
sessionServices.put(sessionSvc.UUID(), sessionSvc);
int duration = (int) Duration.between(start, Instant.now()).toMillis();
responder.onNext(openRes(sessionSvc.UUID(), duration));
responder.onCompleted();
} catch (RuntimeException e) {
LOG.error(e.getMessage(), e);
responder.onError(exception(e));
}
}
Aggregations