Sha256: ec6966aa1a00a6197b436be1a95a15245a6f5d6845ae59952b92429df1fb8bc1

Contents?: true

Size: 1.25 KB

Versions: 6

Compression:

Stored size: 1.25 KB

Contents

require 'friendly/associations'
require 'friendly/attribute'
require 'friendly/boolean'
require 'friendly/cache'
require 'friendly/cache/by_id'
require 'friendly/config'
require 'friendly/data_store'
require 'friendly/document'
require 'friendly/document_table'
require 'friendly/index'
require 'friendly/memcached'
require 'friendly/named_scope'
require 'friendly/query'
require 'friendly/sequel_monkey_patches'
require 'friendly/scope'
require 'friendly/scope_proxy'
require 'friendly/storage_factory'
require 'friendly/storage_proxy'
require 'friendly/translator'
require 'friendly/uuid'

require 'json/pure'
require 'will_paginate/collection'

module Friendly
  class << self
    attr_accessor :datastore, :db, :cache

    def configure(config)
      self.db        = Sequel.connect(config)
      self.datastore = DataStore.new(db)
    end

    def batch
      begin
        datastore.start_batch
        yield
        datastore.flush_batch
      ensure
        datastore.reset_batch
      end
    end

    def create_tables!
      Document.create_tables!
    end
  end

  class Error < RuntimeError; end
  class RecordNotFound < Error; end
  class MissingIndex < Error; end
  class NoConverterExists < Friendly::Error; end
  class NotSupported < Friendly::Error; end
end

Version data entries

6 entries across 6 versions & 2 rubygems

Version Path
friendly-0.4.4 lib/friendly.rb
friendly_postgres-0.4.3 lib/friendly.rb
friendly-0.4.3 lib/friendly.rb
friendly-0.4.2 lib/friendly.rb
friendly-0.4.1 lib/friendly.rb
friendly-0.4.0 lib/friendly.rb