happening
happening copied to clipboard
Making it easier to use EM's callback chain
I've made 2 small changes.
First, the deferrable object is passed back after execute is called. Second, I've set the deferred state appropriately after each internal callback. Together these changes allow someone to create a much richer callback chain than is currently possible with on_success and on_error.
Here's an example of what I'm doing with it
s = Sssnake.new
s.on_message do | file |
bname = File.basename(local)
item = Happening::S3::Item.new(
'a.bucket',
"some/path/#{bname}",
:aws_access_key_id => Settings[:aws][:aws_access_key_id],
:aws_secret_access_key => Settings[:aws][:aws_secret_key]
)
df = item.put(File.read(local))
df
end
In this example, the file upload is wrapped in a "message received" event from a queue. Is this something that fits how this library is being used?
I just merged another pull requests that already returns the response/deferrable object.
Your addition of decorating the response/deferrable objects sounds great.
Could you please update your patch to work with the latest master and add some tests for this functionality?