code: private void initializeWeb3j(PropertyReader reader)
      {
  
          String endPoint = reader.getProperty(EthConstants.ETHEREUM_NODE_ENDPOINT);
  
          if (endPoint == null || endPoint.isEmpty())
          {
              LOGGER.error("Specify - " + EthConstants.ETHEREUM_NODE_ENDPOINT + " in "
                      + EthConstants.KUNDERA_ETHEREUM_PROPERTIES);
              throw new KunderaException("Specify - " + EthConstants.ETHEREUM_NODE_ENDPOINT + " in "
                      + EthConstants.KUNDERA_ETHEREUM_PROPERTIES);
          }
  
          else if (endPoint.contains(".ipc"))
          {
              String os = reader.getProperty(EthConstants.ETHEREUM_NODE_OS);
              LOGGER.info("Connecting using IPC socket. IPC Socket File location - " + endPoint);
              if (os != null && "windows".equalsIgnoreCase(os))
              {
                  web3j = Web3j.build(new WindowsIpcService(endPoint));
              }
              else
              {
                  web3j = Web3j.build(new UnixIpcService(endPoint));
              }
          }
  
          else
          {
              LOGGER.info("Connecting via Endpoint - " + endPoint);
              web3j = Web3j.build(new HttpService(endPoint));
          }
      }
docs: Initialize web3j.
  
  @param reader
  the reader