class HttpStub::Server::Registry

Public Class Methods

new(model_name, models=[]) click to toggle source
# File lib/http_stub/server/registry.rb, line 8
def initialize(model_name, models=[])
  @model_name = model_name
  @models     = models.reverse
end

Public Instance Methods

add(model, logger) click to toggle source
# File lib/http_stub/server/registry.rb, line 13
def add(model, logger)
  @models.unshift(model)
  log_addition_of([ model ], logger)
end
all() click to toggle source
# File lib/http_stub/server/registry.rb, line 38
def all
  Array.new(@models)
end
clear(logger) click to toggle source
# File lib/http_stub/server/registry.rb, line 47
def clear(logger)
  log_pending_clear(logger)
  @models.clear
end
concat(models, logger) click to toggle source
# File lib/http_stub/server/registry.rb, line 18
def concat(models, logger)
  @models.unshift(*models.reverse)
  log_addition_of(models.reverse, logger)
end
delete(criteria, logger) click to toggle source
# File lib/http_stub/server/registry.rb, line 42
def delete(criteria, logger)
  logger.info "Deleting #{@model_name} matching: #{criteria}"
  @models.delete_if { |model| model.matches?(criteria, logger) }
end
find(criteria, logger) click to toggle source
# File lib/http_stub/server/registry.rb, line 29
def find(criteria, logger)
  logger.info "Finding #{@model_name} matching: #{criteria}"
  @models.find { |model| model.matches?(criteria, logger) }
end
last() click to toggle source
# File lib/http_stub/server/registry.rb, line 34
def last
  @models.first
end
replace(models, logger) click to toggle source
# File lib/http_stub/server/registry.rb, line 23
def replace(models, logger)
  log_pending_clear(logger)
  @models.replace(models.reverse)
  log_addition_of(models.reverse, logger)
end

Private Instance Methods

log_addition_of(models, logger) click to toggle source
# File lib/http_stub/server/registry.rb, line 58
def log_addition_of(models, logger)
  models.each { |model| logger.info "Registered #{@model_name}: #{model}" }
end
log_pending_clear(logger) click to toggle source
# File lib/http_stub/server/registry.rb, line 54
def log_pending_clear(logger)
  logger.info "Clearing #{@model_name} registry"
end