)]}'
{"keystone/token/backends/sql.py":[{"author":{"_account_id":6,"name":"Joe Heck","email":"heckj@mac.com","username":"heckj"},"change_message_id":"05de4a6bb5c84a938a9847374c6d96e699a5506b","unresolved":false,"context_lines":[{"line_number":100,"context_line":"        tokens \u003d []"},{"line_number":101,"context_line":"        now \u003d timeutils.utcnow()"},{"line_number":102,"context_line":"        for token_ref in session.query(TokenModel)\\"},{"line_number":103,"context_line":"                .filter(TokenModel.expires \u003e now)\\"},{"line_number":104,"context_line":"                .filter_by(valid\u003dTrue):"},{"line_number":105,"context_line":"            token_ref_dict \u003d token_ref.to_dict()"},{"line_number":106,"context_line":"            if \u0027user\u0027 not in token_ref_dict:"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAALH%2F%2FZ0k%3D","line":103,"updated":"2012-09-13 16:48:00.000000000","message":"nit: line up the dots for .query .filter .filter on each line - it\u0027ll make reading the SQLalchemy stuff more consistent (and it\u0027s PEP8 compliant - I checked last night)","commit_id":"284300730eb625f5d357fc71c5d7d6c2799c391f"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"38f1dafa01ce5d4b7a3d7daf06f2f478d8102666","unresolved":false,"context_lines":[{"line_number":100,"context_line":"        tokens \u003d []"},{"line_number":101,"context_line":"        now \u003d timeutils.utcnow()"},{"line_number":102,"context_line":"        for token_ref in session.query(TokenModel)\\"},{"line_number":103,"context_line":"                .filter(TokenModel.expires \u003e now)\\"},{"line_number":104,"context_line":"                .filter_by(valid\u003dTrue):"},{"line_number":105,"context_line":"            token_ref_dict \u003d token_ref.to_dict()"},{"line_number":106,"context_line":"            if \u0027user\u0027 not in token_ref_dict:"}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAALH%2F%2FZzo%3D","line":103,"in_reply_to":"AAAALH%2F%2FZ0k%3D","updated":"2012-09-13 17:01:48.000000000","message":"Done","commit_id":"284300730eb625f5d357fc71c5d7d6c2799c391f"}],"keystone/token/core.py":[{"author":{"_account_id":6,"name":"Joe Heck","email":"heckj@mac.com","username":"heckj"},"change_message_id":"05de4a6bb5c84a938a9847374c6d96e699a5506b","unresolved":false,"context_lines":[{"line_number":39,"context_line":"    def __init__(self):"},{"line_number":40,"context_line":"        super(Manager, self).__init__(CONF.token.driver)"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"    def revoke_tokens(self, context, user_id, tenant_id\u003dNone):"},{"line_number":43,"context_line":"        for token_id in self.list_tokens(context, user_id, tenant_id):"},{"line_number":44,"context_line":"            self.delete_token(context, token_id)"},{"line_number":45,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAALH%2F%2FZ0c%3D","line":42,"updated":"2012-09-13 16:48:00.000000000","message":"a quick docstring here would be really good - the method name is pretty self explanatory, but it would be great to note the difference between providing tenant_id and not here.\n\nReplicate the docstring from Driver method of same name?","commit_id":"284300730eb625f5d357fc71c5d7d6c2799c391f"},{"author":{"_account_id":4,"name":"Dolph Mathews","email":"dolph.mathews@gmail.com","username":"dolph"},"change_message_id":"38f1dafa01ce5d4b7a3d7daf06f2f478d8102666","unresolved":false,"context_lines":[{"line_number":39,"context_line":"    def __init__(self):"},{"line_number":40,"context_line":"        super(Manager, self).__init__(CONF.token.driver)"},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"    def revoke_tokens(self, context, user_id, tenant_id\u003dNone):"},{"line_number":43,"context_line":"        for token_id in self.list_tokens(context, user_id, tenant_id):"},{"line_number":44,"context_line":"            self.delete_token(context, token_id)"},{"line_number":45,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"AAAALH%2F%2FZzg%3D","line":42,"in_reply_to":"AAAALH%2F%2FZ0c%3D","updated":"2012-09-13 17:01:48.000000000","message":"Done","commit_id":"284300730eb625f5d357fc71c5d7d6c2799c391f"}]}
