Giter Club home page Giter Club logo

dress's People

Stargazers

 avatar

Watchers

 avatar  avatar  avatar

dress's Issues

need referctoring

class DataSource(object):

    def __new__(cls, *args, **kwargs):
        if hasattr(cls, 'instance'):
            return cls.instance
        return None

    @classmethod
    def select(cls, datasource):
        cls.datasource = datasource

    @classmethod
    def connect(cls, options):
        if cls.datasource == 'Database/MySQL':
            cls.instance = MySQL(host=options.host, user=options.user, \
                password=options.password, charset=options.charset, database=options.database)
        if cls.datasource == 'Database/PostgreSQL':
            cls.instance = PostgreSQL(host=options.host, user=options.user, \
                password=options.password, database=options.database, port=options.port)
        if cls.datasource == 'Database/SQLite3':
            cls.instance = SQLite3(options.database)
        if hasattr(cls, 'instance') and cls.instance:
            cls.instance.connect()
            return True
        return False

    @classmethod
    def close(cls):
        if hasattr(cls, 'instance') and cls.instance:
            cls.instance.close()

def select(datasource):
    DataSource.select(datasource)

def connect(options):
    return DataSource.connect(options)

def close():
    DataSource.close()

def get_instance():
    return DataSource()

change datasource option to database option

before

parser.add_option(
    "--datasource", 
    dest="datasource",
    help="Supported datasource. valid options are mysql, sqlite3, postgres",
    type="string",
    default=None
)

after

parser.add_option(
    "--database", 
    dest="database",
    help="Supported datasource. valid options are mysql, sqlite3, postgres",
    type="string",
    default=None
)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.