Sha256: b3c8247f4eefaa15a4b03c4916222d59e7b1b3630992d9b5b8e2ac2f0ea6a09a

Contents?: true

Size: 785 Bytes

Versions: 4

Compression:

Stored size: 785 Bytes

Contents

module JsChat::Storage
  MEMORY_MESSAGE_LIMIT = 100

  module NullDriver
    def self.log(message, room)
      @messages ||= []
      message['room'] = room
      @messages.push message
      @messages = @messages[-MEMORY_MESSAGE_LIMIT..-1] if @messages.size > MEMORY_MESSAGE_LIMIT
    end

    def self.lastlog(number, room)
      @messages ||= []
      @messages.select { |m| m['room'] == room }.reverse[0..number].reverse
    end

    def self.search(query, room, limit)
      @messages ||= []
      @messages.select do |m|
        m['message'] and m['message']['message'].match(query) and m['room'] == room
      end.reverse[0..limit].reverse
    end

    def self.find_user(options)
    end

    def self.save_user(user)
    end

    def self.delete_user(user)
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
jschat-0.3.7 lib/jschat/storage/null.rb
jschat-0.3.6 lib/jschat/storage/null.rb
jschat-0.3.5 lib/jschat/storage/null.rb
jschat-0.3.3 lib/jschat/storage/null.rb