Skip to content

Commit 09c5600

Browse files
committed
Enable multiple event listers to consume for Polaris events
1 parent 82d0e09 commit 09c5600

38 files changed

Lines changed: 787 additions & 273 deletions

File tree

polaris-core/src/main/java/org/apache/polaris/core/connection/OAuthClientCredentialsParametersDpo.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020

2121
import com.fasterxml.jackson.annotation.JsonIgnore;
2222
import com.fasterxml.jackson.annotation.JsonProperty;
23-
import com.google.common.base.Joiner;
2423
import com.google.common.base.MoreObjects;
2524
import jakarta.annotation.Nonnull;
2625
import jakarta.annotation.Nullable;
@@ -43,9 +42,6 @@
4342
* API model.
4443
*/
4544
public class OAuthClientCredentialsParametersDpo extends AuthenticationParametersDpo {
46-
47-
private static final Joiner COLON_JOINER = Joiner.on(":");
48-
4945
@JsonProperty(value = "tokenUri")
5046
private final String tokenUri;
5147

runtime/service/src/main/java/org/apache/polaris/service/admin/PolarisCatalogsEventServiceDelegator.java

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -45,29 +45,29 @@
4545
import org.apache.polaris.service.events.EventAttributeMap;
4646
import org.apache.polaris.service.events.EventAttributes;
4747
import org.apache.polaris.service.events.PolarisEvent;
48+
import org.apache.polaris.service.events.PolarisEventDispatcher;
4849
import org.apache.polaris.service.events.PolarisEventMetadataFactory;
4950
import org.apache.polaris.service.events.PolarisEventType;
50-
import org.apache.polaris.service.events.listeners.PolarisEventListener;
5151

5252
@Decorator
5353
@Priority(1000)
5454
public class PolarisCatalogsEventServiceDelegator implements PolarisCatalogsApiService {
5555

5656
@Inject @Delegate PolarisCatalogsApiService delegate;
57-
@Inject PolarisEventListener polarisEventListener;
57+
@Inject PolarisEventDispatcher polarisEventDispatcher;
5858
@Inject PolarisEventMetadataFactory eventMetadataFactory;
5959

6060
@Override
6161
public Response createCatalog(
6262
CreateCatalogRequest request, RealmContext realmContext, SecurityContext securityContext) {
63-
polarisEventListener.onEvent(
63+
polarisEventDispatcher.dispatch(
6464
new PolarisEvent(
6565
PolarisEventType.BEFORE_CREATE_CATALOG,
6666
eventMetadataFactory.create(),
6767
new EventAttributeMap()
6868
.put(EventAttributes.CATALOG_NAME, request.getCatalog().getName())));
6969
Response resp = delegate.createCatalog(request, realmContext, securityContext);
70-
polarisEventListener.onEvent(
70+
polarisEventDispatcher.dispatch(
7171
new PolarisEvent(
7272
PolarisEventType.AFTER_CREATE_CATALOG,
7373
eventMetadataFactory.create(),
@@ -78,13 +78,13 @@ public Response createCatalog(
7878
@Override
7979
public Response deleteCatalog(
8080
String catalogName, RealmContext realmContext, SecurityContext securityContext) {
81-
polarisEventListener.onEvent(
81+
polarisEventDispatcher.dispatch(
8282
new PolarisEvent(
8383
PolarisEventType.BEFORE_DELETE_CATALOG,
8484
eventMetadataFactory.create(),
8585
new EventAttributeMap().put(EventAttributes.CATALOG_NAME, catalogName)));
8686
Response resp = delegate.deleteCatalog(catalogName, realmContext, securityContext);
87-
polarisEventListener.onEvent(
87+
polarisEventDispatcher.dispatch(
8888
new PolarisEvent(
8989
PolarisEventType.AFTER_DELETE_CATALOG,
9090
eventMetadataFactory.create(),
@@ -95,13 +95,13 @@ public Response deleteCatalog(
9595
@Override
9696
public Response getCatalog(
9797
String catalogName, RealmContext realmContext, SecurityContext securityContext) {
98-
polarisEventListener.onEvent(
98+
polarisEventDispatcher.dispatch(
9999
new PolarisEvent(
100100
PolarisEventType.BEFORE_GET_CATALOG,
101101
eventMetadataFactory.create(),
102102
new EventAttributeMap().put(EventAttributes.CATALOG_NAME, catalogName)));
103103
Response resp = delegate.getCatalog(catalogName, realmContext, securityContext);
104-
polarisEventListener.onEvent(
104+
polarisEventDispatcher.dispatch(
105105
new PolarisEvent(
106106
PolarisEventType.AFTER_GET_CATALOG,
107107
eventMetadataFactory.create(),
@@ -115,7 +115,7 @@ public Response updateCatalog(
115115
UpdateCatalogRequest updateRequest,
116116
RealmContext realmContext,
117117
SecurityContext securityContext) {
118-
polarisEventListener.onEvent(
118+
polarisEventDispatcher.dispatch(
119119
new PolarisEvent(
120120
PolarisEventType.BEFORE_UPDATE_CATALOG,
121121
eventMetadataFactory.create(),
@@ -124,7 +124,7 @@ public Response updateCatalog(
124124
.put(EventAttributes.UPDATE_CATALOG_REQUEST, updateRequest)));
125125
Response resp =
126126
delegate.updateCatalog(catalogName, updateRequest, realmContext, securityContext);
127-
polarisEventListener.onEvent(
127+
polarisEventDispatcher.dispatch(
128128
new PolarisEvent(
129129
PolarisEventType.AFTER_UPDATE_CATALOG,
130130
eventMetadataFactory.create(),
@@ -134,13 +134,13 @@ public Response updateCatalog(
134134

135135
@Override
136136
public Response listCatalogs(RealmContext realmContext, SecurityContext securityContext) {
137-
polarisEventListener.onEvent(
137+
polarisEventDispatcher.dispatch(
138138
new PolarisEvent(
139139
PolarisEventType.BEFORE_LIST_CATALOGS,
140140
eventMetadataFactory.create(),
141141
new EventAttributeMap()));
142142
Response resp = delegate.listCatalogs(realmContext, securityContext);
143-
polarisEventListener.onEvent(
143+
polarisEventDispatcher.dispatch(
144144
new PolarisEvent(
145145
PolarisEventType.AFTER_LIST_CATALOGS,
146146
eventMetadataFactory.create(),
@@ -154,15 +154,15 @@ public Response createCatalogRole(
154154
CreateCatalogRoleRequest request,
155155
RealmContext realmContext,
156156
SecurityContext securityContext) {
157-
polarisEventListener.onEvent(
157+
polarisEventDispatcher.dispatch(
158158
new PolarisEvent(
159159
PolarisEventType.BEFORE_CREATE_CATALOG_ROLE,
160160
eventMetadataFactory.create(),
161161
new EventAttributeMap()
162162
.put(EventAttributes.CATALOG_NAME, catalogName)
163163
.put(EventAttributes.CATALOG_ROLE_NAME, request.getCatalogRole().getName())));
164164
Response resp = delegate.createCatalogRole(catalogName, request, realmContext, securityContext);
165-
polarisEventListener.onEvent(
165+
polarisEventDispatcher.dispatch(
166166
new PolarisEvent(
167167
PolarisEventType.AFTER_CREATE_CATALOG_ROLE,
168168
eventMetadataFactory.create(),
@@ -178,7 +178,7 @@ public Response deleteCatalogRole(
178178
String catalogRoleName,
179179
RealmContext realmContext,
180180
SecurityContext securityContext) {
181-
polarisEventListener.onEvent(
181+
polarisEventDispatcher.dispatch(
182182
new PolarisEvent(
183183
PolarisEventType.BEFORE_DELETE_CATALOG_ROLE,
184184
eventMetadataFactory.create(),
@@ -187,7 +187,7 @@ public Response deleteCatalogRole(
187187
.put(EventAttributes.CATALOG_ROLE_NAME, catalogRoleName)));
188188
Response resp =
189189
delegate.deleteCatalogRole(catalogName, catalogRoleName, realmContext, securityContext);
190-
polarisEventListener.onEvent(
190+
polarisEventDispatcher.dispatch(
191191
new PolarisEvent(
192192
PolarisEventType.AFTER_DELETE_CATALOG_ROLE,
193193
eventMetadataFactory.create(),
@@ -203,7 +203,7 @@ public Response getCatalogRole(
203203
String catalogRoleName,
204204
RealmContext realmContext,
205205
SecurityContext securityContext) {
206-
polarisEventListener.onEvent(
206+
polarisEventDispatcher.dispatch(
207207
new PolarisEvent(
208208
PolarisEventType.BEFORE_GET_CATALOG_ROLE,
209209
eventMetadataFactory.create(),
@@ -212,7 +212,7 @@ public Response getCatalogRole(
212212
.put(EventAttributes.CATALOG_ROLE_NAME, catalogRoleName)));
213213
Response resp =
214214
delegate.getCatalogRole(catalogName, catalogRoleName, realmContext, securityContext);
215-
polarisEventListener.onEvent(
215+
polarisEventDispatcher.dispatch(
216216
new PolarisEvent(
217217
PolarisEventType.AFTER_GET_CATALOG_ROLE,
218218
eventMetadataFactory.create(),
@@ -229,7 +229,7 @@ public Response updateCatalogRole(
229229
UpdateCatalogRoleRequest updateRequest,
230230
RealmContext realmContext,
231231
SecurityContext securityContext) {
232-
polarisEventListener.onEvent(
232+
polarisEventDispatcher.dispatch(
233233
new PolarisEvent(
234234
PolarisEventType.BEFORE_UPDATE_CATALOG_ROLE,
235235
eventMetadataFactory.create(),
@@ -240,7 +240,7 @@ public Response updateCatalogRole(
240240
Response resp =
241241
delegate.updateCatalogRole(
242242
catalogName, catalogRoleName, updateRequest, realmContext, securityContext);
243-
polarisEventListener.onEvent(
243+
polarisEventDispatcher.dispatch(
244244
new PolarisEvent(
245245
PolarisEventType.AFTER_UPDATE_CATALOG_ROLE,
246246
eventMetadataFactory.create(),
@@ -253,13 +253,13 @@ public Response updateCatalogRole(
253253
@Override
254254
public Response listCatalogRoles(
255255
String catalogName, RealmContext realmContext, SecurityContext securityContext) {
256-
polarisEventListener.onEvent(
256+
polarisEventDispatcher.dispatch(
257257
new PolarisEvent(
258258
PolarisEventType.BEFORE_LIST_CATALOG_ROLES,
259259
eventMetadataFactory.create(),
260260
new EventAttributeMap().put(EventAttributes.CATALOG_NAME, catalogName)));
261261
Response resp = delegate.listCatalogRoles(catalogName, realmContext, securityContext);
262-
polarisEventListener.onEvent(
262+
polarisEventDispatcher.dispatch(
263263
new PolarisEvent(
264264
PolarisEventType.AFTER_LIST_CATALOG_ROLES,
265265
eventMetadataFactory.create(),
@@ -274,7 +274,7 @@ public Response addGrantToCatalogRole(
274274
AddGrantRequest grantRequest,
275275
RealmContext realmContext,
276276
SecurityContext securityContext) {
277-
polarisEventListener.onEvent(
277+
polarisEventDispatcher.dispatch(
278278
new PolarisEvent(
279279
PolarisEventType.BEFORE_ADD_GRANT_TO_CATALOG_ROLE,
280280
eventMetadataFactory.create(),
@@ -286,7 +286,7 @@ public Response addGrantToCatalogRole(
286286
delegate.addGrantToCatalogRole(
287287
catalogName, catalogRoleName, grantRequest, realmContext, securityContext);
288288
GrantResource grantResource = grantRequest.getGrant();
289-
polarisEventListener.onEvent(
289+
polarisEventDispatcher.dispatch(
290290
new PolarisEvent(
291291
PolarisEventType.AFTER_ADD_GRANT_TO_CATALOG_ROLE,
292292
eventMetadataFactory.create(),
@@ -306,7 +306,7 @@ public Response revokeGrantFromCatalogRole(
306306
RevokeGrantRequest grantRequest,
307307
RealmContext realmContext,
308308
SecurityContext securityContext) {
309-
polarisEventListener.onEvent(
309+
polarisEventDispatcher.dispatch(
310310
new PolarisEvent(
311311
PolarisEventType.BEFORE_REVOKE_GRANT_FROM_CATALOG_ROLE,
312312
eventMetadataFactory.create(),
@@ -319,7 +319,7 @@ public Response revokeGrantFromCatalogRole(
319319
delegate.revokeGrantFromCatalogRole(
320320
catalogName, catalogRoleName, cascade, grantRequest, realmContext, securityContext);
321321
GrantResource grantResource = grantRequest.getGrant();
322-
polarisEventListener.onEvent(
322+
polarisEventDispatcher.dispatch(
323323
new PolarisEvent(
324324
PolarisEventType.AFTER_REVOKE_GRANT_FROM_CATALOG_ROLE,
325325
eventMetadataFactory.create(),
@@ -338,7 +338,7 @@ public Response listAssigneePrincipalRolesForCatalogRole(
338338
String catalogRoleName,
339339
RealmContext realmContext,
340340
SecurityContext securityContext) {
341-
polarisEventListener.onEvent(
341+
polarisEventDispatcher.dispatch(
342342
new PolarisEvent(
343343
PolarisEventType.BEFORE_LIST_ASSIGNEE_PRINCIPAL_ROLES_FOR_CATALOG_ROLE,
344344
eventMetadataFactory.create(),
@@ -348,7 +348,7 @@ public Response listAssigneePrincipalRolesForCatalogRole(
348348
Response resp =
349349
delegate.listAssigneePrincipalRolesForCatalogRole(
350350
catalogName, catalogRoleName, realmContext, securityContext);
351-
polarisEventListener.onEvent(
351+
polarisEventDispatcher.dispatch(
352352
new PolarisEvent(
353353
PolarisEventType.AFTER_LIST_ASSIGNEE_PRINCIPAL_ROLES_FOR_CATALOG_ROLE,
354354
eventMetadataFactory.create(),
@@ -364,7 +364,7 @@ public Response listGrantsForCatalogRole(
364364
String catalogRoleName,
365365
RealmContext realmContext,
366366
SecurityContext securityContext) {
367-
polarisEventListener.onEvent(
367+
polarisEventDispatcher.dispatch(
368368
new PolarisEvent(
369369
PolarisEventType.BEFORE_LIST_GRANTS_FOR_CATALOG_ROLE,
370370
eventMetadataFactory.create(),
@@ -374,7 +374,7 @@ public Response listGrantsForCatalogRole(
374374
Response resp =
375375
delegate.listGrantsForCatalogRole(
376376
catalogName, catalogRoleName, realmContext, securityContext);
377-
polarisEventListener.onEvent(
377+
polarisEventDispatcher.dispatch(
378378
new PolarisEvent(
379379
PolarisEventType.AFTER_LIST_GRANTS_FOR_CATALOG_ROLE,
380380
eventMetadataFactory.create(),

0 commit comments

Comments
 (0)