5
5
import java .util .concurrent .ExecutorService ;
6
6
7
7
import info .unterrainer .commons .httpserver .exceptions .GracefulCancelationException ;
8
+ import info .unterrainer .commons .httpserver .extensions .AsyncExtensionContext ;
8
9
import info .unterrainer .commons .httpserver .extensions .delegates .PostDeleteAsync ;
9
10
import info .unterrainer .commons .httpserver .extensions .delegates .PostDeleteSync ;
10
11
import info .unterrainer .commons .httpserver .extensions .delegates .PostGetListAsync ;
@@ -52,10 +53,10 @@ public class HandlerExtensions<P extends BasicJpa, J extends BasicJson, E> {
52
53
private final List <PreModifyAsync <P , J >> preModifyAsync = new ArrayList <>();
53
54
private final List <PreModifySync <P , J , E >> preModifySync = new ArrayList <>();
54
55
55
- public J runPostGetSingle (final Context ctx , final E entityManager , final Long receivedId , final P readJpa ,
56
- final J response , final ExecutorService executorService ) {
56
+ public J runPostGetSingle (final Context ctx , final AsyncExtensionContext asyncCtx , final E entityManager ,
57
+ final Long receivedId , final P readJpa , final J response , final ExecutorService executorService ) {
57
58
for (PostGetSingleAsync <P , J > h : postGetSingleAsync ())
58
- executorService .execute (() -> h .handle (receivedId , readJpa , response ));
59
+ executorService .execute (() -> h .handle (asyncCtx , receivedId , readJpa , response ));
59
60
60
61
J result = response ;
61
62
for (PostGetSingleSync <P , J , E > h : postGetSingleSync ()) {
@@ -66,10 +67,11 @@ public J runPostGetSingle(final Context ctx, final E entityManager, final Long r
66
67
return result ;
67
68
}
68
69
69
- public ListJson <J > runPostGetList (final Context ctx , final E entityManager , final Long size , final Long offset ,
70
- final ListJson <P > readList , final ListJson <J > response , final ExecutorService executorService ) {
70
+ public ListJson <J > runPostGetList (final Context ctx , final AsyncExtensionContext asyncCtx , final E entityManager ,
71
+ final Long size , final Long offset , final ListJson <P > readList , final ListJson <J > response ,
72
+ final ExecutorService executorService ) {
71
73
for (PostGetListAsync <P , J > h : postGetListAsync ())
72
- executorService .execute (() -> h .handle (size , offset , readList , response ));
74
+ executorService .execute (() -> h .handle (asyncCtx , size , offset , readList , response ));
73
75
74
76
ListJson <J > result = response ;
75
77
for (PostGetListSync <P , J , E > h : postGetListSync ()) {
@@ -80,10 +82,10 @@ public ListJson<J> runPostGetList(final Context ctx, final E entityManager, fina
80
82
return result ;
81
83
}
82
84
83
- public P runPreInsert (final Context ctx , final E entityManager , final J receivedJson , final P resultJpa ,
84
- final ExecutorService executorService ) {
85
+ public P runPreInsert (final Context ctx , final AsyncExtensionContext asyncCtx , final E entityManager ,
86
+ final J receivedJson , final P resultJpa , final ExecutorService executorService ) {
85
87
for (PreInsertAsync <P , J > h : preInsertAsync ())
86
- executorService .execute (() -> h .handle (receivedJson , resultJpa ));
88
+ executorService .execute (() -> h .handle (asyncCtx , receivedJson , resultJpa ));
87
89
88
90
P result = resultJpa ;
89
91
for (PreInsertSync <P , J , E > h : preInsertSync ()) {
@@ -94,10 +96,11 @@ public P runPreInsert(final Context ctx, final E entityManager, final J received
94
96
return result ;
95
97
}
96
98
97
- public J runPostInsert (final Context ctx , final E entityManager , final J receivedJson , final P mappedJpa ,
98
- final P createdJpa , final J response , final ExecutorService executorService ) {
99
+ public J runPostInsert (final Context ctx , final AsyncExtensionContext asyncCtx , final E entityManager ,
100
+ final J receivedJson , final P mappedJpa , final P createdJpa , final J response ,
101
+ final ExecutorService executorService ) {
99
102
for (PostInsertAsync <P , J > h : postInsertAsync ())
100
- executorService .execute (() -> h .handle (receivedJson , mappedJpa , createdJpa , response ));
103
+ executorService .execute (() -> h .handle (asyncCtx , receivedJson , mappedJpa , createdJpa , response ));
101
104
102
105
J result = response ;
103
106
for (PostInsertSync <P , J , E > h : postInsertSync ()) {
@@ -108,10 +111,11 @@ public J runPostInsert(final Context ctx, final E entityManager, final J receive
108
111
return result ;
109
112
}
110
113
111
- public P runPreModify (final Context ctx , final E entityManager , final Long receivedId , final J receivedJson ,
112
- final P readJpa , final P resultJpa , final ExecutorService executorService ) {
114
+ public P runPreModify (final Context ctx , final AsyncExtensionContext asyncCtx , final E entityManager ,
115
+ final Long receivedId , final J receivedJson , final P readJpa , final P resultJpa ,
116
+ final ExecutorService executorService ) {
113
117
for (PreModifyAsync <P , J > h : preModifyAsync ())
114
- executorService .execute (() -> h .handle (receivedId , receivedJson , readJpa , resultJpa ));
118
+ executorService .execute (() -> h .handle (asyncCtx , receivedId , receivedJson , readJpa , resultJpa ));
115
119
116
120
P result = resultJpa ;
117
121
for (PreModifySync <P , J , E > h : preModifySync ()) {
@@ -122,12 +126,12 @@ public P runPreModify(final Context ctx, final E entityManager, final Long recei
122
126
return result ;
123
127
}
124
128
125
- public J runPostModify (final Context ctx , final E entityManager , final Long receivedId , final J receivedJson ,
126
- final P readJpa , final P mappedJpa , final P persistedJpa , final J response ,
127
- final ExecutorService executorService ) {
129
+ public J runPostModify (final Context ctx , final AsyncExtensionContext asyncCtx , final E entityManager ,
130
+ final Long receivedId , final J receivedJson , final P readJpa , final P mappedJpa , final P persistedJpa ,
131
+ final J response , final ExecutorService executorService ) {
128
132
for (PostModifyAsync <P , J > h : postModifyAsync ())
129
- executorService
130
- . execute (( ) -> h .handle (receivedId , receivedJson , readJpa , mappedJpa , persistedJpa , response ));
133
+ executorService . execute (
134
+ ( ) -> h .handle (asyncCtx , receivedId , receivedJson , readJpa , mappedJpa , persistedJpa , response ));
131
135
132
136
J result = response ;
133
137
for (PostModifySync <P , J , E > h : postModifySync ()) {
@@ -138,10 +142,10 @@ public J runPostModify(final Context ctx, final E entityManager, final Long rece
138
142
return result ;
139
143
}
140
144
141
- public Long runPreDelete (final Context ctx , final E entityManager , final Long receivedId ,
142
- final ExecutorService executorService ) {
145
+ public Long runPreDelete (final Context ctx , final AsyncExtensionContext asyncCtx , final E entityManager ,
146
+ final Long receivedId , final ExecutorService executorService ) {
143
147
for (PreDeleteAsync h : preDeleteAsync ())
144
- executorService .execute (() -> h .handle (receivedId ));
148
+ executorService .execute (() -> h .handle (asyncCtx , receivedId ));
145
149
146
150
Long result = receivedId ;
147
151
for (PreDeleteSync <E > h : preDeleteSync ()) {
@@ -152,10 +156,10 @@ public Long runPreDelete(final Context ctx, final E entityManager, final Long re
152
156
return result ;
153
157
}
154
158
155
- public void runPostDelete (final Context ctx , final E entityManager , final Long receivedId ,
156
- final ExecutorService executorService ) {
159
+ public void runPostDelete (final Context ctx , final AsyncExtensionContext asyncCtx , final E entityManager ,
160
+ final Long receivedId , final ExecutorService executorService ) {
157
161
for (PostDeleteAsync h : postDeleteAsync ())
158
- executorService .execute (() -> h .handle (receivedId ));
162
+ executorService .execute (() -> h .handle (asyncCtx , receivedId ));
159
163
160
164
for (PostDeleteSync <E > h : postDeleteSync ())
161
165
if (!h .handle (ctx , entityManager , receivedId ))
0 commit comments