# Path: solace/database.py
# def get_engine():
# def refresh_engine():
# def atomic_add(obj, column, delta, expire=False):
# def mapper(model, table, **options):
#     def cursor_execute(self, execute, cursor, statement, parameters,
#                        context, executemany):
#     def after_delete(self, mapper, connection, instance):
#     def after_insert(self, mapper, connection, instance):
#     def after_update(self, mapper, connection, instance):
#     def _record(self, model, operation):
#     def before_commit(self, session):
#     def after_commit(self, session):
#     def after_rollback(self, session):
#     def __init__(self):
#     def __init__(self):
#     def process_bind_param(self, value, dialect):
#     def process_result_value(self, value, dialect):
#     def is_mutable(self):
#     def __init__(self):
#     def process_bind_param(self, value, dialect):
#     def process_result_value(self, value, dialect):
#     def is_mutable(self):
# def init():
# def drop_tables():
# def add_query_debug_headers(request, response):
# def request_track_query(cursor, statement, parameters, time):
# class ConnectionQueryTrackingProxy(ConnectionProxy):
# class SignalTrackingMapperExtension(MapperExtension):
# class SignalEmittingSessionExtension(SessionExtension):
# class SignalTrackingSession(Session):
# class LocaleType(TypeDecorator):
# class BadgeType(TypeDecorator):


from sqlalchemy import Table, Column, Integer, String, Text, DateTime, \
     ForeignKey, Boolean, Float
from solace.database import LocaleType, BadgeType, metadata
# -*- coding: utf-8 -*-
"""
    solace.schema
    ~~~~~~~~~~~~~

    This module defines the solace schema.  The structure is pretty simple
    and should scale up to the number of posts we expect.  Not much magic
    happening here.

    :copyright: (c) 2010 by the Solace Team, see AUTHORS for more details.
    :license: BSD, see LICENSE for more details.
"""



# Path: solace/database.py
# def get_engine():
# def refresh_engine():
# def atomic_add(obj, column, delta, expire=False):
# def mapper(model, table, **options):
#     def cursor_execute(self, execute, cursor, statement, parameters,
#                        context, executemany):
#     def after_delete(self, mapper, connection, instance):
#     def after_insert(self, mapper, connection, instance):
#     def after_update(self, mapper, connection, instance):
#     def _record(self, model, operation):
#     def before_commit(self, session):
#     def after_commit(self, session):
#     def after_rollback(self, session):
#     def __init__(self):
#     def __init__(self):
#     def process_bind_param(self, value, dialect):
#     def process_result_value(self, value, dialect):
#     def is_mutable(self):
#     def __init__(self):
#     def process_bind_param(self, value, dialect):
#     def process_result_value(self, value, dialect):
#     def is_mutable(self):
# def init():
# def drop_tables():
# def add_query_debug_headers(request, response):
# def request_track_query(cursor, statement, parameters, time):
# class ConnectionQueryTrackingProxy(ConnectionProxy):
# class SignalTrackingMapperExtension(MapperExtension):
# class SignalEmittingSessionExtension(SessionExtension):
# class SignalTrackingSession(Session):
# class LocaleType(TypeDecorator):
# class BadgeType(TypeDecorator):


# Path: solace/schema.py
from sqlalchemy import Table, Column, Integer, String, Text, DateTime, \
     ForeignKey, Boolean, Float
from solace.database import LocaleType, BadgeType, metadata

# -*- coding: utf-8 -*-
"""
    solace.schema
    ~~~~~~~~~~~~~

    This module defines the solace schema.  The structure is pretty simple
    and should scale up to the number of posts we expect.  Not much magic
    happening here.

    :copyright: (c) 2010 by the Solace Team, see AUTHORS for more details.
    :license: BSD, see LICENSE for more details.
"""



users = Table('users', metadata,