class DBRedis

Public Class Methods

new(area_id = nil) click to toggle source
# File lib/gsv_downloader/db_redis.rb, line 5
def initialize(area_id = nil)
        @redis = Redis.new(:driver =>  :hiredis) #:ruby
        @area = area_id
end

Public Instance Methods

add_pano(panoID, data) click to toggle source
# File lib/gsv_downloader/db_redis.rb, line 59
def add_pano(panoID, data)
        # @redis.pipelined do
                set_metadata(panoID, data) # unless metadata_exists?(panoID)
                add_to_area(panoID)
         # end
end
add_to_area(panoID) click to toggle source
# File lib/gsv_downloader/db_redis.rb, line 51
def add_to_area(panoID)
        @redis.sadd("area:#{@area}", panoID)
end
crawled?(panoID) click to toggle source
# File lib/gsv_downloader/db_redis.rb, line 14
def crawled?(panoID)
        @redis.sismember("area:#{@area}:crawled", panoID)
end
crawled_count() click to toggle source
# File lib/gsv_downloader/db_redis.rb, line 39
def crawled_count()
  @redis.scard("area:#{@area}:crawled")
end
get_filename(panoID) click to toggle source
# File lib/gsv_downloader/db_redis.rb, line 70
def get_filename(panoID)
                @redis.get("filepath:#{panoID}")
end
get_metadata(panoID) click to toggle source
# File lib/gsv_downloader/db_redis.rb, line 82
def get_metadata(panoID)
        @redis.get(panoID)
end
images_to_download() click to toggle source
# File lib/gsv_downloader/db_redis.rb, line 74
def images_to_download()
        pano_ids = []
        list().each do |pano_id|
                pano_ids << pano_id unless @redis.exists("filepath:#{pano_id}")
        end
        pano_ids
end
list() click to toggle source
# File lib/gsv_downloader/db_redis.rb, line 47
def list()
              @redis.smembers("area:#{@area}")
      end
mark_as_crawled(panoID) click to toggle source
# File lib/gsv_downloader/db_redis.rb, line 10
def mark_as_crawled(panoID)
        @redis.sadd("area:#{@area}:crawled", panoID)
end
mark_to_crawl(panoID) click to toggle source
# File lib/gsv_downloader/db_redis.rb, line 18
def mark_to_crawl(panoID)
      @redis.sadd("area:#{@area}:crawl_queue", panoID)
end
metadata_exists?(panoID) click to toggle source
# File lib/gsv_downloader/db_redis.rb, line 55
def metadata_exists?(panoID)
        @redis.exists(panoID)
end
nb_panoramas() click to toggle source
# File lib/gsv_downloader/db_redis.rb, line 43
def nb_panoramas()
              @redis.scard("area:#{@area}")
      end
not_scrawled() click to toggle source
# File lib/gsv_downloader/db_redis.rb, line 26
def not_scrawled()
        list = @redis.sdiff("area:#{@area}:crawl_queue","area:#{@area}:crawled")
        test = @redis.sismember("area:#{@area}:crawl_queue",  list[0]) and (!@redis.sismember("area:#{@area}:crawled",  list[0]))
        puts "TEST #{test}"
        list
end
reset_crawl() click to toggle source
# File lib/gsv_downloader/db_redis.rb, line 33
def reset_crawl
        @redis.del("area:#{@area}:crawled")
        @redis.del("area:#{@area}:crawl_queue")
        @redis.del("area:#{@area}")
end
set_filename(panoID, fullname) click to toggle source
# File lib/gsv_downloader/db_redis.rb, line 66
def set_filename(panoID, fullname)
                @redis.set("filepath:#{panoID}", fullname)
end
set_metadata(panoID, data) click to toggle source
# File lib/gsv_downloader/db_redis.rb, line 86
def set_metadata(panoID, data)
                @redis.set(panoID, data)
end
to_crawl?(panoID) click to toggle source
# File lib/gsv_downloader/db_redis.rb, line 22
def to_crawl?(panoID)
        !@redis.sismember("area:#{@area}:crawl_queue", panoID)
end