@Override
    public MemcachedClientIF create() {
        val factoryBean = new MemcachedClientFactoryBean();
        factoryBean.setServers(memcachedProperties.getServers());
        factoryBean.setTranscoder(this.transcoder);

        if (StringUtils.isNotBlank(memcachedProperties.getLocatorType())) {
            factoryBean.setLocatorType(ConnectionFactoryBuilder.Locator.valueOf(memcachedProperties.getLocatorType()));
        }
        if (StringUtils.isNotBlank(memcachedProperties.getFailureMode())) {
            factoryBean.setFailureMode(FailureMode.valueOf(memcachedProperties.getFailureMode()));
        }
        if (StringUtils.isNotBlank(memcachedProperties.getHashAlgorithm())) {
            factoryBean.setHashAlg(DefaultHashAlgorithm.valueOf(memcachedProperties.getHashAlgorithm()));
        }
        if (StringUtils.isNotBlank(memcachedProperties.getProtocol())) {
            factoryBean.setProtocol(ConnectionFactoryBuilder.Protocol.valueOf(memcachedProperties.getProtocol()));
        }

        factoryBean.setDaemon(memcachedProperties.isDaemon());
        factoryBean.setShouldOptimize(memcachedProperties.isShouldOptimize());
        factoryBean.setUseNagleAlgorithm(memcachedProperties.isUseNagleAlgorithm());

        if (memcachedProperties.getOpTimeout() > 0) {
            factoryBean.setOpTimeout(memcachedProperties.getOpTimeout());
        }
        if (memcachedProperties.getMaxReconnectDelay() > 0) {
            factoryBean.setMaxReconnectDelay(memcachedProperties.getMaxReconnectDelay());
        }
        if (memcachedProperties.getShutdownTimeoutSeconds() > 0) {
            factoryBean.setShutdownTimeoutSeconds(memcachedProperties.getShutdownTimeoutSeconds());
        }
        if (memcachedProperties.getTimeoutExceptionThreshold() > 0) {
            factoryBean.setTimeoutExceptionThreshold(memcachedProperties.getTimeoutExceptionThreshold());
        }
        return FunctionUtils.doUnchecked(() -> {
            factoryBean.afterPropertiesSet();
            return (MemcachedClientIF) factoryBean.getObject();
        });
    }
This is {@link MemcachedPooledClientConnectionFactory}.

@author Misagh Moayyed
@since 5.2.0
@deprecated Since 7.0.0
support/cas-server-support-memcached-core/src/main/java/org/apereo/cas/memcached/MemcachedPooledClientConnectionFactory.java