Ejemplo n.º 1
0
  /** Checks whether given peak list row conforms to this search condition. */
  public boolean conforms(PeakListRow row) {
    switch (type) {
      case NAME:
        PeakIdentity identity = row.getPreferredPeakIdentity();
        if (identity == null) return false;
        String name = identity.getName();

        if (isEmpty(nameRegex.toString()) || isEmpty(name)) {
          return false;
        }

        Matcher matcher = nameRegex.matcher(name);
        return matcher.find();

      case MASS:
        return range.contains(row.getAverageMZ());

      case RT:
        return range.contains(row.getAverageRT());
    }
    return false;
  }