diff --git a/lib/simplekit.rb b/lib/simplekit.rb index e4ef4d23b16186275efefbcd3ae3334e0462400c..82e3155d514cc674d71af6f8cd826254145af732 100644 --- a/lib/simplekit.rb +++ b/lib/simplekit.rb @@ -54,7 +54,7 @@ module SimpleKit # - +args+ -> zero or more named arguments to pass to the event # at invocation time. These should be specified with labels, and # consequently they can be placed in any order. - def schedule(event, delay, **args) + def schedule(event, delay, args = {}) raise 'Model scheduled event with negative delay.' if delay < 0 @event_list.push EventNotice.new(event, @model_time, delay, args) end @@ -65,9 +65,10 @@ module SimpleKit # all be a match with the corresponding +args+ of the scheduled event # in order for the cancellation to apply, but +args+ which are not # specified do not affect the target event matching. - def cancel(event, **args) + def cancel(event, args = {}) @cancel_set[event] ||= Set.new - @cancel_set[event].add(args.empty? ? nil : args) + # @cancel_set[event].add(args.empty? ? nil : args) + @cancel_set[event].add(args) end # Cancel all currently scheduled events of type +event+. @@ -96,7 +97,7 @@ module SimpleKit if current_event.args.empty? @user_model.send(current_event.event) else - @user_model.send(current_event.event, current_event.args) + @user_model.send(current_event.event, **current_event.args) end end end