1 //
2 // $Revision: 5 $
3 // $LastChangedBy: mhanns $
4 // $Date: 2010-04-01 10:10:45 +0200 (Do, 01 Apr 2010) $
5 // $HeadURL: https://modelrepository.svn.sourceforge.net/svnroot/modelrepository/trunk/repository/src/main/java/de/uni_leipzig/wifa/iwi/mr3/dao/SearchProcessor.java $
6 //
7
8 package de.uni_leipzig.wifa.iwi.mr3.dao;
9
10 import de.uni_leipzig.wifa.iwi.mr3.common.Match;
11
12 /**
13 * Search processor.
14 */
15 public interface SearchProcessor
16 {
17 /**
18 * Processes a complete search over all direct and indirect instances of
19 * EObject.
20 *
21 * @param expression
22 * Search expresion
23 * @param classifiers
24 * Classifiers to search for
25 * @param isCaseSensitive
26 * Case sensitive search
27 * @param isRegEx
28 * Regular expression search
29 * @return array with found models
30 */
31 Match[] processCompleteSearch(
32 final String expression,
33 final String[] classifiers,
34 final boolean isCaseSensitive,
35 final boolean isRegEx);
36
37 /**
38 * Processes a partial search for instances of given classifiers.
39 *
40 * @param expression
41 * Search expresion
42 * @param classifiers
43 * Classifiers to search for
44 * @param isCaseSensitive
45 * Case sensitive search
46 * @param isRegEx
47 * Regular expression search
48 * @return array with found models
49 */
50 Match[] processPartialSearch(
51 final String expression,
52 final String[] classifiers,
53 final boolean isCaseSensitive,
54 final boolean isRegEx);
55 }