SAService Architect Back to designer
SAService ArchitectDocumentation
Python API reference project.http_connector() | grpc_connector() | kafka_connector() | ...

Project connector factories

Create transport-specific Connector subclasses with language adapter defaults selected by the DSL.

When to use

Declare a connector once, then create its endpoints through the returned concrete object.

Behavior

  • HTTP, gRPC, Kafka, Cron, Temporal, and Custom use different constructor parameters and endpoint methods.
  • Per-language implementation parameters are typed DataConnectorImplementation values.
  • Default implementations are populated for currently supported generator/runtime combinations.

Network connector factories properties

Transport configuration.

PropertyTypeDescription
http_connector(name, *, module=None, host=None, port=None, use_dedicated_listener=None, ...implementations)HttpConnector

HTTP listener/client adapter configuration.

grpc_connector(name, *, module=None, programming_language=None, address=None, connections_count=None, ...implementations)GrpcConnector

gRPC channel/server adapter configuration.

kafka_connector(name, *, brokers, version=None, dial_timeout=None, use_partitioner=None, async_=None, security_protocol=None, sasl_mechanism=None, username=None, password=None, ...implementations)KafkaConnector

Kafka cluster and security configuration.

Scheduling connector factories properties

Cron and Temporal configuration.

PropertyTypeDescription
cron_connector(name, *, ...implementations)CronConnector

Local schedule adapter per target language.

temporal_connector(name, *, address, namespace, identity=None, api_key=None, tls_*=None, worker_stop_timeout=None, ...implementations)TemporalConnector

Temporal client, TLS, identity, and worker shutdown configuration.

Custom connector properties

Function-defined integration.

PropertyTypeDescription
custom_connector(name, *, implementation=FUNCTION, module=None)CustomConnector

Custom endpoint adapter optionally owned by a Module.

Python example

kafka = project.kafka_connector(
    "Order Events",
    brokers="redpanda:9092",
    security_protocol=KafkaSecurityProtocol.PLAINTEXT,
)
temporal = project.temporal_connector(
    "Temporal",
    address="temporal:7233",
    namespace="default",
    worker_stop_timeout=10_000,
)