package org.simantics.db.impl.support; import java.util.concurrent.Semaphore; import java.util.function.Consumer; import org.simantics.db.exception.DatabaseException; import org.simantics.db.procedure.Procedure; import org.simantics.db.request.DelayedWrite; import org.simantics.db.request.DelayedWriteResult; import org.simantics.db.request.Write; import org.simantics.db.request.WriteOnly; import org.simantics.db.request.WriteOnlyResult; import org.simantics.db.request.WriteResult; /** * @author Tuukka Lehtonen */ public interface WriteRequestScheduleSupport { void scheduleRequest(DelayedWrite request, Consumer callback, Semaphore notify, Boolean combine); void scheduleRequest(DelayedWriteResult request, Procedure procedure, Semaphore notify, Boolean combine); void scheduleRequest(Write request, Consumer callback, Semaphore notify, Boolean combine); void scheduleRequest(WriteOnly request, Consumer callback, Semaphore notify, Boolean combine); void scheduleRequest(WriteOnlyResult request, Procedure callback, Semaphore notify, Boolean combine); void scheduleRequest(WriteResult request, Procedure procedure, Semaphore notify, Boolean combine); }