RequestSchema

Trait RequestSchema 

Source
pub trait RequestSchema {
    type Error: Diagnostic;

    // Required methods
    fn validate_request(
        &self,
        request: &Request,
        extensions: &Extensions<'_>,
    ) -> Result<(), Self::Error>;
    fn validate_context<'a>(
        &self,
        context: &Context,
        action: &EntityUID,
        extensions: &Extensions<'a>,
    ) -> Result<(), Self::Error>;
    fn validate_scope_variables(
        &self,
        principal: Option<&EntityUID>,
        action: Option<&EntityUID>,
        resource: Option<&EntityUID>,
    ) -> Result<(), Self::Error>;
}
Expand description

Trait for schemas capable of validating Requests

Required Associated Types§

Source

type Error: Diagnostic

Error type returned when a request fails validation

Required Methods§

Source

fn validate_request( &self, request: &Request, extensions: &Extensions<'_>, ) -> Result<(), Self::Error>

Validate the given request, returning Err if it fails validation

Source

fn validate_context<'a>( &self, context: &Context, action: &EntityUID, extensions: &Extensions<'a>, ) -> Result<(), Self::Error>

Validate the given context, returning Err if it fails validation

Source

fn validate_scope_variables( &self, principal: Option<&EntityUID>, action: Option<&EntityUID>, resource: Option<&EntityUID>, ) -> Result<(), Self::Error>

Validate the scope variables, returning Err if it fails validation

Implementors§