diff options
author | Andrey Mekin <amekin@crystalnix.com> | 2016-08-23 12:58:49 +0600 |
---|---|---|
committer | Andrey Mekin <amekin@crystalnix.com> | 2016-08-23 12:58:49 +0600 |
commit | b0fc38abc3dd70679875e95fcc226b3c5d11e796 (patch) | |
tree | 4e86b2baa77da3d6cf8910bbd07bd5e2bb6b9d62 | |
parent | 21bd09f8ffd47c8fcecd3796e0b134a3e064473d (diff) | |
download | omaha-server-b0fc38abc3dd70679875e95fcc226b3c5d11e796.zip omaha-server-b0fc38abc3dd70679875e95fcc226b3c5d11e796.tar.gz omaha-server-b0fc38abc3dd70679875e95fcc226b3c5d11e796.tar.bz2 |
Add compatibility with ap tag
-rw-r--r-- | omaha_server/omaha/builder.py | 4 | ||||
-rw-r--r-- | omaha_server/omaha/parser.py | 6 | ||||
-rw-r--r-- | omaha_server/omaha/statistics.py | 4 |
3 files changed, 9 insertions, 5 deletions
diff --git a/omaha_server/omaha/builder.py b/omaha_server/omaha/builder.py index 323898b..8e26a91 100644 --- a/omaha_server/omaha/builder.py +++ b/omaha_server/omaha/builder.py @@ -31,8 +31,8 @@ from cacheops import cached_as from omaha import tasks from omaha.models import Version from omaha.parser import parse_request +from omaha import parser from omaha.statistics import is_user_active -from omaha.settings import DEFAULT_CHANNEL from omaha.core import (Response, App, Updatecheck_negative, Manifest, Updatecheck_positive, Packages, Package, Actions, Action, Event, Data) @@ -133,7 +133,7 @@ def on_app(apps_list, app, os, userid): app_id = app.get('appid') version = app.get('version') platform = os.get('platform') - channel = app.get('tag') or DEFAULT_CHANNEL + channel = parser.get_channel(app) ping = bool(app.findall('ping')) events = reduce(on_event, app.findall('event'), []) build_app = partial(App, app_id, status='ok', ping=ping, events=events) diff --git a/omaha_server/omaha/parser.py b/omaha_server/omaha/parser.py index f2a8436..625423b 100644 --- a/omaha_server/omaha/parser.py +++ b/omaha_server/omaha/parser.py @@ -21,7 +21,7 @@ the License. import os from lxml import etree, objectify - +from omaha.settings import DEFAULT_CHANNEL __all__ = ['parser', 'parse_request'] @@ -79,3 +79,7 @@ def parse_request(request): '{D0AB2EBC-931B-4013-9FEB-C9C4C2225C8C}' """ return objectify.fromstring(request, parser) + + +def get_channel(app): + return app.get('tag') or app.get('ap') or DEFAULT_CHANNEL diff --git a/omaha_server/omaha/statistics.py b/omaha_server/omaha/statistics.py index cd20e4c..bb730de 100644 --- a/omaha_server/omaha/statistics.py +++ b/omaha_server/omaha/statistics.py @@ -30,7 +30,7 @@ from bitmapist import setup_redis, mark_event, unmark_event, WeekEvents, MonthEv import pytz from omaha.utils import get_id, is_new_install, valuedispatch, redis -from omaha.settings import DEFAULT_CHANNEL +from omaha import parser from omaha.models import ACTIVE_USERS_DICT_CHOICES, Request, AppRequest, Os, Hw, Event, Version, Channel from sparkle.models import SparkleVersion @@ -52,7 +52,7 @@ def add_app_statistics(userid, platform, app, now=None): now = timezone.now() appid = app.get('appid') version = app.get('version') - channel = app.get('tag') or DEFAULT_CHANNEL + channel = parser.get_channel(app) events = app.findall('event') err_events = filter(lambda x: x.get('eventresult') not in ['1', '2', '3'], events) if err_events: |