code: private PoolingOptions getPoolingOptions(Properties connectionProperties)
      {
          // minSimultaneousRequests, maxSimultaneousRequests, coreConnections,
          // maxConnections
  
          PoolingOptions options = new PoolingOptions();
  
          String hostDistance = connectionProperties.getProperty("hostDistance");
          String maxConnectionsPerHost = connectionProperties.getProperty("maxConnectionsPerHost");
          String maxRequestsPerConnection = connectionProperties.getProperty("maxRequestsPerConnection");
          String coreConnections = connectionProperties.getProperty("coreConnections");
  
          if (!StringUtils.isBlank(hostDistance))
          {
              HostDistance hostDist = HostDistance.valueOf(hostDistance.toUpperCase());
              if (!StringUtils.isBlank(coreConnections))
              {
                  options.setCoreConnectionsPerHost(HostDistance.LOCAL, new Integer(coreConnections));
              }
  
              if (!StringUtils.isBlank(maxConnectionsPerHost))
              {
                  options.setMaxConnectionsPerHost(hostDist, new Integer(maxConnectionsPerHost));
              }
  
              if (!StringUtils.isBlank(maxRequestsPerConnection))
              {
                  options.setMaxRequestsPerConnection(hostDist, new Integer(maxRequestsPerConnection));
              }
          }
          return options;
      }
docs: Gets the pooling options.
  
  @param connectionProperties
  the connection properties
  @return the pooling options