diff --git a/src/main/java/org/opensearch/geospatial/ip2geo/action/PutDatasourceRequest.java b/src/main/java/org/opensearch/geospatial/ip2geo/action/PutDatasourceRequest.java index 82e513f0..8f8f0b2e 100644 --- a/src/main/java/org/opensearch/geospatial/ip2geo/action/PutDatasourceRequest.java +++ b/src/main/java/org/opensearch/geospatial/ip2geo/action/PutDatasourceRequest.java @@ -39,10 +39,10 @@ public class PutDatasourceRequest extends AcknowledgedRequest actionListener) { - GetRequest request = new GetRequest(DatasourceExtension.JOB_INDEX_NAME, id); + public void getDatasource(final String name, final ActionListener actionListener) { + GetRequest request = new GetRequest(DatasourceExtension.JOB_INDEX_NAME, name); client.get(request, new ActionListener() { @Override public void onResponse(final GetResponse response) { diff --git a/src/main/java/org/opensearch/geospatial/ip2geo/jobscheduler/Datasource.java b/src/main/java/org/opensearch/geospatial/ip2geo/jobscheduler/Datasource.java index dfc26d71..fc7d2e58 100644 --- a/src/main/java/org/opensearch/geospatial/ip2geo/jobscheduler/Datasource.java +++ b/src/main/java/org/opensearch/geospatial/ip2geo/jobscheduler/Datasource.java @@ -58,13 +58,13 @@ public class Datasource implements ScheduledJobParameter { /** * Default fields for job scheduling */ - private static final ParseField ID_FIELD = new ParseField("id"); - private static final ParseField ENABLED_FILED = new ParseField("update_enabled"); + private static final ParseField NAME_FIELD = new ParseField("name"); + private static final ParseField ENABLED_FIELD = new ParseField("update_enabled"); private static final ParseField LAST_UPDATE_TIME_FIELD = new ParseField("last_update_time"); private static final ParseField LAST_UPDATE_TIME_FIELD_READABLE = new ParseField("last_update_time_field"); private static final ParseField SCHEDULE_FIELD = new ParseField("schedule"); - private static final ParseField ENABLED_TIME_FILED = new ParseField("enabled_time"); - private static final ParseField ENABLED_TIME_FILED_READABLE = new ParseField("enabled_time_field"); + private static final ParseField ENABLED_TIME_FIELD = new ParseField("enabled_time"); + private static final ParseField ENABLED_TIME_FIELD_READABLE = new ParseField("enabled_time_field"); /** * Additional fields for datasource @@ -80,10 +80,10 @@ public class Datasource implements ScheduledJobParameter { */ /** - * @param id Id of a datasource - * @return Id of a datasource + * @param name name of a datasource + * @return name of a datasource */ - private String id; + private String name; /** * @param lastUpdateTime Last update time of a datasource * @return Last update time of a datasource @@ -169,10 +169,10 @@ public class Datasource implements ScheduledJobParameter { } ); static { - PARSER.declareString(ConstructingObjectParser.constructorArg(), ID_FIELD); + PARSER.declareString(ConstructingObjectParser.constructorArg(), NAME_FIELD); PARSER.declareLong(ConstructingObjectParser.constructorArg(), LAST_UPDATE_TIME_FIELD); - PARSER.declareLong(ConstructingObjectParser.optionalConstructorArg(), ENABLED_TIME_FILED); - PARSER.declareBoolean(ConstructingObjectParser.constructorArg(), ENABLED_FILED); + PARSER.declareLong(ConstructingObjectParser.optionalConstructorArg(), ENABLED_TIME_FIELD); + PARSER.declareBoolean(ConstructingObjectParser.constructorArg(), ENABLED_FIELD); PARSER.declareObject(ConstructingObjectParser.constructorArg(), (p, c) -> ScheduleParser.parse(p), SCHEDULE_FIELD); PARSER.declareString(ConstructingObjectParser.constructorArg(), ENDPOINT_FIELD); PARSER.declareString(ConstructingObjectParser.constructorArg(), STATE_FIELD); @@ -205,7 +205,7 @@ public Datasource(final String id, final IntervalSchedule schedule, final String @Override public XContentBuilder toXContent(final XContentBuilder builder, final Params params) throws IOException { builder.startObject(); - builder.field(ID_FIELD.getPreferredName(), id); + builder.field(NAME_FIELD.getPreferredName(), name); builder.timeField( LAST_UPDATE_TIME_FIELD.getPreferredName(), LAST_UPDATE_TIME_FIELD_READABLE.getPreferredName(), @@ -213,12 +213,12 @@ public XContentBuilder toXContent(final XContentBuilder builder, final Params pa ); if (enabledTime != null) { builder.timeField( - ENABLED_TIME_FILED.getPreferredName(), - ENABLED_TIME_FILED_READABLE.getPreferredName(), + ENABLED_TIME_FIELD.getPreferredName(), + ENABLED_TIME_FIELD_READABLE.getPreferredName(), enabledTime.toEpochMilli() ); } - builder.field(ENABLED_FILED.getPreferredName(), isEnabled); + builder.field(ENABLED_FIELD.getPreferredName(), isEnabled); builder.field(SCHEDULE_FIELD.getPreferredName(), schedule); builder.field(ENDPOINT_FIELD.getPreferredName(), endpoint); builder.field(STATE_FIELD.getPreferredName(), state.name()); @@ -231,7 +231,7 @@ public XContentBuilder toXContent(final XContentBuilder builder, final Params pa @Override public String getName() { - return id; + return name; } @Override @@ -313,7 +313,7 @@ public String indexNameFor(final DatasourceManifest manifest) { } private String indexNameFor(final long suffix) { - return String.format(Locale.ROOT, "%s.%s.%d", IP2GEO_DATA_INDEX_NAME_PREFIX, id, suffix); + return String.format(Locale.ROOT, "%s.%s.%d", IP2GEO_DATA_INDEX_NAME_PREFIX, name, suffix); } /** @@ -567,7 +567,7 @@ public XContentBuilder toXContent(final XContentBuilder builder, final Params pa */ public static class Builder { public static Datasource build(final PutDatasourceRequest request) { - String id = request.getDatasourceName(); + String id = request.getName(); IntervalSchedule schedule = new IntervalSchedule( Instant.now().truncatedTo(ChronoUnit.MILLIS), (int) request.getUpdateInterval().days(), diff --git a/src/main/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceRunner.java b/src/main/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceRunner.java index a75984b4..bc78fd0b 100644 --- a/src/main/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceRunner.java +++ b/src/main/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceRunner.java @@ -153,7 +153,7 @@ protected void updateDatasource(final ScheduledJobParameter jobParameter) throws datasourceUpdateService.updateOrCreateGeoIpData(datasource); datasourceUpdateService.deleteUnusedIndices(datasource); } catch (Exception e) { - log.error("Failed to update datasource for {}", datasource.getId(), e); + log.error("Failed to update datasource for {}", datasource.getName(), e); datasource.getUpdateStats().setLastFailedAt(Instant.now()); datasourceFacade.updateDatasource(datasource); } diff --git a/src/main/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceUpdateService.java b/src/main/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceUpdateService.java index d3814805..4fe3274c 100644 --- a/src/main/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceUpdateService.java +++ b/src/main/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceUpdateService.java @@ -63,7 +63,7 @@ public void updateOrCreateGeoIpData(final Datasource datasource) throws Exceptio DatasourceManifest manifest = DatasourceManifest.Builder.build(url); if (shouldUpdate(datasource, manifest) == false) { - log.info("Skipping GeoIP database update. Update is not required for {}", datasource.getId()); + log.info("Skipping GeoIP database update. Update is not required for {}", datasource.getName()); datasource.getUpdateStats().setLastSkippedAt(Instant.now()); datasourceFacade.updateDatasource(datasource); return; @@ -110,7 +110,7 @@ public void deleteUnusedIndices(final Datasource parameter) { datasourceFacade.updateDatasource(parameter); } } catch (Exception e) { - log.error("Failed to delete old indices for {}", parameter.getId(), e); + log.error("Failed to delete old indices for {}", parameter.getName(), e); } } @@ -175,7 +175,11 @@ private void updateDatasourceAsSucceeded( datasource.enable(); datasource.setState(DatasourceState.AVAILABLE); datasourceFacade.updateDatasource(datasource); - log.info("GeoIP database creation succeeded for {} and took {} seconds", datasource.getId(), Duration.between(startTime, endTime)); + log.info( + "GeoIP database creation succeeded for {} and took {} seconds", + datasource.getName(), + Duration.between(startTime, endTime) + ); } /*** diff --git a/src/test/java/org/opensearch/geospatial/ip2geo/Ip2GeoTestCase.java b/src/test/java/org/opensearch/geospatial/ip2geo/Ip2GeoTestCase.java index c1aec21e..1500c138 100644 --- a/src/test/java/org/opensearch/geospatial/ip2geo/Ip2GeoTestCase.java +++ b/src/test/java/org/opensearch/geospatial/ip2geo/Ip2GeoTestCase.java @@ -13,6 +13,8 @@ import java.io.File; import java.nio.file.Paths; +import java.time.Instant; +import java.time.temporal.ChronoUnit; import java.util.Arrays; import java.util.HashSet; import java.util.Locale; @@ -39,13 +41,16 @@ import org.opensearch.common.settings.ClusterSettings; import org.opensearch.common.settings.Settings; import org.opensearch.common.util.concurrent.OpenSearchExecutors; +import org.opensearch.geospatial.GeospatialTestHelper; import org.opensearch.geospatial.ip2geo.common.DatasourceFacade; import org.opensearch.geospatial.ip2geo.common.DatasourceState; import org.opensearch.geospatial.ip2geo.common.GeoIpDataFacade; import org.opensearch.geospatial.ip2geo.common.Ip2GeoExecutor; import org.opensearch.geospatial.ip2geo.common.Ip2GeoSettings; +import org.opensearch.geospatial.ip2geo.jobscheduler.Datasource; import org.opensearch.geospatial.ip2geo.jobscheduler.DatasourceUpdateService; import org.opensearch.ingest.IngestService; +import org.opensearch.jobscheduler.spi.schedule.IntervalSchedule; import org.opensearch.jobscheduler.spi.utils.LockService; import org.opensearch.tasks.Task; import org.opensearch.tasks.TaskListener; @@ -120,6 +125,13 @@ public DatasourceState randomStateExcept(DatasourceState state) { .get(Randomness.createSecure().nextInt(DatasourceState.values().length - 2)); } + public DatasourceState randomState() { + return Arrays.stream(DatasourceState.values()) + .sequential() + .collect(Collectors.toList()) + .get(Randomness.createSecure().nextInt(DatasourceState.values().length - 1)); + } + public String randomIpAddress() { return String.format( Locale.ROOT, @@ -149,6 +161,34 @@ public File sampleIp2GeoFile() { return new File(this.getClass().getClassLoader().getResource("ip2geo/sample_valid.csv").getFile()); } + public Datasource randomDatasource() { + Datasource datasource = new Datasource(); + datasource.setName(GeospatialTestHelper.randomLowerCaseString()); + datasource.setSchedule( + new IntervalSchedule(Instant.now().truncatedTo(ChronoUnit.MILLIS), Randomness.get().nextInt(30) + 1, ChronoUnit.DAYS) + ); + datasource.setState(randomState()); + datasource.setIndices(Arrays.asList(GeospatialTestHelper.randomLowerCaseString(), GeospatialTestHelper.randomLowerCaseString())); + datasource.setEndpoint(GeospatialTestHelper.randomLowerCaseString()); + datasource.getDatabase() + .setFields(Arrays.asList(GeospatialTestHelper.randomLowerCaseString(), GeospatialTestHelper.randomLowerCaseString())); + datasource.getDatabase().setProvider(GeospatialTestHelper.randomLowerCaseString()); + datasource.getDatabase().setUpdatedAt(Instant.now().truncatedTo(ChronoUnit.MILLIS)); + datasource.getDatabase().setMd5Hash(GeospatialTestHelper.randomLowerCaseString()); + datasource.getDatabase().setValidForInDays(Randomness.get().nextInt(30) + 1l); + datasource.getUpdateStats().setLastSkippedAt(Instant.now().truncatedTo(ChronoUnit.MILLIS)); + datasource.getUpdateStats().setLastSucceededAt(Instant.now().truncatedTo(ChronoUnit.MILLIS)); + datasource.getUpdateStats().setLastFailedAt(Instant.now().truncatedTo(ChronoUnit.MILLIS)); + datasource.getUpdateStats().setLastProcessingTimeInMillis(Randomness.get().nextLong()); + datasource.setLastUpdateTime(Instant.now().truncatedTo(ChronoUnit.MILLIS)); + if (Randomness.get().nextInt() % 2 == 0) { + datasource.enable(); + } else { + datasource.disable(); + } + return datasource; + } + /** * Temporary class of VerifyingClient until this PR(https://github.com/opensearch-project/OpenSearch/pull/7167) * is merged in OpenSearch core diff --git a/src/test/java/org/opensearch/geospatial/ip2geo/action/PutDatasourceTransportActionTests.java b/src/test/java/org/opensearch/geospatial/ip2geo/action/PutDatasourceTransportActionTests.java index 38226c7f..ff542418 100644 --- a/src/test/java/org/opensearch/geospatial/ip2geo/action/PutDatasourceTransportActionTests.java +++ b/src/test/java/org/opensearch/geospatial/ip2geo/action/PutDatasourceTransportActionTests.java @@ -54,7 +54,7 @@ public void testDoExecute() throws Exception { assertTrue(actionRequest instanceof IndexRequest); IndexRequest indexRequest = (IndexRequest) actionRequest; assertEquals(DatasourceExtension.JOB_INDEX_NAME, indexRequest.index()); - assertEquals(request.getDatasourceName(), indexRequest.id()); + assertEquals(request.getName(), indexRequest.id()); assertEquals(WriteRequest.RefreshPolicy.IMMEDIATE, indexRequest.getRefreshPolicy()); assertEquals(DocWriteRequest.OpType.CREATE, indexRequest.opType()); return null; diff --git a/src/test/java/org/opensearch/geospatial/ip2geo/action/RestPutDatasourceHandlerTests.java b/src/test/java/org/opensearch/geospatial/ip2geo/action/RestPutDatasourceHandlerTests.java index b812cdfa..521f3420 100644 --- a/src/test/java/org/opensearch/geospatial/ip2geo/action/RestPutDatasourceHandlerTests.java +++ b/src/test/java/org/opensearch/geospatial/ip2geo/action/RestPutDatasourceHandlerTests.java @@ -53,7 +53,7 @@ public void testPrepareRequest() { PutDatasourceRequest putDatasourceRequest = (PutDatasourceRequest) actionRequest; assertEquals("https://test.com", putDatasourceRequest.getEndpoint()); assertEquals(TimeValue.timeValueDays(1), putDatasourceRequest.getUpdateInterval()); - assertEquals(datasourceName, putDatasourceRequest.getDatasourceName()); + assertEquals(datasourceName, putDatasourceRequest.getName()); isExecuted.set(true); return null; }); @@ -74,7 +74,7 @@ public void testPrepareRequestDefaultValue() { PutDatasourceRequest putDatasourceRequest = (PutDatasourceRequest) actionRequest; assertEquals("https://geoip.maps.opensearch.org/v1/geolite-2/manifest.json", putDatasourceRequest.getEndpoint()); assertEquals(TimeValue.timeValueDays(3), putDatasourceRequest.getUpdateInterval()); - assertEquals(datasourceName, putDatasourceRequest.getDatasourceName()); + assertEquals(datasourceName, putDatasourceRequest.getName()); isExecuted.set(true); return null; }); diff --git a/src/test/java/org/opensearch/geospatial/ip2geo/common/DatasourceFacadeTests.java b/src/test/java/org/opensearch/geospatial/ip2geo/common/DatasourceFacadeTests.java index 066ea27b..4a34dcb3 100644 --- a/src/test/java/org/opensearch/geospatial/ip2geo/common/DatasourceFacadeTests.java +++ b/src/test/java/org/opensearch/geospatial/ip2geo/common/DatasourceFacadeTests.java @@ -59,7 +59,7 @@ public void testUpdateDatasource() throws Exception { verifyingClient.setExecuteVerifier((actionResponse, actionRequest) -> { assertTrue(actionRequest instanceof IndexRequest); IndexRequest request = (IndexRequest) actionRequest; - assertEquals(datasource.getId(), request.id()); + assertEquals(datasource.getName(), request.id()); assertEquals(DocWriteRequest.OpType.INDEX, request.opType()); assertEquals(DatasourceExtension.JOB_INDEX_NAME, request.index()); return null; @@ -71,55 +71,42 @@ public void testUpdateDatasource() throws Exception { public void testGetDatasourceException() throws Exception { Datasource datasource = setupClientForGetRequest(true, new IndexNotFoundException(DatasourceExtension.JOB_INDEX_NAME)); - assertNull(datasourceFacade.getDatasource(datasource.getId())); + assertNull(datasourceFacade.getDatasource(datasource.getName())); } public void testGetDatasourceExist() throws Exception { Datasource datasource = setupClientForGetRequest(true, null); - assertEquals(datasource, datasourceFacade.getDatasource(datasource.getId())); + assertEquals(datasource, datasourceFacade.getDatasource(datasource.getName())); } public void testGetDatasourceNotExist() throws Exception { Datasource datasource = setupClientForGetRequest(false, null); - assertNull(datasourceFacade.getDatasource(datasource.getId())); + assertNull(datasourceFacade.getDatasource(datasource.getName())); } public void testGetDatasourceExistWithListener() { Datasource datasource = setupClientForGetRequest(true, null); ActionListener listener = mock(ActionListener.class); - datasourceFacade.getDatasource(datasource.getId(), listener); + datasourceFacade.getDatasource(datasource.getName(), listener); verify(listener).onResponse(eq(datasource)); } public void testGetDatasourceNotExistWithListener() { Datasource datasource = setupClientForGetRequest(false, null); ActionListener listener = mock(ActionListener.class); - datasourceFacade.getDatasource(datasource.getId(), listener); + datasourceFacade.getDatasource(datasource.getName(), listener); verify(listener).onResponse(null); } private Datasource setupClientForGetRequest(final boolean isExist, final RuntimeException exception) { - String datasourceName = GeospatialTestHelper.randomLowerCaseString(); - Datasource datasource = new Datasource( - datasourceName, - new IntervalSchedule(Instant.now().truncatedTo(ChronoUnit.MILLIS), 1, ChronoUnit.DAYS), - "https://test.com" - ); + Datasource datasource = randomDatasource(); verifyingClient.setExecuteVerifier((actionResponse, actionRequest) -> { assertTrue(actionRequest instanceof GetRequest); GetRequest request = (GetRequest) actionRequest; - assertEquals(datasource.getId(), request.id()); + assertEquals(datasource.getName(), request.id()); assertEquals(DatasourceExtension.JOB_INDEX_NAME, request.index()); - GetResponse response = mock(GetResponse.class); - when(response.isExists()).thenReturn(isExist); - try { - when(response.getSourceAsBytesRef()).thenReturn( - BytesReference.bytes(datasource.toXContent(JsonXContent.contentBuilder(), null)) - ); - } catch (IOException e) { - throw new RuntimeException(e); - } + GetResponse response = getMockedGetResponse(isExist ? datasource : null); if (exception != null) { throw exception; } @@ -127,4 +114,23 @@ private Datasource setupClientForGetRequest(final boolean isExist, final Runtime }); return datasource; } + + private GetResponse getMockedGetResponse(Datasource datasource) { + GetResponse response = mock(GetResponse.class); + when(response.isExists()).thenReturn(datasource != null); + when(response.getSourceAsBytesRef()).thenReturn(toBytesReference(datasource)); + return response; + } + + private BytesReference toBytesReference(Datasource datasource) { + if (datasource == null) { + return null; + } + + try { + return BytesReference.bytes(datasource.toXContent(JsonXContent.contentBuilder(), null)); + } catch (IOException e) { + throw new RuntimeException(e); + } + } } diff --git a/src/test/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceRunnerTests.java b/src/test/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceRunnerTests.java index 0e33e232..34e4ab3b 100644 --- a/src/test/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceRunnerTests.java +++ b/src/test/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceRunnerTests.java @@ -68,7 +68,7 @@ public void testUpdateDatasourceInvalidState() throws Exception { datasource.enable(); datasource.getUpdateStats().setLastFailedAt(null); datasource.setState(randomStateExcept(DatasourceState.AVAILABLE)); - when(datasourceFacade.getDatasource(datasource.getId())).thenReturn(datasource); + when(datasourceFacade.getDatasource(datasource.getName())).thenReturn(datasource); // Run DatasourceRunner.getJobRunnerInstance().updateDatasource(datasource); @@ -82,8 +82,8 @@ public void testUpdateDatasourceInvalidState() throws Exception { public void testUpdateDatasource() throws Exception { Datasource datasource = new Datasource(); datasource.setState(DatasourceState.AVAILABLE); - datasource.setId(randomLowerCaseString()); - when(datasourceFacade.getDatasource(datasource.getId())).thenReturn(datasource); + datasource.setName(randomLowerCaseString()); + when(datasourceFacade.getDatasource(datasource.getName())).thenReturn(datasource); // Run DatasourceRunner.getJobRunnerInstance().updateDatasource(datasource); @@ -95,9 +95,9 @@ public void testUpdateDatasource() throws Exception { public void testUpdateDatasourceExceptionHandling() throws Exception { Datasource datasource = new Datasource(); - datasource.setId(randomLowerCaseString()); + datasource.setName(randomLowerCaseString()); datasource.getUpdateStats().setLastFailedAt(null); - when(datasourceFacade.getDatasource(datasource.getId())).thenReturn(datasource); + when(datasourceFacade.getDatasource(datasource.getName())).thenReturn(datasource); doThrow(new RuntimeException("test failure")).when(datasourceUpdateService).deleteUnusedIndices(any()); // Run diff --git a/src/test/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceTests.java b/src/test/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceTests.java index b4f76ef6..9c7e30fc 100644 --- a/src/test/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceTests.java +++ b/src/test/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceTests.java @@ -54,7 +54,7 @@ public void testCurrentIndexName() { String id = GeospatialTestHelper.randomLowerCaseString(); Instant now = Instant.now(); Datasource datasource = new Datasource(); - datasource.setId(id); + datasource.setName(id); datasource.getDatabase().setProvider("provider"); datasource.getDatabase().setMd5Hash("md5Hash"); datasource.getDatabase().setUpdatedAt(now); @@ -73,7 +73,7 @@ public void testGetIndexNameFor() { String id = GeospatialTestHelper.randomLowerCaseString(); Datasource datasource = new Datasource(); - datasource.setId(id); + datasource.setName(id); assertEquals( String.format(Locale.ROOT, "%s.%s.%d", IP2GEO_DATA_INDEX_NAME_PREFIX, id, updatedAt), datasource.indexNameFor(manifest) diff --git a/src/test/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceUpdateServiceTests.java b/src/test/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceUpdateServiceTests.java index 3c9ec15d..517c45a0 100644 --- a/src/test/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceUpdateServiceTests.java +++ b/src/test/java/org/opensearch/geospatial/ip2geo/jobscheduler/DatasourceUpdateServiceTests.java @@ -132,7 +132,7 @@ public void testDeleteUnusedIndices() throws Exception { String oldIndex = indexPrefix + now.minusMillis(1).toEpochMilli(); String lingeringIndex = indexPrefix + now.minusMillis(2).toEpochMilli(); Datasource datasource = new Datasource(); - datasource.setId(datasourceName); + datasource.setName(datasourceName); datasource.getIndices().add(currentIndex); datasource.getIndices().add(oldIndex); datasource.getIndices().add(lingeringIndex); diff --git a/src/test/java/org/opensearch/geospatial/ip2geo/processor/Ip2GeoProcessorTests.java b/src/test/java/org/opensearch/geospatial/ip2geo/processor/Ip2GeoProcessorTests.java index bd6857ed..6028b029 100644 --- a/src/test/java/org/opensearch/geospatial/ip2geo/processor/Ip2GeoProcessorTests.java +++ b/src/test/java/org/opensearch/geospatial/ip2geo/processor/Ip2GeoProcessorTests.java @@ -68,7 +68,7 @@ public void testCreateWithNoDatasource() { public void testCreateWithInvalidDatasourceState() { Datasource datasource = new Datasource(); - datasource.setId(GeospatialTestHelper.randomLowerCaseString()); + datasource.setName(GeospatialTestHelper.randomLowerCaseString()); datasource.setState(randomStateExcept(DatasourceState.AVAILABLE)); OpenSearchException exception = expectThrows(OpenSearchException.class, () -> createProcessor(datasource, Collections.emptyMap())); assertTrue(exception.getDetailedMessage().contains("available state")); @@ -323,14 +323,14 @@ public void testExecuteInternal() throws Exception { private Ip2GeoProcessor createProcessor(final String datasourceName, final Map config) throws Exception { Datasource datasource = new Datasource(); - datasource.setId(datasourceName); + datasource.setName(datasourceName); datasource.setState(DatasourceState.AVAILABLE); datasource.getDatabase().setFields(SUPPORTED_FIELDS); return createProcessor(datasource, config); } private Ip2GeoProcessor createProcessor(final Datasource datasource, final Map config) throws Exception { - when(datasourceFacade.getDatasource(datasource.getId())).thenReturn(datasource); + when(datasourceFacade.getDatasource(datasource.getName())).thenReturn(datasource); Map baseConfig = new HashMap<>(); baseConfig.put(CONFIG_FIELD_KEY, "ip"); baseConfig.put(CONFIG_DATASOURCE_KEY, datasource.getName());