package org.simantics.db.layer0.adapter; import org.simantics.databoard.Bindings; import org.simantics.db.AsyncReadGraph; import org.simantics.db.RelationContext; import org.simantics.db.Resource; import org.simantics.db.adaption.Adapter; import org.simantics.db.procedure.AsyncProcedure; public class LiteralBooleanStringAdapter implements Adapter { @Override public void adapt(AsyncReadGraph g, Resource source, RelationContext s, final AsyncProcedure procedure) { g.forValue(s.getStatement().getObject(), Bindings.BOOLEAN, new ProcedureWrapper(procedure)); } private static class ProcedureWrapper implements AsyncProcedure { AsyncProcedure procedure; public ProcedureWrapper(AsyncProcedure procedure) { this.procedure = procedure; } public void execute(AsyncReadGraph graph, Boolean result) { procedure.execute(graph, result.toString()); }; @Override public void exception(AsyncReadGraph graph, Throwable throwable) { procedure.exception(graph, throwable); } } }