docs: private Node createNode(String nodeName, JsonObject jsonNode, String urlPropName) throws NetworkConfigurationException {
  
  //        jsonNode.
  //        if (jsonNode.isNull(urlPropName)) {
  //            return  null;
  //        }
  
          String url = jsonNode.getString(urlPropName, null);
          if (url == null) {
              return null;
          }
  
          Properties props = extractProperties(jsonNode, "grpcOptions");
  
          if (null != props) {
              String value = props.getProperty("grpc.keepalive_time_ms");
              if (null != value) {
                  props.remove("grpc.keepalive_time_ms");
                  props.put("grpc.NettyChannelBuilderOption.keepAliveTime", new Object[] {new Long(value), TimeUnit.MILLISECONDS});
              }
  
              value = props.getProperty("grpc.keepalive_timeout_ms");
              if (null != value) {
                  props.remove("grpc.keepalive_timeout_ms");
                  props.put("grpc.NettyChannelBuilderOption.keepAliveTimeout", new Object[] {new Long(value), TimeUnit.MILLISECONDS});
              }
          }
  
          // Extract the pem details
          getTLSCerts(nodeName, jsonNode, props);
  
          return new Node(nodeName, url, props, jsonNode);
      }