throws TvBrowserException
{
switch(type) {
case SEARCHER_TYPE_EXACTLY: {
String regex = RegexSearcher.searchTextToRegex(searchTerm, false);
return new RegexSearcher(regex, caseSensitive, searchTerm);
}
case SEARCHER_TYPE_KEYWORD: {
String regex = RegexSearcher.searchTextToRegex(searchTerm, true);
return new RegexSearcher(regex, caseSensitive, searchTerm);
}
case SEARCHER_TYPE_REGULAR_EXPRESSION:
return new RegexSearcher(searchTerm, caseSensitive);
case SEARCHER_TYPE_BOOLEAN:
try {
return new BooleanSearcher(searchTerm, caseSensitive);
}catch (ParserException e) {
throw new TvBrowserException(PluginManagerImpl.class, "parser.error","Invalid input: {0}", e.getLocalizedMessage());