private void createClient()

in pulsar-log4j2-appender/src/main/java/org/apache/pulsar/log4j2/appender/PulsarManager.java [137:178]


    private void createClient() throws PulsarClientException {
        Map<String, Object> configuration = propertiesToClientConfiguration();

        // must be the same as
        // https://pulsar.apache.org/docs/en/security-tls-keystore/#configuring-clients
        String authPluginClassName = getAndRemoveString("authPlugin", "", configuration);
        String authParamsString = getAndRemoveString("authParams", "", configuration);
        Authentication authentication =
                AuthenticationFactory.create(authPluginClassName, authParamsString);
        boolean tlsAllowInsecureConnection =
                Boolean.parseBoolean(
                        getAndRemoveString("tlsAllowInsecureConnection", "false", configuration));

        boolean tlsEnableHostnameVerification =
                Boolean.parseBoolean(
                        getAndRemoveString("tlsEnableHostnameVerification", "false", configuration));
        final String tlsTrustCertsFilePath =
                getAndRemoveString("tlsTrustCertsFilePath", "", configuration);

        boolean useKeyStoreTls =
                Boolean.parseBoolean(getAndRemoveString("useKeyStoreTls", "false", configuration));
        String tlsTrustStoreType = getAndRemoveString("tlsTrustStoreType", "JKS", configuration);
        String tlsTrustStorePath = getAndRemoveString("tlsTrustStorePath", "", configuration);
        String tlsTrustStorePassword =
                getAndRemoveString("tlsTrustStorePassword", "", configuration);

        ClientBuilder clientBuilder =
                PULSAR_CLIENT_BUILDER.get()
                        .loadConf(configuration)
                        .tlsTrustStorePassword(tlsTrustStorePassword)
                        .tlsTrustStorePath(tlsTrustStorePath)
                        .tlsTrustCertsFilePath(tlsTrustCertsFilePath)
                        .tlsTrustStoreType(tlsTrustStoreType)
                        .useKeyStoreTls(useKeyStoreTls)
                        .enableTlsHostnameVerification(tlsEnableHostnameVerification)
                        .allowTlsInsecureConnection(tlsAllowInsecureConnection)
                        .authentication(authentication);
        if (!serviceUrl.isEmpty()) {
            clientBuilder.serviceUrl(serviceUrl);
        }
        client = clientBuilder.build();
    }