ViewInterceptor

Trait ViewInterceptor 

Source
pub trait ViewInterceptor<CT: CommandTransaction> {
    // Required methods
    fn pre_insert(
        &mut self,
        view: &ViewDef,
        rn: RowNumber,
        row: &EncodedValues,
    ) -> Result<()>;
    fn post_insert(
        &mut self,
        view: &ViewDef,
        id: RowNumber,
        row: &EncodedValues,
    ) -> Result<()>;
    fn pre_update(
        &mut self,
        view: &ViewDef,
        id: RowNumber,
        row: &EncodedValues,
    ) -> Result<()>;
    fn post_update(
        &mut self,
        view: &ViewDef,
        id: RowNumber,
        row: &EncodedValues,
        old_row: &EncodedValues,
    ) -> Result<()>;
    fn pre_delete(&mut self, view: &ViewDef, id: RowNumber) -> Result<()>;
    fn post_delete(
        &mut self,
        view: &ViewDef,
        id: RowNumber,
        deleted_row: &EncodedValues,
    ) -> Result<()>;
}

Required Methods§

Source

fn pre_insert( &mut self, view: &ViewDef, rn: RowNumber, row: &EncodedValues, ) -> Result<()>

Intercept view pre-insert operations

Source

fn post_insert( &mut self, view: &ViewDef, id: RowNumber, row: &EncodedValues, ) -> Result<()>

Intercept view post-insert operations

Source

fn pre_update( &mut self, view: &ViewDef, id: RowNumber, row: &EncodedValues, ) -> Result<()>

Intercept view pre-update operations

Source

fn post_update( &mut self, view: &ViewDef, id: RowNumber, row: &EncodedValues, old_row: &EncodedValues, ) -> Result<()>

Intercept view post-update operations

Source

fn pre_delete(&mut self, view: &ViewDef, id: RowNumber) -> Result<()>

Intercept view pre-delete operations

Source

fn post_delete( &mut self, view: &ViewDef, id: RowNumber, deleted_row: &EncodedValues, ) -> Result<()>

Intercept view post-delete operations

Implementors§