lib/beanstalk-client/job.rb in beanstalk-client-0.1 vs lib/beanstalk-client/job.rb in beanstalk-client-0.6.0
- old
+ new
@@ -18,10 +18,20 @@
require 'yaml'
class Beanstalk::Job
attr_reader :id, :pri, :body, :conn
+ # Convenience method for getting ybody elements.
+ def [](name)
+ ybody[name]
+ end
+
+ # Convenience method for setting ybody elements.
+ def []=(name, val)
+ ybody[name] = val
+ end
+
# Return the object that results from loading the body as a yaml stream.
# Return nil if the body is not a valid yaml stream.
def ybody()
(@ybody ||= [begin YAML.load(body) rescue nil end])[0]
end
@@ -29,13 +39,15 @@
def initialize(conn, id, pri, body)
@conn = conn
@id = id
@pri = pri
@body = body
+ @deleted = false
end
def delete()
- @conn.delete(id)
+ @conn.delete(id) if !@deleted
+ @deleted = true
end
def put_back(pri=self.pri)
@conn.put(body, pri)
end