28 lines
772 B
Python
28 lines
772 B
Python
# pms_integration/plugins/base_plugin.py
|
|
|
|
from abc import ABC, abstractmethod
|
|
|
|
class BasePMSPlugin(ABC):
|
|
"""Базовый класс для всех плагинов PMS интеграции."""
|
|
|
|
def __init__(self, api_config):
|
|
"""
|
|
Конструктор плагина.
|
|
:param api_config: Конфигурация API (объект модели APIConfiguration).
|
|
"""
|
|
self.api_config = api_config
|
|
|
|
@abstractmethod
|
|
def fetch_data(self):
|
|
"""
|
|
Метод для получения данных от PMS.
|
|
"""
|
|
pass
|
|
|
|
@abstractmethod
|
|
def parse_data(self, raw_data):
|
|
"""
|
|
Метод для обработки сырых данных от PMS.
|
|
"""
|
|
pass
|