flask-matrix/flask_matrix/base.py

26 lines
984 B
Python

class FlaskMatrix(object):
def __init__(self, app=None):
self.api = None
self.app = None
if app:
self.init_app(app)
def init_app(self, app):
app.config.setdefault('MATRIX_BASE_URL', None)
app.config.setdefault('MATRIX_USERNAME', None)
app.config.setdefault('MATRIX_PASSWORD', None)
app.config.setdefault('MATRIX_TOKEN', None)
if app.config['MATRIX_USERNAME'] is None and app.config['MATRIX_PASSWORD'] is None \
app.config['MATRIX_TOKEN'] is None:
raise ValueError('You must specify at least MATRIX_TOKEN or both MATRIX_USERNAME and MATRIX_PASSWORD')
if app.config['MATRIX_BASE_URL'] is None:
raise ValueError('MATRD]IX_BASE_URL is not set!')
self.username = app.config['MATRIX_USERNAME']
self.password = app.config['MATRIX_PASSWORD']
self.client = MatrixHttpApi(app.config['MATRIX_BASE_URL'], token=app.config['MATRIX_TOKEN'])