コード例 #1
0
    def _render(self, event_key):
        self._set_event(event_key)

        matches = self.event.matches
        match_dicts = [ModelToDict.matchConverter(match) for match in matches]

        return json.dumps(match_dicts, ensure_ascii=True)
コード例 #2
0
    def _render(self, team_key, event_key):
        match_keys_future = Match.query(Match.event == ndb.Key(Event, self.event_key), Match.team_key_names == self.team_key).fetch_async(None, keys_only=True)
        match_futures = ndb.get_multi_async(match_keys_future.get_result())

        matches = [ModelToDict.matchConverter(match_future.get_result()) for match_future in match_futures]

        return json.dumps(matches, ensure_ascii=True)
コード例 #3
0
    def _render(self, team_key, event_key):
        match_keys_future = Match.query(Match.event == ndb.Key(Event, self.event_key), Match.team_key_names == self.team_key).fetch_async(None, keys_only=True)
        match_futures = ndb.get_multi_async(match_keys_future.get_result())

        matches = [ModelToDict.matchConverter(match_future.get_result()) for match_future in match_futures]

        return json.dumps(matches, ensure_ascii=True)
コード例 #4
0
    def _render(self, event_key):
        self._set_event(event_key)

        matches = self.event.matches
        match_dicts = [ModelToDict.matchConverter(match) for match in matches]

        return json.dumps(match_dicts, ensure_ascii=True)
コード例 #5
0
 def _build_dict(self):
     data = {}
     data['message_type'] = NotificationType.type_names[self._type]
     data['message_data'] = {}
     data['message_data']['event_name'] = self.event.name
     data['message_data']['match'] = ModelToDict.matchConverter(self.match)
     return data
コード例 #6
0
 def _build_dict(self):
     data = {}
     data['message_type'] = NotificationType.type_names[self._type]
     data['message_data'] = {}
     data['message_data']['event_name'] = self.match.event.get().name
     data['message_data']['match'] = ModelToDict.matchConverter(self.match)
     return data
コード例 #7
0
    def _render(self, team_key, year=None):
        self._set_cache_header_length(61)

        self.team = Team.get_by_id(self.team_key)
        if self.team is None:
            self._errors = json.dumps(
                {"404": "%s team not found" % self.team_key})
            self.abort(404)

        events_sorted, matches_by_event_key, awards_by_event_key, _ = TeamDetailsDataFetcher.fetch(
            self.team, self.year)
        team_dict = ModelToDict.teamConverter(self.team)

        team_dict["events"] = list()
        for event in events_sorted:
            event_dict = ModelToDict.eventConverter(event)
            event_dict["matches"] = [
                ModelToDict.matchConverter(match)
                for match in matches_by_event_key.get(event.key, [])
            ]
            event_dict["awards"] = [
                ModelToDict.awardConverter(award)
                for award in awards_by_event_key.get(event.key, [])
            ]
            team_dict["events"].append(event_dict)

        return json.dumps(team_dict, ensure_ascii=True)
コード例 #8
0
ファイル: match_score.py プロジェクト: wm-c/the-blue-alliance
    def webhook_message_data(self):
        from helpers.model_to_dict import ModelToDict

        payload = self.data_payload
        # Remove the FCM-only keys
        del payload['match_key']

        payload['event_name'] = self.event.name
        payload['match'] = ModelToDict.matchConverter(self.match)
        return payload
コード例 #9
0
    def _render_android(self):
        gcm_keys = self.keys[ClientType.OS_ANDROID]

        data = {}
        data["message_type"] = NotificationType.type_names[NotificationType.MATCH_SCORE]
        data["message_data"] = {}
        data["message_data"]["event_name"] = self.match.event.get().name
        data["message_data"]["match"] = ModelToDict.matchConverter(self.match)

        return GCMMessage(gcm_keys, data)
コード例 #10
0
    def test_build(self):
        expected = {}
        expected['message_type'] = NotificationType.type_names[NotificationType.MATCH_SCORE]
        expected['message_data'] = {}
        expected['message_data']['event_name'] = self.event.name
        expected['message_data']['match'] = ModelToDict.matchConverter(self.match)

        data = self.notification._build_dict()

        self.assertEqual(expected, data)
コード例 #11
0
    def test_build(self):
        expected = {}
        expected['message_type'] = NotificationType.type_names[NotificationType.MATCH_SCORE]
        expected['message_data'] = {}
        expected['message_data']['event_key'] = self.event.key_name
        expected['message_data']['event_name'] = self.event.name
        expected['message_data']['match'] = ModelToDict.matchConverter(self.match)

        data = self.notification._build_dict()

        self.assertEqual(expected, data)
コード例 #12
0
    def _render(self, team_key, year=None):
        self._write_cache_headers(61)

        self.team = Team.get_by_id(self.team_key)
        if self.team is None:
            self._errors = json.dumps({"404": "%s team not found" % self.team_key})
            self.abort(404)

        events_sorted, matches_by_event_key, awards_by_event_key, _ = TeamDetailsDataFetcher.fetch(self.team, self.year)
        team_dict = ModelToDict.teamConverter(self.team)

        team_dict["events"] = list()
        for event in events_sorted:
            event_dict = ModelToDict.eventConverter(event)
            event_dict["matches"] = [ModelToDict.matchConverter(match) for match in matches_by_event_key.get(event.key, [])]
            event_dict["awards"] = [ModelToDict.awardConverter(award) for award in awards_by_event_key.get(event.key, [])]
            team_dict["events"].append(event_dict)

        return json.dumps(team_dict, ensure_ascii=True)
コード例 #13
0
    def _render(self, match_key):
        self._set_match(match_key)

        match_dict = ModelToDict.matchConverter(self.match)

        return json.dumps(match_dict, ensure_ascii=True)
コード例 #14
0
 def data_payload(self):
     from helpers.model_to_dict import ModelToDict
     return {
         'event_key': self.event.key_name,
         'match': ModelToDict.matchConverter(self.match)
     }
コード例 #15
0
    def _render(self, team_key, event_key):
        matches = TeamEventMatchesQuery(self.team_key, self.event_key).fetch()

        matches = [ModelToDict.matchConverter(match) for match in matches]

        return json.dumps(matches, ensure_ascii=True)
コード例 #16
0
    def _render(self, match_key):
        self._set_match(match_key)

        match_dict = ModelToDict.matchConverter(self.match)

        return json.dumps(match_dict, ensure_ascii=True)
コード例 #17
0
    def _render(self, team_key, event_key):
        matches = TeamEventMatchesQuery(self.team_key, self.event_key).fetch()

        matches = [ModelToDict.matchConverter(match) for match in matches]

        return json.dumps(matches, ensure_ascii=True)