olsoloviov commented on code in PR #3293:
URL: https://github.com/apache/polaris/pull/3293#discussion_r2632087318
##########
runtime/service/src/main/java/org/apache/polaris/service/events/listeners/PolarisPersistenceEventListener.java:
##########
@@ -55,24 +82,38 @@ public void
onAfterCreateTable(IcebergRestCatalogEvents.AfterCreateTableEvent ev
processEvent(event.metadata().realmId(), polarisEvent);
}
- @Override
- public void
onAfterCreateCatalog(CatalogsServiceEvents.AfterCreateCatalogEvent event) {
- PolarisEvent polarisEvent =
- new PolarisEvent(
- event.catalog().getName(),
+ private void handleAfterCreateCatalog(PolarisEvent event) {
+ Catalog catalog = getRequiredAttribute(event, EventAttributes.CATALOG);
+ if (catalog == null) {
+ return;
+ }
+ org.apache.polaris.core.entity.PolarisEvent polarisEvent =
+ new org.apache.polaris.core.entity.PolarisEvent(
+ catalog.getName(),
event.metadata().eventId().toString(),
event.metadata().requestId().orElse(null),
- event.getClass().getSimpleName(),
+ event.type().name(),
event.metadata().timestamp().toEpochMilli(),
event.metadata().user().map(PolarisPrincipal::getName).orElse(null),
- PolarisEvent.ResourceType.CATALOG,
- event.catalog().getName());
+ org.apache.polaris.core.entity.PolarisEvent.ResourceType.CATALOG,
+ catalog.getName());
Map<String, String> openTelemetryContext =
event.metadata().openTelemetryContext();
if (!openTelemetryContext.isEmpty()) {
polarisEvent.setAdditionalProperties(openTelemetryContext);
}
processEvent(event.metadata().realmId(), polarisEvent);
}
- protected abstract void processEvent(String realmId, PolarisEvent event);
+ private <T> T getRequiredAttribute(PolarisEvent event, AttributeKey<T> key) {
Review Comment:
Moved to PolarisEvent, also switched to throw instead of logging
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]