public void HandleMessage(Message message, IEntity IEntity) { // persist var context = new CommandContext(responderResolver.Resolve(IEntity), message, IEntity); //context.IEntity.id? var command = _commands.SingleOrDefault(cmd => cmd.Match(message.Text)); command.Execute(context); //<-- tasks eventueel? }
// elke 5 seconde public void ProcessRunningTasks() { LongRunningTask[] runningTasks = null; // = retrieveTasks() foreach (var task in runningTasks) { //blockchain valideer //validated -> process task /* * val receipt = web3j.ethGetTransactionReceipt(transaction.hash).sendAsync().get() * val bonuses = BBBCore.contract.getBonusGivenEvents(receipt.result) * for(bonusGivenEvent in bonuses) { * send(bonus) * } */ if (!task.IsValid()) { continue; } var responder = _resolver.Resolve(task.IEntity); responder.Send(task.IEntity); } /* * * tasks = getAllNewTasks() * * for task in tasks { * * if(task.isValid()) { * result = task.result * * sendResponse(task, result) <-- response naar specifieke IEntity..? * update(task) * } * * * * } */ }