6
6
package org .hibernate .reactive .context .impl ;
7
7
8
8
import java .lang .invoke .MethodHandles ;
9
- import java .util .concurrent .ConcurrentHashMap ;
10
- import java .util .concurrent .ConcurrentMap ;
11
9
12
10
import io .vertx .core .Vertx ;
13
11
import io .vertx .core .impl .ContextInternal ;
14
- import io .vertx .core .spi .context .storage .AccessMode ;
15
12
16
13
import org .hibernate .reactive .context .Context ;
17
14
import org .hibernate .reactive .logging .impl .Log ;
@@ -42,7 +39,7 @@ public <T> void put(Key<T> key, T instance) {
42
39
final ContextInternal context = ContextInternal .current ();
43
40
if ( context != null ) {
44
41
if ( trace ) LOG .tracef ( "Putting key,value in context: [%1$s, %2$s]" , key , instance );
45
- VertxContext .< T > contextualDataMap ( context ).put ( key , instance );
42
+ context . localContextData ( ).put ( key , instance );
46
43
}
47
44
else {
48
45
if ( trace ) LOG .tracef ( "Context is null for key,value: [%1$s, %2$s]" , key , instance );
@@ -54,7 +51,8 @@ public <T> void put(Key<T> key, T instance) {
54
51
public <T > T get (Key <T > key ) {
55
52
final ContextInternal context = ContextInternal .current ();
56
53
if ( context != null ) {
57
- T local = VertxContext .<T >contextualDataMap ( context ).get ( key );
54
+ @ SuppressWarnings ("unchecked" )
55
+ T local = (T ) context .localContextData ().get ( key );
58
56
if ( trace ) LOG .tracef ( "Getting value %2$s from context for key %1$s" , key , local );
59
57
return local ;
60
58
}
@@ -68,7 +66,7 @@ public <T> T get(Key<T> key) {
68
66
public void remove (Key <?> key ) {
69
67
final ContextInternal context = ContextInternal .current ();
70
68
if ( context != null ) {
71
- boolean removed = contextualDataMap ( context ).remove ( key ) != null ;
69
+ boolean removed = context . localContextData ( ).remove ( key ) != null ;
72
70
if ( trace ) LOG .tracef ( "Key %s removed from context: %s" , key , removed );
73
71
}
74
72
else {
@@ -95,12 +93,4 @@ public void execute(Runnable runnable) {
95
93
}
96
94
}
97
95
98
- @ SuppressWarnings ({ "unchecked" })
99
- private static <T > ConcurrentMap <Key <T >, T > contextualDataMap (ContextInternal vertxContext ) {
100
- return vertxContext .getLocal (
101
- ContextualDataStorage .CONTEXTUAL_DATA_KEY ,
102
- AccessMode .CONCURRENT ,
103
- ConcurrentHashMap ::new
104
- );
105
- }
106
96
}
0 commit comments