# -*- coding: utf-8 -*-# This program is free software: you can redistribute it and/or modify# it under the terms of the GNU General Public License as published by# the Free Software Foundation, either version 3 of the License, or# (at your option) any later version.## This program is distributed in the hope that it will be useful,# but WITHOUT ANY WARRANTY; without even the implied warranty of# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the# GNU General Public License for more details.## You should have received a copy of the GNU General Public License# along with this program. If not, see <http://www.gnu.org/licenses/>."""SQLAlchemy Metadata and Session object"""fromsqlalchemy.ext.declarativeimportdeclarative_basefromsqlalchemy.ormimportscoped_session,sessionmakerfrombeakerimportcachefromrhodecode.libimportcaching_query# Beaker CacheManager. A home base for cache configurations.cache_manager=cache.CacheManager()__all__=['Base','Session']## SQLAlchemy session manager. Updated by model.init_model()#Session=scoped_session(sessionmaker(query_cls=caching_query.query_callable(cache_manager),expire_on_commit=True,))# The declarative BaseBase=declarative_base()#to use cache use this in query#.options(FromCache("sqlalchemy_cache_type", "cachekey"))