From 9510e712cf426208cf5656cf66c2f406cc8766e3 Mon Sep 17 00:00:00 2001 From: venkataraopasyavula Date: Tue, 11 Jul 2023 18:12:00 +0530 Subject: [PATCH] GitHub-issue#253 : Implemented GeoIP processor functionality. Addressed Code review comments Signed-off-by: venkataraopasyavula --- data-prepper-plugins/geoip-processor/README.md | 2 +- .../plugins/processor/configuration/MaxMindServiceConfig.java | 4 +++- .../plugins/processor/loadtype/LoadTypeOptions.java | 2 +- .../processor/configuration/MaxMindServiceConfigTest.java | 4 ++-- .../plugins/processor/loadtype/LoadTypeOptionsTest.java | 2 +- 5 files changed, 8 insertions(+), 6 deletions(-) diff --git a/data-prepper-plugins/geoip-processor/README.md b/data-prepper-plugins/geoip-processor/README.md index d54d1af1c0..d1f4c61e19 100644 --- a/data-prepper-plugins/geoip-processor/README.md +++ b/data-prepper-plugins/geoip-processor/README.md @@ -58,7 +58,7 @@ pipeline: - `url` (Required) : Provide URL for all three S3, maxmind URL or local file path. -- `load_type` (Required) : Load type used for better performance while enrich the data. There are two type load_type are present i.e "in_memory" or "cache". +- `load_type` (Required) : Load type used for better performance while enrich the data. There are two type load_type are present i.e "memory_map" or "cache". - `cache_size` (Optional) : Used to mention the cache size. Default cache size is 2MB. Cache size applicable when load_type is cache. diff --git a/data-prepper-plugins/geoip-processor/src/main/java/org/opensearch/dataprepper/plugins/processor/configuration/MaxMindServiceConfig.java b/data-prepper-plugins/geoip-processor/src/main/java/org/opensearch/dataprepper/plugins/processor/configuration/MaxMindServiceConfig.java index 85bbba3c74..43b454b6c8 100644 --- a/data-prepper-plugins/geoip-processor/src/main/java/org/opensearch/dataprepper/plugins/processor/configuration/MaxMindServiceConfig.java +++ b/data-prepper-plugins/geoip-processor/src/main/java/org/opensearch/dataprepper/plugins/processor/configuration/MaxMindServiceConfig.java @@ -14,6 +14,8 @@ public class MaxMindServiceConfig { + private static final Duration DEFAULT_CACHE_REFRESH_SCHEDULE = Duration.parse("P15D"); + @JsonProperty("database_path") @NotNull List databasePath; @@ -27,7 +29,7 @@ public class MaxMindServiceConfig { @JsonProperty("cache_refresh_schedule") @NotNull - private Duration cacheRefreshSchedule; + private Duration cacheRefreshSchedule = DEFAULT_CACHE_REFRESH_SCHEDULE; /** * Get the list of Configured Database path options diff --git a/data-prepper-plugins/geoip-processor/src/main/java/org/opensearch/dataprepper/plugins/processor/loadtype/LoadTypeOptions.java b/data-prepper-plugins/geoip-processor/src/main/java/org/opensearch/dataprepper/plugins/processor/loadtype/LoadTypeOptions.java index b8507a62ad..38fe132a07 100644 --- a/data-prepper-plugins/geoip-processor/src/main/java/org/opensearch/dataprepper/plugins/processor/loadtype/LoadTypeOptions.java +++ b/data-prepper-plugins/geoip-processor/src/main/java/org/opensearch/dataprepper/plugins/processor/loadtype/LoadTypeOptions.java @@ -16,7 +16,7 @@ */ public enum LoadTypeOptions { - INMEMORY("in_memory"), + INMEMORY("memory_map"), CACHE("cache"); private final String option; diff --git a/data-prepper-plugins/geoip-processor/src/test/java/org/opensearch/dataprepper/plugins/processor/configuration/MaxMindServiceConfigTest.java b/data-prepper-plugins/geoip-processor/src/test/java/org/opensearch/dataprepper/plugins/processor/configuration/MaxMindServiceConfigTest.java index 7a6811f8fb..45f09e3373 100644 --- a/data-prepper-plugins/geoip-processor/src/test/java/org/opensearch/dataprepper/plugins/processor/configuration/MaxMindServiceConfigTest.java +++ b/data-prepper-plugins/geoip-processor/src/test/java/org/opensearch/dataprepper/plugins/processor/configuration/MaxMindServiceConfigTest.java @@ -78,8 +78,8 @@ void getCacheRefreshScheduleTestPositive() throws NoSuchFieldException, IllegalA } @Test - void getCacheRefreshScheduleTestNegative() { - assertThat(new MaxMindServiceConfig().getCacheRefreshSchedule(), equalTo(null)); + void getCacheRefreshScheduleTest() { + assertThat(new MaxMindServiceConfig().getCacheRefreshSchedule(), equalTo(Duration.parse("P15D"))); } private List setDatabasePath() throws NoSuchFieldException, IllegalAccessException { diff --git a/data-prepper-plugins/geoip-processor/src/test/java/org/opensearch/dataprepper/plugins/processor/loadtype/LoadTypeOptionsTest.java b/data-prepper-plugins/geoip-processor/src/test/java/org/opensearch/dataprepper/plugins/processor/loadtype/LoadTypeOptionsTest.java index 50c901cd5c..999a970482 100644 --- a/data-prepper-plugins/geoip-processor/src/test/java/org/opensearch/dataprepper/plugins/processor/loadtype/LoadTypeOptionsTest.java +++ b/data-prepper-plugins/geoip-processor/src/test/java/org/opensearch/dataprepper/plugins/processor/loadtype/LoadTypeOptionsTest.java @@ -23,7 +23,7 @@ void notNull_test() { @Test void fromOptionValue_test() { - LoadTypeOptions loadTypeOptions = LoadTypeOptions.fromOptionValue("in_memory"); + LoadTypeOptions loadTypeOptions = LoadTypeOptions.fromOptionValue("memory_map"); assertNotNull(loadTypeOptions); assertThat(loadTypeOptions.toString(), equalTo("INMEMORY")); }