- Witold Szczerba
- Rafał Malinowski
This Guice Scope stored all data in Context objects that are provided by ContextProvider instances.
ContextProvider object are stored per-thread basis, so each thread can have its own Context (it is possible
to create ContextProvider that shared data between thread, so this is not a requirement).
ContextProvider objects can be changed at any time and also Context objects that there providers are
providing can change. Thanks to that objects that are ContextScoped can be stored per-thread, per-request
or even per-second. It only requires good implementation of ContextProvider and Context interfaces.