pub struct Client { /* private fields */ }
Expand description
An API client for a Confluent-compatible schema registry.
Implementations§
source§impl Client
impl Client
pub fn timeout(&self) -> Duration
sourcepub async fn get_schema_by_id(&self, id: i32) -> Result<Schema, GetByIdError>
pub async fn get_schema_by_id(&self, id: i32) -> Result<Schema, GetByIdError>
Gets the schema with the associated ID.
sourcepub async fn get_schema_by_subject(
&self,
subject: &str
) -> Result<Schema, GetBySubjectError>
pub async fn get_schema_by_subject( &self, subject: &str ) -> Result<Schema, GetBySubjectError>
Gets the latest schema for the specified subject.
sourcepub async fn get_subject(
&self,
subject: &str
) -> Result<Subject, GetBySubjectError>
pub async fn get_subject( &self, subject: &str ) -> Result<Subject, GetBySubjectError>
Gets the latest version of the specified subject.
sourcepub async fn get_subject_and_references(
&self,
subject: &str
) -> Result<(Subject, Vec<Subject>), GetBySubjectError>
pub async fn get_subject_and_references( &self, subject: &str ) -> Result<(Subject, Vec<Subject>), GetBySubjectError>
Gets the latest version of the specified subject as well as all other subjects referenced by that subject (recursively).
The dependencies are returned in alphabetical order by subject name.
sourcepub async fn publish_schema(
&self,
subject: &str,
schema: &str,
schema_type: SchemaType,
references: &[SchemaReference]
) -> Result<i32, PublishError>
pub async fn publish_schema( &self, subject: &str, schema: &str, schema_type: SchemaType, references: &[SchemaReference] ) -> Result<i32, PublishError>
Publishes a new schema for the specified subject. The ID of the new schema is returned.
Note that if a schema that is identical to an existing schema for the same subject is published, the ID of the existing schema will be returned.
sourcepub async fn list_subjects(&self) -> Result<Vec<String>, ListError>
pub async fn list_subjects(&self) -> Result<Vec<String>, ListError>
Lists the names of all subjects that the schema registry is aware of.
sourcepub async fn delete_subject(&self, subject: &str) -> Result<(), DeleteError>
pub async fn delete_subject(&self, subject: &str) -> Result<(), DeleteError>
Deletes all schema versions associated with the specified subject.
This API is only intended to be used in development environments. Deleting schemas only allows new, potentially incompatible schemas to be registered under the same subject. It does not allow the schema ID to be reused.
sourcepub async fn get_subject_and_references_by_id(
&self,
id: i32
) -> Result<(Subject, Vec<Subject>), GetBySubjectError>
pub async fn get_subject_and_references_by_id( &self, id: i32 ) -> Result<(Subject, Vec<Subject>), GetBySubjectError>
Gets the latest version of the first subject found associated with the scheme with the given id, as well as all other subjects referenced by that subject (recursively).
The dependencies are returned in alphabetical order by subject name.