Some refactoring
* Don't export record field setters (unless required) * Remove get- prefix from record getters * Introduce handlers (simplified tasks)
This commit is contained in:
parent
297d779ea4
commit
52f011267b
6 changed files with 89 additions and 51 deletions
|
@ -6,21 +6,19 @@
|
|||
#:use-module (ordo context)
|
||||
#:export (task
|
||||
task?
|
||||
get-task-description
|
||||
set-task-description!
|
||||
get-task-register
|
||||
set-task-register!
|
||||
get-task-triggers
|
||||
set-task-triggers!
|
||||
task-description
|
||||
task-action
|
||||
task-register
|
||||
task-triggers
|
||||
run-task))
|
||||
|
||||
(define-record-type <task>
|
||||
(make-task description action register triggers)
|
||||
task?
|
||||
(description get-task-description set-task-description!)
|
||||
(action get-task-action set-task-action!)
|
||||
(register get-task-register set-task-regiseter!)
|
||||
(triggers get-task-triggers set-task-triggers!))
|
||||
(description task-description)
|
||||
(action task-action)
|
||||
(register task-register)
|
||||
(triggers task-triggers))
|
||||
|
||||
(define* (task description action #:key (register #f) (triggers '()))
|
||||
(make-task description action register triggers))
|
||||
|
@ -28,10 +26,9 @@
|
|||
(define (run-task conn ctx task)
|
||||
(match task
|
||||
(($ <task> description action register triggers)
|
||||
(format #t "START ~a~%" description)
|
||||
(format #t "RUNNING TASK ~a~%" description)
|
||||
(let ((result (action conn ctx)))
|
||||
(when register
|
||||
(register-context-var! ctx register result))
|
||||
(when triggers
|
||||
(add-context-triggers! ctx triggers))
|
||||
(format #t "END~%")))))
|
||||
(add-context-triggers! ctx triggers))))))
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue