hyperboria/nexus/pylon/drivers/base.py

40 lines
1.0 KiB
Python

from typing import (
Dict,
List,
Optional,
)
from izihawa_utils.importlib import import_object
from nexus.pylon.network_agent import NetworkAgent
from nexus.pylon.prepared_request import PreparedRequest
from nexus.pylon.proxy_manager import ProxyManager
class BaseDriver(NetworkAgent):
def __init__(
self,
config,
validator=None,
proxy_list: Optional[List] = None,
proxy_manager: Optional[ProxyManager] = None,
):
super().__init__(proxy_list=proxy_list, proxy_manager=proxy_manager)
self.config = config
validator_cls = 'nexus.pylon.validators.PdfValidator'
if validator and 'class' in validator:
validator_cls = validator['class']
validator_cls = import_object(validator_cls)
self.validator = validator_cls
def __str__(self):
return self.__class__.__name__
async def execute_prepared_file_request(
self,
prepared_file_request: PreparedRequest,
params: Dict,
):
raise NotImplementedError()