docs: public void parseLogDirectoryString(String fullLogDirectory, Properties dbProps) throws MalformedURLException, IOException {
          if (tc.isEntryEnabled())
              Tr.entry(tc, "parseLogDirectoryString", new java.lang.Object[] { fullLogDirectory, this });
  
          StringTokenizer st = new StringTokenizer(fullLogDirectory, "?");
          String cname = st.nextToken();
          if (tc.isDebugEnabled())
              Tr.debug(tc, "cname = " + cname);
  
          // Extract the DB related properties
          String dbPropertiesString = st.nextToken();
          if (tc.isDebugEnabled())
              Tr.debug(tc, "dbPropertiesString = " + dbPropertiesString);
  
          //Determine whether we are dealing with Oracle or DB2
          if (dbPropertiesString.contains("oracle")) {
              _isOracle = true;
              // We can set the transient error codes to watch for at this point too.
              _sqlTransientErrorCodes = _oracleTransientErrorCodes;
              if (tc.isDebugEnabled())
                  Tr.debug(tc, "Configure a connection to an ORACLE database");
          } else if (dbPropertiesString.contains("DB2")) {
              // we are DB2
              _isDB2 = true;
              _sqlTransientErrorCodes = _db2TransientErrorCodes;
              if (tc.isDebugEnabled())
                  Tr.debug(tc, "Configure a connection to a DB2 database");
              // Flag the we can tolerate transient SQL error codes
              sqlTransientErrorHandlingEnabled = true;
          } else {
              // Not DB2 or Oracle, cannot handle transient SQL errors
              if (tc.isDebugEnabled())
                  Tr.debug(tc, "This is neither Oracle nor DB2");
          }
  
          dbProps.load(new StringReader(dbPropertiesString.replace(',', '\n')));
          if (tc.isDebugEnabled())
              Tr.debug(tc, "dbProps = " + dbProps);
          _dbURL = dbProps.getProperty("url");
          dbProps.remove("url");
          String dbDir = dbProps.getProperty("dbdir");
          dbProps.remove("dbdir");
  
          // Set us the 3 files
          String file3String = dbDir + "\\";
          String file1String = "";
          String file2String = "";
          if (_isOracle) {
              file1String = file3String + "ojdbc6.jar";
          } else {
              file1String = file3String + "db2jcc.jar";
              file2String = file3String + "db2jcc_license_cu.jar";
          }
  
          // Output DB related trace information
          if (tc.isDebugEnabled()) {
              Tr.debug(tc, "DB URL: " + _dbURL);
              Tr.debug(tc, "DB props: " + dbProps);
              Tr.debug(tc, "DB file1String: " + file1String);
              Tr.debug(tc, "DB file2String: " + file2String);
              Tr.debug(tc, "DB file3String: " + file3String);
          }
  
          // Set up files
          java.io.File file1 = new java.io.File(file1String);
          java.io.File file2 = new java.io.File(file2String);
          java.io.File file3 = new java.io.File(file3String);
  
          // Convert File to a URL
          java.net.URL url1 = file1.toURL();
          java.net.URL url2 = file2.toURL();
          java.net.URL url3 = file3.toURL();
  
          // Set up the urls
          if (_isOracle) {
              _urls = new java.net.URL[] { url1 };
          } else {
              _urls = new java.net.URL[] { url1, url2, url3 };
          }
  
          if (tc.isEntryEnabled())
              Tr.exit(tc, "parseLogDirectoryString");
      }