code: public PowerShell configuration(Map<String, String> config) {
          try {
              this.waitPause = Integer
                      .valueOf((config != null && config.get("waitPause") != null) ? config.get("waitPause")
                              : PowerShellConfig.getConfig().getProperty("waitPause"));
              this.maxWait = Long.valueOf((config != null && config.get("maxWait") != null) ? config.get("maxWait")
                      : PowerShellConfig.getConfig().getProperty("maxWait"));
              this.tempFolder = (config != null && config.get("tempFolder") != null) ? getTempFolder(config.get("tempFolder"))
                      : getTempFolder(PowerShellConfig.getConfig().getProperty("tempFolder"));
          } catch (NumberFormatException nfe) {
              logger.log(Level.SEVERE,
                      "Could not read configuration. Using default values.", nfe);
          }
          return this;
      }
docs: Allows to override jPowerShell configuration using a map of key/value <br>
  Default values are taken from file <i>jpowershell.properties</i>, which can
  be replaced just setting it on project classpath
  <p>
  The values that can be overridden are:
  <ul>
  <li>waitPause: the pause in ms between each loop pooling for a response.
  Default value is 10</li>
  <li>maxWait: the maximum wait in ms for the command to execute. Default value
  is 10000</li>
  </ul>
  
  @param config map with the configuration in key/value format
  @return instance to chain