"""Model for ows-assets.""" from oto import response from owsrequest import request from label_copy_export import config from label_copy_export.connectors import loggly from label_copy_export.constants import ows_services logger = loggly.get_current_logger() def get_large_cover_image_url(product_id): """Get image URL from ows-assets. Args: product_id (str): product_id to get large cover image URL for. Returns: Response: URL for large cover image. """ image_path_response = request.process( application=ows_services.APPLICATION_NAME, environment=config.ENVIRONMENT, method='get', service_name=ows_services.OWS_ASSETS_SERVICE_NAME, path='/image/product/large_cover/{}/location'.format(product_id)) if image_path_response.status_code != 200: logger.warning( ('Could not retrieve large cover image URL for product_id: {}' ' from ows-assets.').format(product_id)) return response.Response(status=image_path_response.status_code) return response.Response( message=image_path_response.content.decode('utf8'))