(
cls,
mode: mode_specs.ProxyMode | str,
manager: ServerManager,
)
| 108 | |
| 109 | @classmethod |
| 110 | def make( |
| 111 | cls, |
| 112 | mode: mode_specs.ProxyMode | str, |
| 113 | manager: ServerManager, |
| 114 | ) -> Self: |
| 115 | if isinstance(mode, str): |
| 116 | mode = mode_specs.ProxyMode.parse(mode) |
| 117 | inst = ServerInstance.__modes[mode.type_name](mode, manager) |
| 118 | |
| 119 | if not isinstance(inst, cls): |
| 120 | raise ValueError(f"{mode!r} is not a spec for a {cls.__name__} server.") |
| 121 | |
| 122 | return inst |
| 123 | |
| 124 | @property |
| 125 | @abstractmethod |
no test coverage detected