From dd2184ab259fb544659ec28ce97467729e2974fe Mon Sep 17 00:00:00 2001 From: Martijn van Groningen Date: Wed, 20 Apr 2016 18:00:11 +0200 Subject: ingest: Streamline option naming for several processors: * `rename` processor, renamed `to` to `target_field` * `date` processor, renamed `match_field` to `field` and renamed `match_formats` to `formats` * `geoip` processor, renamed `source_field` to `field` and renamed `fields` to `properties` * `attachment` processor, renamed `source_field` to `field` and renamed `fields` to `properties` Closes #17835 --- .../elasticsearch/ingest/geoip/GeoIpProcessor.java | 56 +++++++++++----------- .../ingest/geoip/GeoIpProcessorFactoryTests.java | 46 +++++++++--------- .../ingest/geoip/GeoIpProcessorTests.java | 8 ++-- .../test/ingest_geoip/20_geoip_processor.yaml | 8 ++-- 4 files changed, 59 insertions(+), 59 deletions(-) (limited to 'plugins/ingest-geoip') diff --git a/plugins/ingest-geoip/src/main/java/org/elasticsearch/ingest/geoip/GeoIpProcessor.java b/plugins/ingest-geoip/src/main/java/org/elasticsearch/ingest/geoip/GeoIpProcessor.java index 4a15ea5bc4..4b153d468a 100644 --- a/plugins/ingest-geoip/src/main/java/org/elasticsearch/ingest/geoip/GeoIpProcessor.java +++ b/plugins/ingest-geoip/src/main/java/org/elasticsearch/ingest/geoip/GeoIpProcessor.java @@ -59,22 +59,22 @@ public final class GeoIpProcessor extends AbstractProcessor { public static final String TYPE = "geoip"; - private final String sourceField; + private final String field; private final String targetField; private final DatabaseReader dbReader; - private final Set fields; + private final Set properties; - GeoIpProcessor(String tag, String sourceField, DatabaseReader dbReader, String targetField, Set fields) throws IOException { + GeoIpProcessor(String tag, String field, DatabaseReader dbReader, String targetField, Set properties) throws IOException { super(tag); - this.sourceField = sourceField; + this.field = field; this.targetField = targetField; this.dbReader = dbReader; - this.fields = fields; + this.properties = properties; } @Override public void execute(IngestDocument ingestDocument) { - String ip = ingestDocument.getFieldValue(sourceField, String.class); + String ip = ingestDocument.getFieldValue(field, String.class); final InetAddress ipAddress = InetAddresses.forString(ip); Map geoData; @@ -104,8 +104,8 @@ public final class GeoIpProcessor extends AbstractProcessor { return TYPE; } - String getSourceField() { - return sourceField; + String getField() { + return field; } String getTargetField() { @@ -116,8 +116,8 @@ public final class GeoIpProcessor extends AbstractProcessor { return dbReader; } - Set getFields() { - return fields; + Set getProperties() { + return properties; } private Map retrieveCityGeoData(InetAddress ipAddress) { @@ -142,8 +142,8 @@ public final class GeoIpProcessor extends AbstractProcessor { Subdivision subdivision = response.getMostSpecificSubdivision(); Map geoData = new HashMap<>(); - for (Field field : fields) { - switch (field) { + for (Property property : this.properties) { + switch (property) { case IP: geoData.put("ip", NetworkAddress.format(ipAddress)); break; @@ -195,8 +195,8 @@ public final class GeoIpProcessor extends AbstractProcessor { Continent continent = response.getContinent(); Map geoData = new HashMap<>(); - for (Field field : fields) { - switch (field) { + for (Property property : this.properties) { + switch (property) { case IP: geoData.put("ip", NetworkAddress.format(ipAddress)); break; @@ -216,8 +216,8 @@ public final class GeoIpProcessor extends AbstractProcessor { public static final class Factory extends AbstractProcessorFactory implements Closeable { - static final Set DEFAULT_FIELDS = EnumSet.of( - Field.CONTINENT_NAME, Field.COUNTRY_ISO_CODE, Field.REGION_NAME, Field.CITY_NAME, Field.LOCATION + static final Set DEFAULT_PROPERTIES = EnumSet.of( + Property.CONTINENT_NAME, Property.COUNTRY_ISO_CODE, Property.REGION_NAME, Property.CITY_NAME, Property.LOCATION ); private final Map databaseReaders; @@ -228,30 +228,30 @@ public final class GeoIpProcessor extends AbstractProcessor { @Override public GeoIpProcessor doCreate(String processorTag, Map config) throws Exception { - String ipField = readStringProperty(TYPE, processorTag, config, "source_field"); + String ipField = readStringProperty(TYPE, processorTag, config, "field"); String targetField = readStringProperty(TYPE, processorTag, config, "target_field", "geoip"); String databaseFile = readStringProperty(TYPE, processorTag, config, "database_file", "GeoLite2-City.mmdb"); - List fieldNames = readOptionalList(TYPE, processorTag, config, "fields"); + List propertyNames = readOptionalList(TYPE, processorTag, config, "properties"); - final Set fields; - if (fieldNames != null) { - fields = EnumSet.noneOf(Field.class); - for (String fieldName : fieldNames) { + final Set properties; + if (propertyNames != null) { + properties = EnumSet.noneOf(Property.class); + for (String fieldName : propertyNames) { try { - fields.add(Field.parse(fieldName)); + properties.add(Property.parse(fieldName)); } catch (Exception e) { - throw newConfigurationException(TYPE, processorTag, "fields", "illegal field option [" + fieldName + "]. valid values are [" + Arrays.toString(Field.values()) + "]"); + throw newConfigurationException(TYPE, processorTag, "properties", "illegal field option [" + fieldName + "]. valid values are [" + Arrays.toString(Property.values()) + "]"); } } } else { - fields = DEFAULT_FIELDS; + properties = DEFAULT_PROPERTIES; } DatabaseReader databaseReader = databaseReaders.get(databaseFile); if (databaseReader == null) { throw newConfigurationException(TYPE, processorTag, "database_file", "database file [" + databaseFile + "] doesn't exist"); } - return new GeoIpProcessor(processorTag, ipField, databaseReader, targetField, fields); + return new GeoIpProcessor(processorTag, ipField, databaseReader, targetField, properties); } @Override @@ -270,7 +270,7 @@ public final class GeoIpProcessor extends AbstractProcessor { } } - public enum Field { + enum Property { IP, COUNTRY_ISO_CODE, @@ -283,7 +283,7 @@ public final class GeoIpProcessor extends AbstractProcessor { LONGITUDE, LOCATION; - public static Field parse(String value) { + public static Property parse(String value) { return valueOf(value.toUpperCase(Locale.ROOT)); } } diff --git a/plugins/ingest-geoip/src/test/java/org/elasticsearch/ingest/geoip/GeoIpProcessorFactoryTests.java b/plugins/ingest-geoip/src/test/java/org/elasticsearch/ingest/geoip/GeoIpProcessorFactoryTests.java index 13143a0965..794f64bf01 100644 --- a/plugins/ingest-geoip/src/test/java/org/elasticsearch/ingest/geoip/GeoIpProcessorFactoryTests.java +++ b/plugins/ingest-geoip/src/test/java/org/elasticsearch/ingest/geoip/GeoIpProcessorFactoryTests.java @@ -69,36 +69,36 @@ public class GeoIpProcessorFactoryTests extends ESTestCase { GeoIpProcessor.Factory factory = new GeoIpProcessor.Factory(databaseReaders); Map config = new HashMap<>(); - config.put("source_field", "_field"); + config.put("field", "_field"); String processorTag = randomAsciiOfLength(10); config.put(AbstractProcessorFactory.TAG_KEY, processorTag); GeoIpProcessor processor = factory.create(config); assertThat(processor.getTag(), equalTo(processorTag)); - assertThat(processor.getSourceField(), equalTo("_field")); + assertThat(processor.getField(), equalTo("_field")); assertThat(processor.getTargetField(), equalTo("geoip")); assertThat(processor.getDbReader().getMetadata().getDatabaseType(), equalTo("GeoLite2-City")); - assertThat(processor.getFields(), sameInstance(GeoIpProcessor.Factory.DEFAULT_FIELDS)); + assertThat(processor.getProperties(), sameInstance(GeoIpProcessor.Factory.DEFAULT_PROPERTIES)); } public void testBuildTargetField() throws Exception { GeoIpProcessor.Factory factory = new GeoIpProcessor.Factory(databaseReaders); Map config = new HashMap<>(); - config.put("source_field", "_field"); + config.put("field", "_field"); config.put("target_field", "_field"); GeoIpProcessor processor = factory.create(config); - assertThat(processor.getSourceField(), equalTo("_field")); + assertThat(processor.getField(), equalTo("_field")); assertThat(processor.getTargetField(), equalTo("_field")); } public void testBuildDbFile() throws Exception { GeoIpProcessor.Factory factory = new GeoIpProcessor.Factory(databaseReaders); Map config = new HashMap<>(); - config.put("source_field", "_field"); + config.put("field", "_field"); config.put("database_file", "GeoLite2-Country.mmdb"); GeoIpProcessor processor = factory.create(config); - assertThat(processor.getSourceField(), equalTo("_field")); + assertThat(processor.getField(), equalTo("_field")); assertThat(processor.getTargetField(), equalTo("geoip")); assertThat(processor.getDbReader().getMetadata().getDatabaseType(), equalTo("GeoLite2-Country")); } @@ -107,7 +107,7 @@ public class GeoIpProcessorFactoryTests extends ESTestCase { GeoIpProcessor.Factory factory = new GeoIpProcessor.Factory(databaseReaders); Map config = new HashMap<>(); - config.put("source_field", "_field"); + config.put("field", "_field"); config.put("database_file", "does-not-exist.mmdb"); try { factory.create(config); @@ -120,43 +120,43 @@ public class GeoIpProcessorFactoryTests extends ESTestCase { public void testBuildFields() throws Exception { GeoIpProcessor.Factory factory = new GeoIpProcessor.Factory(databaseReaders); - Set fields = EnumSet.noneOf(GeoIpProcessor.Field.class); + Set properties = EnumSet.noneOf(GeoIpProcessor.Property.class); List fieldNames = new ArrayList<>(); - int numFields = scaledRandomIntBetween(1, GeoIpProcessor.Field.values().length); + int numFields = scaledRandomIntBetween(1, GeoIpProcessor.Property.values().length); for (int i = 0; i < numFields; i++) { - GeoIpProcessor.Field field = GeoIpProcessor.Field.values()[i]; - fields.add(field); - fieldNames.add(field.name().toLowerCase(Locale.ROOT)); + GeoIpProcessor.Property property = GeoIpProcessor.Property.values()[i]; + properties.add(property); + fieldNames.add(property.name().toLowerCase(Locale.ROOT)); } Map config = new HashMap<>(); - config.put("source_field", "_field"); - config.put("fields", fieldNames); + config.put("field", "_field"); + config.put("properties", fieldNames); GeoIpProcessor processor = factory.create(config); - assertThat(processor.getSourceField(), equalTo("_field")); - assertThat(processor.getFields(), equalTo(fields)); + assertThat(processor.getField(), equalTo("_field")); + assertThat(processor.getProperties(), equalTo(properties)); } public void testBuildIllegalFieldOption() throws Exception { GeoIpProcessor.Factory factory = new GeoIpProcessor.Factory(databaseReaders); Map config = new HashMap<>(); - config.put("source_field", "_field"); - config.put("fields", Collections.singletonList("invalid")); + config.put("field", "_field"); + config.put("properties", Collections.singletonList("invalid")); try { factory.create(config); fail("exception expected"); } catch (ElasticsearchParseException e) { - assertThat(e.getMessage(), equalTo("[fields] illegal field option [invalid]. valid values are [[IP, COUNTRY_ISO_CODE, COUNTRY_NAME, CONTINENT_NAME, REGION_NAME, CITY_NAME, TIMEZONE, LATITUDE, LONGITUDE, LOCATION]]")); + assertThat(e.getMessage(), equalTo("[properties] illegal field option [invalid]. valid values are [[IP, COUNTRY_ISO_CODE, COUNTRY_NAME, CONTINENT_NAME, REGION_NAME, CITY_NAME, TIMEZONE, LATITUDE, LONGITUDE, LOCATION]]")); } config = new HashMap<>(); - config.put("source_field", "_field"); - config.put("fields", "invalid"); + config.put("field", "_field"); + config.put("properties", "invalid"); try { factory.create(config); fail("exception expected"); } catch (ElasticsearchParseException e) { - assertThat(e.getMessage(), equalTo("[fields] property isn't a list, but of type [java.lang.String]")); + assertThat(e.getMessage(), equalTo("[properties] property isn't a list, but of type [java.lang.String]")); } } } diff --git a/plugins/ingest-geoip/src/test/java/org/elasticsearch/ingest/geoip/GeoIpProcessorTests.java b/plugins/ingest-geoip/src/test/java/org/elasticsearch/ingest/geoip/GeoIpProcessorTests.java index 43517986c8..f646895d7c 100644 --- a/plugins/ingest-geoip/src/test/java/org/elasticsearch/ingest/geoip/GeoIpProcessorTests.java +++ b/plugins/ingest-geoip/src/test/java/org/elasticsearch/ingest/geoip/GeoIpProcessorTests.java @@ -36,7 +36,7 @@ public class GeoIpProcessorTests extends ESTestCase { public void testCity() throws Exception { InputStream database = GeoIpProcessor.class.getResourceAsStream("/GeoLite2-City.mmdb"); - GeoIpProcessor processor = new GeoIpProcessor(randomAsciiOfLength(10), "source_field", new DatabaseReader.Builder(database).build(), "target_field", EnumSet.allOf(GeoIpProcessor.Field.class)); + GeoIpProcessor processor = new GeoIpProcessor(randomAsciiOfLength(10), "source_field", new DatabaseReader.Builder(database).build(), "target_field", EnumSet.allOf(GeoIpProcessor.Property.class)); Map document = new HashMap<>(); document.put("source_field", "82.170.213.79"); @@ -62,7 +62,7 @@ public class GeoIpProcessorTests extends ESTestCase { public void testCountry() throws Exception { InputStream database = GeoIpProcessor.class.getResourceAsStream("/GeoLite2-Country.mmdb"); - GeoIpProcessor processor = new GeoIpProcessor(randomAsciiOfLength(10), "source_field", new DatabaseReader.Builder(database).build(), "target_field", EnumSet.allOf(GeoIpProcessor.Field.class)); + GeoIpProcessor processor = new GeoIpProcessor(randomAsciiOfLength(10), "source_field", new DatabaseReader.Builder(database).build(), "target_field", EnumSet.allOf(GeoIpProcessor.Property.class)); Map document = new HashMap<>(); document.put("source_field", "82.170.213.79"); @@ -81,7 +81,7 @@ public class GeoIpProcessorTests extends ESTestCase { public void testAddressIsNotInTheDatabase() throws Exception { InputStream database = GeoIpProcessor.class.getResourceAsStream("/GeoLite2-City.mmdb"); - GeoIpProcessor processor = new GeoIpProcessor(randomAsciiOfLength(10), "source_field", new DatabaseReader.Builder(database).build(), "target_field", EnumSet.allOf(GeoIpProcessor.Field.class)); + GeoIpProcessor processor = new GeoIpProcessor(randomAsciiOfLength(10), "source_field", new DatabaseReader.Builder(database).build(), "target_field", EnumSet.allOf(GeoIpProcessor.Property.class)); Map document = new HashMap<>(); document.put("source_field", "202.45.11.11"); @@ -95,7 +95,7 @@ public class GeoIpProcessorTests extends ESTestCase { /** Don't silently do DNS lookups or anything trappy on bogus data */ public void testInvalid() throws Exception { InputStream database = GeoIpProcessor.class.getResourceAsStream("/GeoLite2-City.mmdb"); - GeoIpProcessor processor = new GeoIpProcessor(randomAsciiOfLength(10), "source_field", new DatabaseReader.Builder(database).build(), "target_field", EnumSet.allOf(GeoIpProcessor.Field.class)); + GeoIpProcessor processor = new GeoIpProcessor(randomAsciiOfLength(10), "source_field", new DatabaseReader.Builder(database).build(), "target_field", EnumSet.allOf(GeoIpProcessor.Property.class)); Map document = new HashMap<>(); document.put("source_field", "www.google.com"); diff --git a/plugins/ingest-geoip/src/test/resources/rest-api-spec/test/ingest_geoip/20_geoip_processor.yaml b/plugins/ingest-geoip/src/test/resources/rest-api-spec/test/ingest_geoip/20_geoip_processor.yaml index 704f288646..219497915d 100644 --- a/plugins/ingest-geoip/src/test/resources/rest-api-spec/test/ingest_geoip/20_geoip_processor.yaml +++ b/plugins/ingest-geoip/src/test/resources/rest-api-spec/test/ingest_geoip/20_geoip_processor.yaml @@ -9,7 +9,7 @@ "processors": [ { "geoip" : { - "source_field" : "field1" + "field" : "field1" } } ] @@ -53,8 +53,8 @@ "processors": [ { "geoip" : { - "source_field" : "field1", - "fields" : ["city_name", "country_iso_code", "ip", "latitude", "longitude", "location", "timezone", "country_name", "region_name", "continent_name"] + "field" : "field1", + "properties" : ["city_name", "country_iso_code", "ip", "latitude", "longitude", "location", "timezone", "country_name", "region_name", "continent_name"] } } ] @@ -97,7 +97,7 @@ "processors": [ { "geoip" : { - "source_field" : "field1", + "field" : "field1", "database_file" : "GeoLite2-Country.mmdb" } } -- cgit v1.2.3