private void processIndexContent(final IndexField indexField, final String value) {
        try {
            Object val = null;

            if (indexField.getFldType().isNumeric()) {
                val = Long.parseLong(value);

            } else if (FieldType.DATE.equals(indexField.getFldType())) {
                try {
                    val = DateUtil.parseUnknownString(value);
                } catch (final Exception e) {
                    LOGGER.trace(e::getMessage, e);
                }
            } else {
                val = value;
            }

            // Add the current field to the document if it is not null.
            if (val != null) {
                // Output some debug.
                LOGGER.debug(() -> "processIndexContent() - Adding to index indexName=" +
                        indexRef.getName() +
                        " name=" +
                        indexField.getFldName() +
                        " value=" +
                        value);

                fieldsIndexed++;
                document.addField(indexField.getFldName(), val);
            }
        } catch (final RuntimeException e) {
            log(Severity.ERROR, e.getMessage(), e);
        }
    }
Sets the locator to use when reporting errors.

@param locator The locator to use.
stroom-search/stroom-search-solr/src/main/java/stroom/search/solr/indexing/SolrIndexingFilter.java