Yuvipanda has uploaded a new change for review.

  https://gerrit.wikimedia.org/r/153798

Change subject: Remove UserRepository
......................................................................

Remove UserRepository

Change-Id: I9318b18847b84827eaf1b0be348f2ad23de18d73
---
M quarry/web/app.py
M quarry/web/models/user.py
2 files changed, 7 insertions(+), 27 deletions(-)


  git pull ssh://gerrit.wikimedia.org:29418/analytics/quarry/web 
refs/changes/98/153798/1

diff --git a/quarry/web/app.py b/quarry/web/app.py
index 5dc19a8..010e92c 100644
--- a/quarry/web/app.py
+++ b/quarry/web/app.py
@@ -1,5 +1,5 @@
 from flask import Flask, render_template, redirect, session, g, request, 
url_for, Response
-from models.user import UserRepository, User
+from models.user import User
 from models.query import Query
 from models.queryrevision import QueryRevision
 from models.queryrun import QueryRun
@@ -28,9 +28,9 @@
 )
 
 
-def get_user(user_repository):
+def get_user():
     if 'user_id' in session:
-        user = user_repository.get_by_id(session['user_id'])
+        user = g.session.query(User).filter(User.id == 
session['user_id']).one()
     else:
         user = None
     return user
@@ -43,10 +43,9 @@
     # Initialise repositories.
     Session = sessionmaker(bind=g.conn.db_engine)
     session = Session()
-    g.user_repository = UserRepository(session)
     g.session = session
 
-    g.user = get_user(g.user_repository)
+    g.user = get_user()
 
 
 @app.teardown_request
@@ -81,10 +80,11 @@
     session['acces_token'] = access_token
     identity = handshaker.identify(access_token)
     wiki_uid = identity['sub']
-    user = g.user_repository.get_by_wiki_uid(wiki_uid)
+    user = g.session.query(User).filter(User.wiki_uid == wiki_uid).one()
     if user is None:
         user = User(username=identity['username'], wiki_uid=wiki_uid)
-        g.user_repository.save(user)
+        g.session.add(user)
+        g.session.commit()
     session['user_id'] = user.id
     return_to_url = session.get('return_to_url')
     del session['request_token']
diff --git a/quarry/web/models/user.py b/quarry/web/models/user.py
index db1eabc..789d9cf 100644
--- a/quarry/web/models/user.py
+++ b/quarry/web/models/user.py
@@ -10,23 +10,3 @@
     username = Column(Unicode(255))
     wiki_uid = Column(Integer)
     queries = relationship('Query', backref='user')
-
-
-class UserRepository:
-    def __init__(self, session):
-        self.session = session
-
-    def get_by_id(self, id):
-        return self.session.query(User).filter_by(id=id).first()
-
-    def get_by_wiki_uid(self, wiki_uid):
-        return self.session.query(User).filter_by(wiki_uid=wiki_uid).first()
-
-    def save(self, user):
-        self.session.add(user)
-
-        # Persist the new user immediately.
-        self.session.commit()
-
-    def get_by_username(self, username):
-        return self.session.query(User).filter_by(username=username).first()

-- 
To view, visit https://gerrit.wikimedia.org/r/153798
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I9318b18847b84827eaf1b0be348f2ad23de18d73
Gerrit-PatchSet: 1
Gerrit-Project: analytics/quarry/web
Gerrit-Branch: master
Gerrit-Owner: Yuvipanda <[email protected]>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to