class Gentle::Blackboard
Attributes
client[R]
Public Class Methods
new(client)
click to toggle source
# File lib/gentle/blackboard.rb, line 7 def initialize(client) @client = client end
Public Instance Methods
build_document(type, contents)
click to toggle source
# File lib/gentle/blackboard.rb, line 35 def build_document(type, contents) namespace = if Response.valid_type?(type) Documents::Response elsif Request.valid_type?(type) Documents::Request end namespace.const_get(type).new(:io => contents) if namespace end
fetch(message)
click to toggle source
# File lib/gentle/blackboard.rb, line 18 def fetch(message) bucket = client.from_quiet_bucket contents = bucket.objects[message.document_name].read build_document(message.document_type, contents) end
post(document)
click to toggle source
# File lib/gentle/blackboard.rb, line 11 def post(document) bucket = client.to_quiet_bucket if bucket.objects[document.filename].write(document.to_xml) Message.new(:client => @client, :document => document) end end
remove(message)
click to toggle source
# File lib/gentle/blackboard.rb, line 24 def remove(message) bucket = client.from_quiet_bucket object = bucket.objects[message.document_name] if object.exists? object.delete true else false end end