public AvroAuditEvent convert()

in src/main/java/com/epam/digital/data/platform/starter/audit/converter/AuditToAvroConverter.java [38:67]


  public AvroAuditEvent convert(AuditEvent auditEvent) {
    String jsonContext;
    try {
      jsonContext = objectMapper.writeValueAsString(auditEvent.getContext());
    } catch (JsonProcessingException e) {
      throw new IllegalStateException("Couldn't serialize object", e);
    }
    var sourceInfo = Optional.ofNullable(auditEvent.getSourceInfo())
            .orElse(new AuditSourceInfo());
    var userInfo = Optional.ofNullable(auditEvent.getUserInfo())
            .orElse(new AuditUserInfo());
    return AvroAuditEvent.newBuilder()
        .setRequestId(auditEvent.getRequestId())
        .setApplicationName(auditEvent.getApplication())
        .setName(auditEvent.getName())
        .setSourceSystem(sourceInfo.getSystem())
        .setSourceApplication(sourceInfo.getApplication())
        .setSourceBusinessProcess(sourceInfo.getBusinessProcess())
        .setSourceBusinessProcessDefinitionId(sourceInfo.getBusinessProcessDefinitionId())
        .setSourceBusinessProcessInstanceId(sourceInfo.getBusinessProcessInstanceId())
        .setSourceBusinessActivity(sourceInfo.getBusinessActivity())
        .setSourceBusinessActivityId(sourceInfo.getBusinessActivityInstanceId())
        .setType(auditEvent.getEventType().toString())
        .setTimestamp(auditEvent.getCurrentTime())
        .setUserName(userInfo.getUserName())
        .setUserKeycloakId(userInfo.getUserKeycloakId())
        .setUserDrfo(userInfo.getUserDrfo())
        .setContext(jsonContext)
        .build();
  }