Skip to content

Commit 63c3545

Browse files
authored
Merge pull request #376 from tebriel/uri-validator-bug
Uri validator bug
2 parents 6e37e51 + b006847 commit 63c3545

File tree

2 files changed

+20
-3
lines changed

2 files changed

+20
-3
lines changed

src/main/java/com/splunk/kafka/connect/SplunkSinkConnector.java

+4-2
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@
4141

4242
import java.io.IOException;
4343
import java.util.ArrayList;
44+
import java.util.Arrays;
4445
import java.util.List;
4546
import java.util.Map;
4647

@@ -170,7 +171,8 @@ private void preparePayloadAndExecuteRequest(SplunkSinkConnectorConfig connector
170171
};
171172
}
172173
String endpoint = "/services/collector";
173-
String url = connectorConfig.splunkURI + endpoint;
174+
List<String> hecURIs = Arrays.asList(connectorConfig.splunkURI.split(","));
175+
String url = hecURIs.get(0) + endpoint;
174176
final HttpPost httpPost = new HttpPost(url);
175177
httpPost.setHeaders(headers);
176178
EventBatch batch = new JsonEventBatch();
@@ -216,4 +218,4 @@ private void executeHttpRequest(final HttpUriRequest req, CloseableHttpClient ht
216218
}
217219
}
218220
}
219-
}
221+
}

src/test/java/com/splunk/kafka/connect/SplunkSinkConnecterTest.java

+16-1
Original file line numberDiff line numberDiff line change
@@ -207,6 +207,21 @@ public void testInvalidIndex() {
207207
Assertions.assertThrows(ConfigException.class, ()->connector.validate(configs));
208208
}
209209

210+
@Test
211+
public void testValidMultipleURIs() {
212+
final Map<String, String> configs = new HashMap<>();
213+
addNecessaryConfigs(configs);
214+
SplunkSinkConnector connector = new SplunkSinkConnector();
215+
configs.put("topics", "b");
216+
configs.put("splunk.indexes", "b");
217+
configs.put("splunk.hec.uri", "https://localhost:8088,https://localhost:8089");
218+
configs.put("splunk.hec.ssl.validate.certs", "false");
219+
MockHecClientWrapper clientInstance = new MockHecClientWrapper();
220+
clientInstance.client.setResponse(CloseableHttpClientMock.success);
221+
((SplunkSinkConnector) connector).setHecInstance(clientInstance);
222+
Assertions.assertDoesNotThrow(()->connector.validate(configs));
223+
}
224+
210225
@Test
211226
public void testValidSplunkConfigurations() {
212227
final Map<String, String> configs = new HashMap<>();
@@ -237,4 +252,4 @@ private void assertHasErrorMessage(Config config, String property, String msg) {
237252
private void assertNoErrors(Config config) {
238253
config.configValues().forEach(c -> assertTrue(c.errorMessages().isEmpty()));
239254
}
240-
}
255+
}

0 commit comments

Comments
 (0)