protected Predicate<IEObjectDescription> getSearchPredicate(
        final String stringPattern, final Collection<EClass> acceptedClasses) {
      final SearchPattern searchPattern = new SearchPattern();
      searchPattern.setPattern(stringPattern);

      return new Predicate<IEObjectDescription>() {
        public boolean apply(IEObjectDescription input) {
          if (isNameMatches(searchPattern, input) && isClassAccepted(input, acceptedClasses)) {
            return true;
          }
          return false;
        }
      };
    }