@@ -148,10 +148,10 @@ public String getGroupId() {
148148 * @throws IOException
149149 * if listener ports can not be found.
150150 */
151- public void startConnectCluster (final String clusterName , final Class <? extends Connector > connectorClass )
152- throws IOException {
151+ public void startConnectCluster (final String clusterName , final Class <? extends Connector > connectorClass ,
152+ Map < String , String > configOverrides ) throws IOException {
153153 final List <Integer > ports = findListenerPorts ();
154- startConnectCluster (clusterName , ports .get (0 ), ports .get (1 ), connectorClass );
154+ startConnectCluster (clusterName , ports .get (0 ), ports .get (1 ), connectorClass , configOverrides );
155155 }
156156
157157 /**
@@ -167,7 +167,7 @@ public void startConnectCluster(final String clusterName, final Class<? extends
167167 * the class for the connector.
168168 */
169169 public void startConnectCluster (final String clusterName , final int localPort , final int containerPort ,
170- final Class <? extends Connector > connectorClass ) {
170+ final Class <? extends Connector > connectorClass , Map < String , String > configOverrides ) {
171171 this .clusterName = clusterName ;
172172 this .containerListenerPort = containerPort ;
173173 final Properties brokerProperties = new Properties ();
@@ -178,7 +178,7 @@ public void startConnectCluster(final String clusterName, final int localPort, f
178178 brokerProperties .put ("listener.security.protocol.map" , "PLAINTEXT:PLAINTEXT,TESTCONTAINERS:PLAINTEXT" );
179179
180180 connectCluster = new EmbeddedConnectCluster .Builder ().name (clusterName ).brokerProps (brokerProperties )
181- .workerProps (getWorkerProperties (connectorClass )).numWorkers (1 ).build ();
181+ .workerProps (getWorkerProperties (connectorClass , configOverrides )).numWorkers (1 ).build ();
182182 connectCluster .start ();
183183 LOGGER .info ("connectCluster {} started" , clusterName );
184184 }
@@ -286,14 +286,15 @@ public void restartConnector(final String connectorName) {
286286 * the connector class to start, may be {@code null}.
287287 * @return the default set of worker properties.
288288 */
289- public Map <String , String > getWorkerProperties (final Class <? extends Connector > connectorClass ) {
289+ public Map <String , String > getWorkerProperties (final Class <? extends Connector > connectorClass ,
290+ final Map <String , String > configOverrides ) {
290291 Map <String , String > workerProperties = new HashMap <>();
291292 workerProperties .put (ConnectorConfig .KEY_CONVERTER_CLASS_CONFIG , ByteArrayConverter .class .getName ());
292293 workerProperties .put (ConnectorConfig .VALUE_CONVERTER_CLASS_CONFIG , ByteArrayConverter .class .getCanonicalName ());
293294 workerProperties .put (WorkerConfig .OFFSET_COMMIT_INTERVAL_MS_CONFIG ,
294295 Long .toString (offsetFlushInterval .toMillis ()));
295296 workerProperties .put ("plugin.discovery" , "HYBRID_WARN" );
296-
297+ workerProperties . putAll ( configOverrides );
297298 if (connectorClass != null ) {
298299 workerProperties .put (ConnectorConfig .CONNECTOR_CLASS_CONFIG , connectorClass .getName ());
299300 }
0 commit comments