20 lines
881 B
Python
20 lines
881 B
Python
from enums.base_marketplace import BaseMarketplace
|
|
from external.marketplace.ozon.core import OzonMarketplaceApi
|
|
from external.marketplace.wildberries.core import WildberriesApiUrl, WildberriesMarketplaceApi
|
|
from external.marketplace.yandex.core import YandexMarketplaceApi
|
|
from models import Marketplace
|
|
|
|
|
|
class MarketplaceApiFactory:
|
|
@staticmethod
|
|
def get_marketplace_api(marketplace: Marketplace):
|
|
match marketplace.base_marketplace_key:
|
|
case BaseMarketplace.WILDBERRIES:
|
|
return WildberriesMarketplaceApi(marketplace)
|
|
case BaseMarketplace.OZON:
|
|
return OzonMarketplaceApi(marketplace)
|
|
case BaseMarketplace.YANDEX_MARKET:
|
|
return YandexMarketplaceApi(marketplace)
|
|
case _:
|
|
raise ValueError(f"Unsupported marketplace: {marketplace.base_marketplace_key}")
|