Commit Graph

1786 Commits

Author SHA1 Message Date
Matthias Beyer 7102a57808 Make hook execution parallel for StoreIdAccessor impl for Aspect 2016-03-16 16:46:53 +01:00
Matthias Beyer d8760c9737 Impl NonMutableHookDataAccessor::access() for Aspect 2016-03-16 16:46:53 +01:00
Matthias Beyer c4c02f2274 Impl MutableHookDataAccessor::access_mut() for Aspect 2016-03-16 16:46:53 +01:00
Matthias Beyer 2022f4e4bb Impl StoreIdAccessor::access() for Aspect 2016-03-16 16:46:53 +01:00
Matthias Beyer 2c544382a1 We do not need boxes here 2016-03-16 16:46:53 +01:00
Matthias Beyer 679865464b Reimplement hook registration and execution 2016-03-16 16:46:52 +01:00
Matthias Beyer d6a581e69f Add HookPosition enum 2016-03-16 16:46:52 +01:00
Matthias Beyer 37a505609e Remove hook traits. There can only be one trait: Hook 2016-03-16 16:46:52 +01:00
Matthias Beyer be1ba5be4b Add Aspect type for hook system 2016-03-16 16:46:52 +01:00
Matthias Beyer 3e62b71605 Add StoreIdAccessor trait 2016-03-16 16:46:52 +01:00
Matthias Beyer fa9e8e8192 Split hook/mod.rs into several files 2016-03-16 16:46:52 +01:00
Matthias Beyer 3f15fd0fa8 Move hook.rs -> hook/mod.rs 2016-03-16 16:46:52 +01:00
Matthias Beyer 4dc1140149 doc: Add hook aspect definition 2016-03-16 16:46:52 +01:00
Matthias Beyer a9600f23b3 Threaded hook execution 2016-03-16 16:46:52 +01:00
Matthias Beyer 79ba3f5151 Hook calling rewrite 2016-03-16 16:46:52 +01:00
Matthias Beyer 0610f0756a Add dep: crossbeam = 0.2.8 2016-03-16 16:46:52 +01:00
Matthias Beyer 3421e8d4d9 Add HookExecutionError error kind 2016-03-16 16:46:52 +01:00
Matthias Beyer 1c40be78a9 Add HookAccessor types for accessing mutable/nonmutable hook calling in a generic way 2016-03-16 16:46:52 +01:00
Matthias Beyer c9bca51273 doc: Add documentation for the Hook system 2016-03-16 16:46:51 +01:00
Matthias Beyer e1414beb8d Impl Into<HookError> for error kinds to convert errors in a simple way 2016-03-16 16:46:51 +01:00
Matthias Beyer 57831dceb0 Add HookErrorKind enums for Pre and Post errors 2016-03-16 16:46:51 +01:00
Matthias Beyer d7733aa13a Make hooks configurable
This introduces the Configurable trait and abstracts the
dependency-traits for each trait over a generic "Hook" trait, which
requires Configurable and Debug to be implemented, but has no own
functions.

Configuring is done _without_ the Runtime object, so we can be sure that
the hooks do not have access to the store object.
2016-03-16 16:46:51 +01:00
Matthias Beyer d9a4512821 Add debug output for hook exec functions 2016-03-16 16:46:51 +01:00
Matthias Beyer da3554d98e Add debug output for hook register functions 2016-03-16 16:46:51 +01:00
Matthias Beyer 6af5be15ad Hooks must implement Debug 2016-03-16 16:46:51 +01:00
Matthias Beyer bb0e7e2468 Implement: execute_post_delete_hooks() 2016-03-16 16:46:51 +01:00
Matthias Beyer f703e8a4cd Implement: execute_post_update_hooks() 2016-03-16 16:46:51 +01:00
Matthias Beyer 7014256407 Implement: execute_post_retrieve_hooks() 2016-03-16 16:46:51 +01:00
Matthias Beyer 5831d3bc7b Implement: execute_post_create_hooks() 2016-03-16 16:46:51 +01:00
Matthias Beyer 196be30d91 Implement: execute_post_read_hooks() 2016-03-16 16:46:51 +01:00
Matthias Beyer 09acddaef9 Implement: execute_pre_delete_hooks() 2016-03-16 16:46:51 +01:00
Matthias Beyer 5aa663987b Implement: execute_pre_update_hooks() 2016-03-16 16:46:51 +01:00
Matthias Beyer 94128f8bcc Implement: execute_pre_retrieve_hooks() 2016-03-16 16:46:50 +01:00
Matthias Beyer 3244b87c7e Implement: execute_pre_create_hooks() 2016-03-16 16:46:50 +01:00
Matthias Beyer 975a2bc8b9 Implement: execute_pre_read_hooks() 2016-03-16 16:46:50 +01:00
Matthias Beyer ac280ba616 Insert pre/post hook execution functions 2016-03-16 16:46:50 +01:00
Matthias Beyer 3cf2588104 Add error types for pre/post hooks 2016-03-16 16:39:39 +01:00
Matthias Beyer 17b1d6c390 Redefine hook trait system 2016-03-16 16:39:39 +01:00
Matthias Beyer 001c80b72d Hook: Add traits which must be implemented for Hook 2016-03-16 16:39:39 +01:00
Matthias Beyer b9127381b8 Add hook registering 2016-03-16 16:39:39 +01:00
Matthias Beyer d99d25a3e1 Add HookRegisterError kind 2016-03-16 16:39:14 +01:00
Matthias Beyer e969b8678e Add hook traits 2016-03-16 16:39:14 +01:00
Matthias Beyer 8c220af300 Merge pull request #193 from matthiasbeyer/imag-counter/init
Imag counter/init
2016-03-16 16:35:46 +01:00
Matthias Beyer 8d234440b5 doc: imag-counter 2016-03-15 15:01:10 +01:00
Matthias Beyer 4c6f300965 Remove warnings: Unused result -> use trace_error() 2016-03-13 22:28:47 +01:00
Matthias Beyer b5f97a83c9 Add ArgGroup for output options 2016-03-13 22:28:47 +01:00
Matthias Beyer 89c34e74ef Fix semantics if is-empty filter 2016-03-13 20:23:47 +01:00
Matthias Beyer 183a9e1388 trace: Add missing newline 2016-03-12 19:39:00 +01:00
Kai Sickeler 0a94160895 Add field_grep filter
Signed-off-by: Matthias Beyer <mail@beyermatthias.de>
2016-03-12 18:22:00 +01:00
Matthias Beyer cd6e000be8 trace: Add missing newline 2016-03-12 16:06:10 +01:00