feat: a lot of a lot
This commit is contained in:
19
external/marketplace/factory.py
vendored
Normal file
19
external/marketplace/factory.py
vendored
Normal file
@@ -0,0 +1,19 @@
|
||||
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}")
|
||||
Reference in New Issue
Block a user