Ejemplo n.º 1
0
        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?
        }
Ejemplo n.º 2
0
        // 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)
             *  }
             *
             *
             *
             * }
             */
        }