__init__.py 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. """Model-provider interface + registry.
  2. The shared seam for "import a model from a 3D model website". Providers
  3. implement the interface (a ``ModelProvider`` descriptor + a per-request
  4. ``ProviderService`` transport) and register an instance here; the registry
  5. routes pasted URLs to the owning provider via ``find_for_url``. MakerWorld is
  6. the first (and currently only) registered provider.
  7. """
  8. from backend.app.services.model_providers.base import (
  9. ModelProvider,
  10. ProviderAuthConfig,
  11. ProviderAuthError,
  12. ProviderAuthType,
  13. ProviderDownload,
  14. ProviderDownloadInfo,
  15. ProviderError,
  16. ProviderForbiddenError,
  17. ProviderNotFoundError,
  18. ProviderResolvedModel,
  19. ProviderResourceRef,
  20. ProviderService,
  21. ProviderStatus,
  22. ProviderUnavailableError,
  23. ProviderUrlError,
  24. )
  25. from backend.app.services.model_providers.makerworld import makerworld_provider
  26. from backend.app.services.model_providers.registry import ModelProviderRegistry, registry
  27. registry.register(makerworld_provider)
  28. __all__ = [
  29. "ModelProvider",
  30. "ModelProviderRegistry",
  31. "ProviderAuthConfig",
  32. "ProviderAuthError",
  33. "ProviderAuthType",
  34. "ProviderDownload",
  35. "ProviderDownloadInfo",
  36. "ProviderError",
  37. "ProviderForbiddenError",
  38. "ProviderNotFoundError",
  39. "ProviderResolvedModel",
  40. "ProviderResourceRef",
  41. "ProviderService",
  42. "ProviderStatus",
  43. "ProviderUnavailableError",
  44. "ProviderUrlError",
  45. "makerworld_provider",
  46. "registry",
  47. ]