class Humble::Session

Attributes

connection_factory[R]
mapper_registry[R]

Public Class Methods

new(connection_factory, mapper_registry) click to toggle source
# File lib/humble/session.rb, line 3
def initialize(connection_factory, mapper_registry)
  @connection_factory = connection_factory
  @mapper_registry = mapper_registry
end

Public Instance Methods

begin_transaction(&block) click to toggle source
# File lib/humble/session.rb, line 8
def begin_transaction(&block)
  create_connection.transaction do
    block.call(self)
  end
end
delete(entity) click to toggle source
# File lib/humble/session.rb, line 22
def delete(entity)
  mapping_for(entity).delete_using(create_connection, entity)
end
dispose() click to toggle source
# File lib/humble/session.rb, line 26
def dispose
end
find_all(clazz) click to toggle source
# File lib/humble/session.rb, line 18
def find_all(clazz)
  mapping_for(clazz).find_all_using(create_connection)
end
save(entity) click to toggle source
# File lib/humble/session.rb, line 14
def save(entity)
  mapping_for(entity).save_using(create_connection, entity)
end

Private Instance Methods

create_connection() click to toggle source
# File lib/humble/session.rb, line 33
def create_connection
  @connection ||= connection_factory.create_connection
end
mapping_for(entity) click to toggle source
# File lib/humble/session.rb, line 37
def mapping_for(entity)
  mapper_registry.mapping_for(entity)
end