| ListeningSecurityContextHolderStrategy.java |  | 0% |  | 0% | 18 | 18 | 48 | 48 | 14 | 14 | 2 | 2 |
| ObservationSecurityContextChangedListener.java |  | 0% |  | 0% | 11 | 11 | 30 | 30 | 3 | 3 | 1 | 1 |
| SecurityContextHolder.java |   | 31% |   | 25% | 16 | 21 | 34 | 50 | 10 | 15 | 0 | 1 |
| SecurityContextImpl.java |   | 11% |  | 0% | 11 | 14 | 18 | 23 | 4 | 7 | 0 | 1 |
| InheritableThreadLocalSecurityContextHolderStrategy.java |  | 0% |  | 0% | 12 | 12 | 22 | 22 | 11 | 11 | 1 | 1 |
| SecurityContextChangedEvent.java |  | 0% |  | 0% | 11 | 11 | 10 | 10 | 9 | 9 | 1 | 1 |
| ReactiveSecurityContextHolder.java |  | 0% | | n/a | 8 | 8 | 10 | 10 | 8 | 8 | 1 | 1 |
| ThreadLocalSecurityContextHolderStrategy.java |   | 52% |  | 100% | 5 | 12 | 12 | 22 | 5 | 11 | 0 | 1 |
| SecurityContextHolderThreadLocalAccessor.java |  | 0% |  | 0% | 6 | 6 | 10 | 10 | 5 | 5 | 1 | 1 |
| ReactiveSecurityContextHolderThreadLocalAccessor.java |  | 0% | | n/a | 6 | 6 | 9 | 9 | 6 | 6 | 1 | 1 |
| GlobalSecurityContextHolderStrategy.java |  | 0% |  | 0% | 6 | 6 | 10 | 10 | 5 | 5 | 1 | 1 |
| SecurityContextHolderStrategy.java |  | 0% | | n/a | 2 | 2 | 3 | 3 | 2 | 2 | 1 | 1 |
| TransientSecurityContext.java |  | 0% | | n/a | 2 | 2 | 4 | 4 | 2 | 2 | 1 | 1 |