public static void createCacheClient(Pool poolAttr, String regionName, Properties dsProperties,
      Boolean addControlListener, Properties javaSystemProperties) {
    new CacheServerTestUtil().createCache(dsProperties);
    IgnoredException.addIgnoredException("java.net.ConnectException||java.net.SocketException");

    if (javaSystemProperties != null && javaSystemProperties.size() > 0) {
      Enumeration<?> e = javaSystemProperties.propertyNames();

      while (e.hasMoreElements()) {
        String key = (String) e.nextElement();
        System.setProperty(key, javaSystemProperties.getProperty(key));
      }
    }

    PoolFactoryImpl pf = (PoolFactoryImpl) PoolManager.createFactory();
    pf.init(poolAttr);
    PoolImpl p = (PoolImpl) pf.create("CacheServerTestUtil");
    AttributesFactory<Object, Object> factory = new AttributesFactory<>();
    factory.setScope(Scope.LOCAL);
    factory.setPoolName(p.getName());
    if (addControlListener) {
      factory.addCacheListener(new ControlListener());
    }
    RegionAttributes<Object, Object> attrs = factory.create();
    cache.createRegion(regionName, attrs);
    pool = p;
  }
@deprecated Please use {@link DistributedRule} and Geode User APIs or {@link ClusterStartupRule}
            instead.
geode-dunit/src/main/java/org/apache/geode/internal/cache/tier/sockets/CacheServerTestUtil.java