@Override public boolean apply(final SubscriptionEvent event) { return event.getSubscriptionEventType() != null && // We want events coming from the blocking states table... ObjectType.BLOCKING_STATES.equals(event.getSubscriptionEventType().getObjectType()) && // ...that are for any service but entitlement !ENTITLEMENT_SERVICE_NAME.equals(event.getServiceName()); } }
private static List<AuditLog> getAuditLogsForSubscriptionEvent(final SubscriptionEvent subscriptionEvent, @Nullable final AccountAuditLogs accountAuditLogs) { if (accountAuditLogs == null) { return null; } final ObjectType subscriptionEventObjectType = subscriptionEvent.getSubscriptionEventType().getObjectType(); if (subscriptionEventObjectType == ObjectType.SUBSCRIPTION_EVENT) { return accountAuditLogs.getAuditLogsForSubscriptionEvent(subscriptionEvent.getId()); } else if (subscriptionEventObjectType == ObjectType.BLOCKING_STATES) { return accountAuditLogs.getAuditLogsForBlockingState(subscriptionEvent.getId()); } throw new IllegalStateException("Unepxected objectType " + subscriptionEventObjectType + " for SubscriptionEvent " + subscriptionEvent.getId()); }
private void checkSubscriptionEventAuditLog(final List<SubscriptionEvent> transitions, final int idx, final SubscriptionEventType expectedType) { assertEquals(transitions.get(idx).getSubscriptionEventType(), expectedType); final List<AuditLog> auditLogs = auditUserApi.getAuditLogs(transitions.get(idx).getId(), transitions.get(idx).getSubscriptionEventType().getObjectType(), AuditLevel.FULL, callContext); assertEquals(auditLogs.size(), 1); assertEquals(auditLogs.get(0).getChangeType(), ChangeType.INSERT); } }