Connector implementations
Use pack defaults or select transport implementations by target without per-language model fields.
When to use
Behavior
Start without overrides
A normal connector does not need a list of implementations for every language. Leave overrides empty to use the defaults from the selected template packs. A shared connector can serve services using different targets.
The Designer implementation-override field accepts a JSON object. Python factories accept implementations as a dictionary; YAML stores the same target-to-implementation mapping. Selecting a name does not install an adapter or make an unsupported transport available.
api = project.http_connector("Public API")
# Explicit overrides, only when needed:
api = project.http_connector(
"Public API",
implementations={"golang": "net/http", "cppUserver": "userver/http"},
)Targets and migration
Use the target names supplied by the pack, such as golang, cppUserver, cppCoro, python, rust and typescript. Userver and Coro selections are independent; an override for one does not configure the other.
The old goImplementation, cppUserverImplementation, cppCoroImplementation, pythonImplementation, rustImplementation and typeScriptImplementation fields have been removed. Their Python snake_case constructor arguments are also removed. Move deliberate overrides into implementations, or omit them to use defaults.
Old fields are rejected, not silently migrated. The custom connector implementation field is a different setting and is not one of these removed per-language selectors.
Selection properties
implementationstarget -> implementation nameOptional explicit overrides. An omitted target uses the selected template pack default when one is available.
Configuration example