Kafkit API reference¶
kafkit.registry Package¶
Classes¶
Deserializer (*, registry) |
An Avro message deserializer that understands the Confluent Wire Format and obtains schemas on-demand from a Confluent Schema Registry. |
PolySerializer (*, registry) |
An Avro message serializer that can write messages for multiple schemas in the Confluent Wire Format. |
RegistryBadRequestError (status_code, *args, …) |
An exception if the request is invalid (4XX errors). |
RegistryBrokenError (status_code, *args, …) |
An excpetion if the server is down (5XX errors). |
RegistryError |
Base exception for Registry errors. |
RegistryHttpError (status_code, *args, …) |
A base exception that includes metadata about the HTTP response. |
RegistryRedirectionError (status_code, *args, …) |
An exception for 3XX responses. |
Serializer (*, schema, Any], schema_id) |
An Avro message serializer that writes in the Confluent Wire Format. |
kafkit.registry.aiohttp Module¶
Aiohttp client for the Confluent Schema Registry.
This code and architecture is based on https://github.com/brettcannon/gidgethub See licenses/gidgethub.txt for info.
Classes¶
RegistryApi (*, session, url) |
A Confluent Schema Registry client that uses aiohttp. |
kafkit.registry.manager Module¶
Combined local and registry-based schema management.
Classes¶
RecordNameSchemaManager (*, root, registry, …) |
A manager for schemas embedded in the application itself in conjunction with a Confluent Schema Registry, for the case of a record name subject name strategy. |
kafkit.registry.sansio Module¶
Code to help use the Confluent Schema Registry that is not specific to a particular http client library.
This code and architecture is inspired by https://github.com/brettcannon/gidgethub and https://sans-io.readthedocs.io. See licenses/gidgethub.txt for license info.
Functions¶
make_headers () |
Make HTTP headers for the Confluent Schema Registry. |
decipher_response (status_code, headers, …) |
Process a response. |
decode_body (content_type, body) |
Decode an HTTP body based on the specified content type. |
Classes¶
RegistryApi (*, url) |
A baseclass for Confluent Schema Registry clients. |
MockRegistryApi (url, status_code, headers, …) |
A mock implementation of the RegistryApi client that doensn’t do network operations and provides attributes for introspection. |
SchemaCache () |
A cache of schemas that maintains a mapping of schemas and their IDs in a Schema Registry. |
SubjectCache (schema_cache) |
A cache of subjects in a schema registry that maps subject and version tuples to an actual schema. |
CompatibilityType |
Compatibility settings available for the Confluent Schema Registry, as an Enum. |
kafkit.ssl Module¶
Support for connecting to brokers with SSL.
Functions¶
create_ssl_context (*, cluster_ca_path, …) |
Create an SSL context for a client connecting to secured Kafka brokers. |