view BackendFactory.py @ 217:bb3c851b18b1

add source file endcoding header
author Dirk Olmes <dirk@xanthippe.ping.de>
date Sun, 27 Apr 2014 05:33:34 +0200
parents 5b131f82057d
children e34c53a3e407
line wrap: on
line source

# -*- coding: utf-8 -*-
import argparse

SQLALCHEMY_BACKEND = "sqlalchemy"
COUCHDB_BACKEND = "couchdb"

def _parseArguments():
    parser = argparse.ArgumentParser()
    parser.add_argument("--backend", nargs="?", choices=[SQLALCHEMY_BACKEND, COUCHDB_BACKEND], 
        required=True, help="Specify the backend to use: either sqlalchemy or couchdb")
    return parser.parse_known_args()

def createBackend():
    args = _parseArguments()
    backend = args[0].backend
    if backend == SQLALCHEMY_BACKEND:
        from backend.sqlalchemy.SqlAlchemyBackend import SqlAlchemyBackend
        return SqlAlchemyBackend()
    elif backend == COUCHDB_BACKEND:
        from backend.couchdb.CouchDbBackend import CouchDbBackend
        return CouchDbBackend()
    else:
        raise Exception("no backend configured")