class Watson::Conversation::FutureData

Public Class Methods

new() click to toggle source
# File lib/watson/conversation.rb, line 58
def initialize()
        @is_ready = false
        @real_data = nil

        @mutex = Mutex.new
        @cv = ConditionVariable.new
end

Public Instance Methods

get_data() click to toggle source
# File lib/watson/conversation.rb, line 81
def get_data()
        @mutex.synchronize do
                while @is_ready == false
                        @cv.wait(@mutex)
                end
        end
        return @real_data
end
set_real_data(code, body) click to toggle source
# File lib/watson/conversation.rb, line 67
def set_real_data(code, body)
        @mutex.synchronize do
                if @is_ready == true
                        return
                end
        end
        
        @real_data = code, body
        @is_ready = true

        @cv.broadcast
end