Sha256: 3daa4f395336eddb87bd96fd4d62257725d7481b46dac5912b422e0040d8aba2

Contents?: true

Size: 510 Bytes

Versions: 2

Compression:

Stored size: 510 Bytes

Contents

require 'thread'

module Malm
  class MessageDb
  
    def initialize
      @sempahore = Mutex.new
    
      @message_db = []
    end
  
    def create(message)
      @sempahore.synchronize do
        message[:id] = @message_db.size
        @message_db << message
        @message_db.size
      end
    end
  
    def find_all
      @sempahore.synchronize do
        @message_db.dup
      end
    end
  
    def find(id)
      @sempahore.synchronize do
        @message_db[id].dup
      end
    end

  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
malm-0.1.1 lib/malm/message_db.rb
malm-0.1.0 lib/malm/message_db.rb