final EventPayload payload = payloadFactoryToUse.payloadFor(
currentInvocation.getAction().getIdentifier(),
ObjectAdapterUtils.unwrapObject(undeletedElseEmpty(target)),
ObjectAdapterUtils.unwrapObjects(undeletedElseEmpty(parameters)),
ObjectAdapterUtils.unwrapObject(undeletedElseEmpty(result)));
payload.withStringifier(stringifier);
publishingService.publish(metadata, payload);
}
private static List<ObjectAdapter> undeletedElseEmpty(List<ObjectAdapter> parameters) {
return Lists.newArrayList(Iterables.transform(parameters, NOT_DESTROYED_ELSE_EMPTY));