private void updateRecord(ProcessContext context, Record record, Map<String, String> fieldsNameMapping) { String conflictPolicy = context.getPropertyValue(CONFLICT_RESOLUTION_POLICY).asString(); if ((fieldsNameMapping == null) || (fieldsNameMapping.keySet() == null)) { return; } fieldsNameMapping.keySet().forEach(addedFieldName -> { final String defaultValueToAdd = context.getPropertyValue(addedFieldName).evaluate(record).asString(); // field is already here if (record.hasField(addedFieldName)) { if (conflictPolicy.equals(OVERWRITE_EXISTING.getValue())) { overwriteObsoleteFieldValue(record, addedFieldName, defaultValueToAdd); } } else { record.setStringField(addedFieldName, defaultValueToAdd); } }); }
recordKeyName = context.getPropertyValue(RECORD_KEY_FIELD).evaluate(record).asString(); indexName = context.getPropertyValue(ES_INDEX_FIELD).evaluate(record).asString(); typeName = context.getPropertyValue(ES_TYPE_FIELD).evaluate(record).asString(); includesFieldName = context.getPropertyValue(ES_INCLUDES_FIELD).evaluate(record).asString(); } catch (Throwable t) { record.setStringField(FieldDictionary.RECORD_ERRORS, "Failure in executing EL. Error: " + t.getMessage());
recordKeyName = context.getPropertyValue(RECORD_KEY_FIELD).evaluate(record).asString(); indexName = context.getPropertyValue(COLLECTION_NAME).evaluate(record).asString(); if (context.getPropertyValue(TYPE_NAME).isSet()) typeName = context.getPropertyValue(TYPE_NAME).evaluate(record).asString(); includesFieldName = context.getPropertyValue(INCLUDES_FIELD).evaluate(record).asString(); } catch (Throwable t) { record.setStringField(FieldDictionary.RECORD_ERRORS, "Failure in executing EL. Error: " + t.getMessage());