code: public static By resolveByType(String locator) {
          logger.entering(locator);
          Preconditions.checkArgument(StringUtils.isNotBlank(locator), INVALID_LOCATOR_ERR_MSG);
          By locatorBy = null;
          locator = locator.trim();
          if (locator.indexOf('|') == -1) {
              locatorBy = getFindElementType(locator);
          } else {
              String[] locators = locator.split("\\Q|\\E");
              List<By> result = new ArrayList<By>();
              for (String temp : locators) {
                  result.add(getFindElementType(temp));
              }
              locatorBy = new ByOrOperator(result);
          }
          logger.exiting(locatorBy);
          return locatorBy;
      }
docs: Method to split the locator string with delimiter '|' to return a valid {@link By } type.
  
  @param locator
  String that represents the means to locate this element (could be id/name/xpath/css locator).
  @return {@link By} object that represents the actual locating strategy that would be employed.