Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>
import model
# Delay in seconds before the next request after an error
-fun request_delay_on_error: Int do return 60
+fun request_delay_on_error: Float do return 60.0
redef class App
redef fun on_create
redef var rest_action
# Should this request be delayed by `request_delay_on_error` seconds?
- var delay: Bool
-
- redef fun main
- do
- if delay then nanosleep(request_delay_on_error, 0)
- return super
- end
+ fun after_error(value: Bool) is autoinit do if value then delay = request_delay_on_error
end
# Async request to list latest posts, either immediately or by push notification
# Should the response content be deserialized from JSON?
var deserialize_json = true is writable
+ # Delay in seconds before sending this request
+ var delay = 0.0 is writable
+
redef fun start
do
before
redef fun main
do
+ var delay = delay
+ if delay > 0.0 then delay.sleep
+
var uri = rest_server_uri / rest_action
# Execute REST request