]> gerrit.simantics Code Review - simantics/platform.git/blob - bundles/org.simantics.db.impl/src/org/simantics/db/impl/support/WriteRequestScheduleSupport.java
Use java.util.Consumer instead of os.utils.datastructures.Callback
[simantics/platform.git] / bundles / org.simantics.db.impl / src / org / simantics / db / impl / support / WriteRequestScheduleSupport.java
1 package org.simantics.db.impl.support;
2
3 import java.util.concurrent.Semaphore;
4 import java.util.function.Consumer;
5
6 import org.simantics.db.exception.DatabaseException;
7 import org.simantics.db.procedure.Procedure;
8 import org.simantics.db.request.DelayedWrite;
9 import org.simantics.db.request.DelayedWriteResult;
10 import org.simantics.db.request.Write;
11 import org.simantics.db.request.WriteOnly;
12 import org.simantics.db.request.WriteOnlyResult;
13 import org.simantics.db.request.WriteResult;
14
15 /**
16  * @author Tuukka Lehtonen
17  */
18 public interface WriteRequestScheduleSupport {
19
20     <T> void scheduleRequest(DelayedWrite request, Consumer<DatabaseException> callback, Semaphore notify,
21             Boolean combine);
22
23     <T> void scheduleRequest(DelayedWriteResult<T> request, Procedure<T> procedure, Semaphore notify, Boolean combine);
24
25     <T> void scheduleRequest(Write request, Consumer<DatabaseException> callback, Semaphore notify, Boolean combine);
26
27     <T> void scheduleRequest(WriteOnly request, Consumer<DatabaseException> callback, Semaphore notify, Boolean combine);
28
29     <T> void scheduleRequest(WriteOnlyResult<T> request, Procedure<T> callback, Semaphore notify, Boolean combine);
30
31     <T> void scheduleRequest(WriteResult<T> request, Procedure<T> procedure, Semaphore notify, Boolean combine);
32
33 }