public List<AuditEventRecord> searchAuditRecords(String query, Map<String, Object> params) { if (StringUtils.isBlank(query)) { return new ArrayList<>(); } Map<String, Object> resultSet = new HashMap<String, Object>(); Set<Entry<String, Object>> paramSet = params.entrySet(); for (Entry<String, Object> p : paramSet) { if (p.getValue() instanceof AuditEventTypeType) { resultSet.put( p.getKey(), AuditEventType.toAuditEventType((AuditEventTypeType) p.getValue())); } else if (p.getValue() instanceof AuditEventStageType) { resultSet.put( p.getKey(), AuditEventStage.toAuditEventStage((AuditEventStageType) p.getValue())); } else { resultSet.put(p.getKey(), p.getValue()); } } return auditService.listRecords(query, resultSet); }