pub struct ConfigSchema {
pub version: String,
pub properties: HashMap<String, ConfigProperty>,
pub required: Vec<String>,
}
Expand description
Plugin configuration schema
Fields§
§version: String
Schema format version
properties: HashMap<String, ConfigProperty>
Configuration properties
required: Vec<String>
Required properties
Implementations§
Source§impl ConfigSchema
impl ConfigSchema
Sourcepub fn new() -> ConfigSchema
pub fn new() -> ConfigSchema
Create new config schema
Sourcepub fn add_property(&mut self, name: String, property: ConfigProperty)
pub fn add_property(&mut self, name: String, property: ConfigProperty)
Add a property to the schema
Sourcepub fn validate(&self) -> Result<(), PluginError>
pub fn validate(&self) -> Result<(), PluginError>
Validate the schema
Sourcepub fn validate_config(&self, config: &Value) -> Result<(), PluginError>
pub fn validate_config(&self, config: &Value) -> Result<(), PluginError>
Validate configuration against schema
Sourcepub fn get_property(&self, name: &str) -> Option<&ConfigProperty>
pub fn get_property(&self, name: &str) -> Option<&ConfigProperty>
Get property by name
Sourcepub fn is_required(&self, name: &str) -> bool
pub fn is_required(&self, name: &str) -> bool
Check if property is required
Trait Implementations§
Source§impl Clone for ConfigSchema
impl Clone for ConfigSchema
Source§fn clone(&self) -> ConfigSchema
fn clone(&self) -> ConfigSchema
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for ConfigSchema
impl Debug for ConfigSchema
Source§impl Default for ConfigSchema
impl Default for ConfigSchema
Source§fn default() -> ConfigSchema
fn default() -> ConfigSchema
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for ConfigSchema
impl<'de> Deserialize<'de> for ConfigSchema
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<ConfigSchema, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<ConfigSchema, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Serialize for ConfigSchema
impl Serialize for ConfigSchema
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
Auto Trait Implementations§
impl Freeze for ConfigSchema
impl RefUnwindSafe for ConfigSchema
impl Send for ConfigSchema
impl Sync for ConfigSchema
impl Unpin for ConfigSchema
impl UnwindSafe for ConfigSchema
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> GetSetFdFlags for T
impl<T> GetSetFdFlags for T
Source§fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
fn get_fd_flags(&self) -> Result<FdFlags, Error>where
T: AsFilelike,
Query the “status” flags for the
self
file descriptor.Source§fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
fn new_set_fd_flags(&self, fd_flags: FdFlags) -> Result<SetFdFlags<T>, Error>where
T: AsFilelike,
Source§fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
fn set_fd_flags(&mut self, set_fd_flags: SetFdFlags<T>) -> Result<(), Error>where
T: AsFilelike,
Set the “status” flags for the
self
file descriptor. Read moreSource§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more