1234567891011121314151617181920212223242526 |
- from services.auth.api_key_auth_base import ApiKeyAuthBase
- from services.auth.auth_type import AuthType
- class ApiKeyAuthFactory:
- def __init__(self, provider: str, credentials: dict):
- auth_factory = self.get_apikey_auth_factory(provider)
- self.auth = auth_factory(credentials)
- def validate_credentials(self):
- return self.auth.validate_credentials()
- @staticmethod
- def get_apikey_auth_factory(provider: str) -> type[ApiKeyAuthBase]:
- match provider:
- case AuthType.FIRECRAWL:
- from services.auth.firecrawl.firecrawl import FirecrawlAuth
- return FirecrawlAuth
- case AuthType.JINA:
- from services.auth.jina.jina import JinaAuth
- return JinaAuth
- case _:
- raise ValueError("Invalid provider")
|