pub struct Client {
inner: Client,
url: Arc<dyn Fn() -> Url + Send + Sync + 'static>,
auth: Option<Auth>,
timeout: Duration,
}
Expand description
An API client for a Confluent-compatible schema registry.
Fields§
§inner: Client
§url: Arc<dyn Fn() -> Url + Send + Sync + 'static>
§auth: Option<Auth>
§timeout: Duration
Implementations§
source§impl Client
impl Client
pub(crate) fn new( inner: Client, url: Arc<dyn Fn() -> Url + Send + Sync + 'static>, auth: Option<Auth>, timeout: Duration, ) -> Result<Self, Error>
fn make_request<P>(&self, method: Method, path: P) -> RequestBuilder
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_latest(
&self,
subject: &str,
) -> Result<Subject, GetBySubjectError>
pub async fn get_subject_latest( &self, subject: &str, ) -> Result<Subject, GetBySubjectError>
Gets the latest version of the specified subject.
sourcepub async fn get_subject_config(
&self,
subject: &str,
) -> Result<SubjectConfig, GetSubjectConfigError>
pub async fn get_subject_config( &self, subject: &str, ) -> Result<SubjectConfig, GetSubjectConfigError>
Gets the config set for 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.
sourceasync fn get_subject_and_references_by_version(
&self,
subject: &str,
version: String,
) -> Result<(Subject, Vec<Subject>), GetBySubjectError>
async fn get_subject_and_references_by_version( &self, subject: &str, version: String, ) -> Result<(Subject, Vec<Subject>), GetBySubjectError>
Gets a subject and 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 set_subject_compatibility_level(
&self,
subject: &str,
compatibility_level: CompatibilityLevel,
) -> Result<(), SetCompatibilityLevelError>
pub async fn set_subject_compatibility_level( &self, subject: &str, compatibility_level: CompatibilityLevel, ) -> Result<(), SetCompatibilityLevelError>
Sets the compatibility level for the specified subject.
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.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Client
impl !RefUnwindSafe for Client
impl Send for Client
impl Sync for Client
impl Unpin for Client
impl !UnwindSafe for Client
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)