Source:
<code>private HttpEventCollectorLog4jAppender(final String name, final String url, final String token, final String channel, final String type, final String source, final String sourcetype, final String messageFormat, final String host, final String index, final Filter filter, final Layout<? extends Serializable> layout, final boolean includeLoggerName, final boolean includeThreadName, final boolean includeMDC, final boolean includeException, final boolean includeMarker, final boolean ignoreExceptions, long batchInterval, long batchCount, long batchSize, long retriesOnError, String sendMode, String middleware, final String disableCertificateValidation, final String eventBodySerializer) { <START> super(name, filter, layout, ignoreExceptions); <END> Map<String, String> metadata = new HashMap<>(); metadata.put(MetadataTags.HOST, host != null ? host : ""); metadata.put(MetadataTags.INDEX, index != null ? index : ""); metadata.put(MetadataTags.SOURCE, source != null ? source : ""); metadata.put(MetadataTags.SOURCETYPE, sourcetype != null ? sourcetype : ""); metadata.put(MetadataTags.MESSAGEFORMAT, messageFormat != null ? messageFormat : ""); this.sender = new HttpEventCollectorSender(url, token, channel, type, batchInterval, batchCount, batchSize, sendMode, metadata); if (middleware != null && !middleware.isEmpty()) { try { this.sender.addMiddleware((HttpEventCollectorMiddleware.HttpSenderMiddleware)(Class.forName(middleware).newInstance())); } catch (Exception ignored) } if (eventBodySerializer != null && !eventBodySerializer.isEmpty()) { try { this.sender.setEventBodySerializer((EventBodySerializer) Class.forName(eventBodySerializer).newInstance()); } catch (final Exception ignored) } if (retriesOnError > 0) { this.sender.addMiddleware(new HttpEventCollectorResendMiddleware(retriesOnError)); } if (disableCertificateValidation != null && disableCertificateValidation.equalsIgnoreCase("true")) { this.sender.disableCertificateValidation(); } this.includeLoggerName = includeLoggerName; this.includeThreadName = includeThreadName; this.includeMDC = includeMDC; this.includeException = includeException; this.includeMarker = includeMarker; }</code><technical_language>Thank for cleaning this up! I this is carryover .net LL Dictionary is commonly map type</technical_language>

Target:
private HttpEventCollectorLog4jAppender(final String name, final String url, final String token, final String channel, final String type, final String source, final String sourcetype, final String messageFormat, final String host, final String index, final Filter filter, final Layout<? extends Serializable> layout, final boolean includeLoggerName, final boolean includeThreadName, final boolean includeMDC, final boolean includeException, final boolean includeMarker, final boolean ignoreExceptions, long batchInterval, long batchCount, long batchSize, long retriesOnError, String sendMode, String middleware, final String disableCertificateValidation, final String eventBodySerializer) { super(name, filter, layout, ignoreExceptions, Property.EMPTY_ARRAY); Map<String, String> metadata = new HashMap<>(); metadata.put(MetadataTags.HOST, host != null ? host : ""); metadata.put(MetadataTags.INDEX, index != null ? index : ""); metadata.put(MetadataTags.SOURCE, source != null ? source : ""); metadata.put(MetadataTags.SOURCETYPE, sourcetype != null ? sourcetype : ""); metadata.put(MetadataTags.MESSAGEFORMAT, messageFormat != null ? messageFormat : ""); this.sender = new HttpEventCollectorSender(url, token, channel, type, batchInterval, batchCount, batchSize, sendMode, metadata); if (middleware != null && !middleware.isEmpty()) { try { this.sender.addMiddleware((HttpEventCollectorMiddleware.HttpSenderMiddleware)(Class.forName(middleware).newInstance())); } catch (Exception ignored) } if (eventBodySerializer != null && !eventBodySerializer.isEmpty()) { try { this.sender.setEventBodySerializer((EventBodySerializer) Class.forName(eventBodySerializer).newInstance()); } catch (final Exception ignored) } if (retriesOnError > 0) { this.sender.addMiddleware(new HttpEventCollectorResendMiddleware(retriesOnError)); } if (disableCertificateValidation != null && disableCertificateValidation.equalsIgnoreCase("true")) { this.sender.disableCertificateValidation(); } this.includeLoggerName = includeLoggerName; this.includeThreadName = includeThreadName; this.includeMDC = includeMDC; this.includeException = includeException; this.includeMarker = includeMarker; }