import java.util.Collection;
import java.util.Set;
import java.util.concurrent.Semaphore;
+import java.util.function.Consumer;
import org.simantics.databoard.accessor.Accessor;
import org.simantics.databoard.binding.Binding;
import org.simantics.databoard.type.Datatype;
+import org.simantics.db.AsyncRequestProcessor;
import org.simantics.db.ReadGraph;
import org.simantics.db.RequestProcessor;
import org.simantics.db.Resource;
import org.simantics.db.request.DelayedWrite;
import org.simantics.db.request.Read;
import org.simantics.db.request.Write;
-import org.simantics.utils.datastructures.Callback;
/**
* Synchronous Transaction. <p>
}
}
- public static void startTransaction(RequestProcessor processor, boolean write) throws DatabaseException {
+ public static void startTransaction(AsyncRequestProcessor processor, boolean write) throws DatabaseException {
startTransaction(processor, write ? Type.WRITE : Type.READ);
}
- public static void startTransaction(RequestProcessor processor, Type type) throws DatabaseException {
+ public static void startTransaction(AsyncRequestProcessor processor, Type type) throws DatabaseException {
switch (type) {
case READ:
{
t.ts = new Semaphore(0);
transactions.set(t);
- Callback<DatabaseException> callback = new Callback<DatabaseException>() {
- @Override
- public void run(DatabaseException parameter) {
- t.error = parameter;
- t.es.release(9999);
- }
+ Consumer<DatabaseException> callback = parameter -> {
+ t.error = parameter;
+ t.es.release(9999);
};
Write request = new Write() {
t.ts = new Semaphore(0);
transactions.set(t);
- Callback<DatabaseException> callback = new Callback<DatabaseException>() {
- @Override
- public void run(DatabaseException parameter) {
- t.error = parameter;
- t.es.release(9999);
- }
+ Consumer<DatabaseException> callback = parameter -> {
+ t.error = parameter;
+ t.es.release(9999);
};
DelayedWrite request = new DelayedWriteRequest() {