def application()

in services/recommendation-service/src/app.py [0:0]


    def application():
        headers = {}
        for key in [
            'x-b3-traceid',
            'x-b3-spanid',
            'x-b3-parentspanid',
            'x-b3-sampled',
            'x-b3-flags',
        ]:
            val = request.headers.get(key)
            if val is not None:
                headers[key] = request.headers[key]

        songsResponse = requests.get('http://songs/songs', headers=headers)
        songs = songsResponse.json()
        ratingResponse = requests.get('http://rating/rating', headers=headers)
        ratings = ratingResponse.json()

        # combine ratings to songs
        ratings_dict = {}
        for rating_data in ratings:
            song_id = rating_data['id']
            ratings_dict[song_id] = rating_data['rating']
        for song_data in songs:
            song_id = song_data['id']
            rating = ratings_dict.get(song_id)
            if rating is not None:
                song_data['rating'] = rating

        return jsonify(songs)