mtas.solr.search.MtasCQLQParser.html
30.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<title>Coverage Report</title>
<link title="Style" type="text/css" rel="stylesheet" href="css/main.css"/>
<script type="text/javascript" src="js/popup.js"></script>
</head>
<body>
<h5>Coverage Report - mtas.solr.search.MtasCQLQParser</h5>
<div class="separator"> </div>
<table class="report">
<thead><tr> <td class="heading">Classes in this File</td> <td class="heading"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">Line Coverage</a></td> <td class="heading"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">Branch Coverage</a></td> <td class="heading"><a class="dfn" href="help.html" onclick="popupwindow('help.html'); return false;">Complexity</a></td></tr></thead>
<tr><td><a href="mtas.solr.search.MtasCQLQParser.html">MtasCQLQParser</a></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">59%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:59px"><span class="text">32/54</span></div></div></td></tr></table></td><td><table cellpadding="0px" cellspacing="0px" class="percentgraph"><tr class="percentgraph"><td align="right" class="percentgraph" width="40">33%</td><td class="percentgraph"><div class="percentgraph"><div class="greenbar" style="width:33px"><span class="text">12/36</span></div></div></td></tr></table></td><td class="value"><span class="hidden">13.0;</span>13</td></tr>
</table>
<div class="separator"> </div>
<table cellspacing="0" cellpadding="0" class="src">
<tr> <td class="numLine"> 1</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">package</span> mtas.solr.search;</pre></td></tr>
<tr> <td class="numLine"> 2</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLine"> 3</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">import</span> java.io.BufferedReader;</pre></td></tr>
<tr> <td class="numLine"> 4</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">import</span> java.io.Reader;</pre></td></tr>
<tr> <td class="numLine"> 5</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">import</span> java.io.StringReader;</pre></td></tr>
<tr> <td class="numLine"> 6</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">import</span> java.util.ArrayList;</pre></td></tr>
<tr> <td class="numLine"> 7</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">import</span> java.util.HashMap;</pre></td></tr>
<tr> <td class="numLine"> 8</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">import</span> java.util.Iterator;</pre></td></tr>
<tr> <td class="numLine"> 9</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLine"> 10</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">import</span> mtas.parser.cql.MtasCQLParser;</pre></td></tr>
<tr> <td class="numLine"> 11</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">import</span> mtas.search.spans.util.MtasSpanQuery;</pre></td></tr>
<tr> <td class="numLine"> 12</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">import</span> org.apache.lucene.search.Query;</pre></td></tr>
<tr> <td class="numLine"> 13</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">import</span> org.apache.solr.common.params.SolrParams;</pre></td></tr>
<tr> <td class="numLine"> 14</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">import</span> org.apache.solr.request.SolrQueryRequest;</pre></td></tr>
<tr> <td class="numLine"> 15</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">import</span> org.apache.solr.search.QParser;</pre></td></tr>
<tr> <td class="numLine"> 16</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">import</span> org.apache.solr.search.SyntaxError;</pre></td></tr>
<tr> <td class="numLine"> 17</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLine"> 18</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine"> 19</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment"> * The Class MtasCQLQParser.</span></pre></td></tr>
<tr> <td class="numLine"> 20</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine"> 21</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">class</span> MtasCQLQParser <span class="keyword">extends</span> QParser {</pre></td></tr>
<tr> <td class="numLine"> 22</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLine"> 23</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment">/** The mtas cql qparser field. */</span></pre></td></tr>
<tr> <td class="numLine"> 24</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">final</span> String MTAS_CQL_QPARSER_FIELD = <span class="string">"field"</span>;</pre></td></tr>
<tr> <td class="numLine"> 25</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLine"> 26</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment">/** The mtas cql qparser query. */</span></pre></td></tr>
<tr> <td class="numLine"> 27</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">final</span> String MTAS_CQL_QPARSER_QUERY = <span class="string">"query"</span>;</pre></td></tr>
<tr> <td class="numLine"> 28</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLine"> 29</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment">/** The mtas cql qparser query. */</span></pre></td></tr>
<tr> <td class="numLine"> 30</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">final</span> String MTAS_CQL_QPARSER_IGNORE = <span class="string">"ignore"</span>;</pre></td></tr>
<tr> <td class="numLine"> 31</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLine"> 32</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment">/** The mtas cql qparser default prefix. */</span></pre></td></tr>
<tr> <td class="numLine"> 33</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">public</span> <span class="keyword">static</span> <span class="keyword">final</span> String MTAS_CQL_QPARSER_PREFIX = <span class="string">"prefix"</span>;</pre></td></tr>
<tr> <td class="numLine"> 34</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLine"> 35</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment">/** The field. */</span></pre></td></tr>
<tr> <td class="numLineCover"> 36</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src"> String field = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLine"> 37</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLine"> 38</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment">/** The query. */</span></pre></td></tr>
<tr> <td class="numLineCover"> 39</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src"> String cql = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLine"> 40</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLineCover"> 41</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src"> String ignoreQuery = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLine"> 42</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLineCover"> 43</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src"> Integer maximumIgnoreLength = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLine"> 44</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLine"> 45</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment">/** The default prefix. */</span></pre></td></tr>
<tr> <td class="numLineCover"> 46</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src"> String defaultPrefix = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLine"> 47</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLine"> 48</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment">/** The variables. */</span></pre></td></tr>
<tr> <td class="numLineCover"> 49</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src"> HashMap<String, String[]> variables = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLine"> 50</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLine"> 51</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment">/**</span></pre></td></tr>
<tr> <td class="numLine"> 52</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment"> * Instantiates a new mtas cqlq parser.</span></pre></td></tr>
<tr> <td class="numLine"> 53</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment"> *</span></pre></td></tr>
<tr> <td class="numLine"> 54</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment"> * @param qstr the qstr</span></pre></td></tr>
<tr> <td class="numLine"> 55</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment"> * @param localParams the local params</span></pre></td></tr>
<tr> <td class="numLine"> 56</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment"> * @param params the params</span></pre></td></tr>
<tr> <td class="numLine"> 57</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment"> * @param req the req</span></pre></td></tr>
<tr> <td class="numLine"> 58</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine"> 59</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">public</span> MtasCQLQParser(String qstr, SolrParams localParams, SolrParams params,</pre></td></tr>
<tr> <td class="numLine"> 60</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> SolrQueryRequest req) {</pre></td></tr>
<tr> <td class="numLineCover"> 61</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src"> <span class="keyword">super</span>(qstr, localParams, params, req);</pre></td></tr>
<tr> <td class="numLine"> 62</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLineCover"> 63</td> <td class="nbHitsUncovered"><a title="Line 63: Conditional coverage 50% (1/2)."> 20</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 63: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> ((localParams.getParams(MTAS_CQL_QPARSER_FIELD) != <span class="keyword">null</span>)</a></span></pre></td></tr>
<tr> <td class="numLineCover"> 64</td> <td class="nbHitsUncovered"><a title="Line 64: Conditional coverage 50% (1/2)."> 20</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 64: Conditional coverage 50% (1/2)."> && (localParams.getParams(MTAS_CQL_QPARSER_FIELD).length == 1)) {</a></span></pre></td></tr>
<tr> <td class="numLineCover"> 65</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src"> field = localParams.getParams(MTAS_CQL_QPARSER_FIELD)[0];</pre></td></tr>
<tr> <td class="numLine"> 66</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLineCover"> 67</td> <td class="nbHitsUncovered"><a title="Line 67: Conditional coverage 50% (1/2)."> 20</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 67: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> ((localParams.getParams(MTAS_CQL_QPARSER_QUERY) != <span class="keyword">null</span>)</a></span></pre></td></tr>
<tr> <td class="numLineCover"> 68</td> <td class="nbHitsUncovered"><a title="Line 68: Conditional coverage 50% (1/2)."> 20</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 68: Conditional coverage 50% (1/2)."> && (localParams.getParams(MTAS_CQL_QPARSER_QUERY).length == 1)) {</a></span></pre></td></tr>
<tr> <td class="numLineCover"> 69</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src"> cql = localParams.getParams(MTAS_CQL_QPARSER_QUERY)[0];</pre></td></tr>
<tr> <td class="numLine"> 70</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLineCover"> 71</td> <td class="nbHitsUncovered"><a title="Line 71: Conditional coverage 50% (1/2)."> 21</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 71: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> ((localParams.getParams(MTAS_CQL_QPARSER_IGNORE) != <span class="keyword">null</span>)</a></span></pre></td></tr>
<tr> <td class="numLineCover"> 72</td> <td class="nbHitsUncovered"><a title="Line 72: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 72: Conditional coverage 0% (0/2)."> && (localParams.getParams(MTAS_CQL_QPARSER_IGNORE).length == 1)) {</a></span></pre></td></tr>
<tr> <td class="numLineCover"> 73</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> ignoreQuery = localParams.getParams(MTAS_CQL_QPARSER_IGNORE)[0];</span></pre></td></tr>
<tr> <td class="numLine"> 74</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLineCover"> 75</td> <td class="nbHitsUncovered"><a title="Line 75: Conditional coverage 50% (1/2)."> 20</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 75: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> ((localParams.getParams(MTAS_CQL_QPARSER_PREFIX) != <span class="keyword">null</span>)</a></span></pre></td></tr>
<tr> <td class="numLine"> 76</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> && (localParams</pre></td></tr>
<tr> <td class="numLineCover"> 77</td> <td class="nbHitsUncovered"><a title="Line 77: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 77: Conditional coverage 0% (0/2)."> .getParams(MTAS_CQL_QPARSER_PREFIX).length == 1)) {</a></span></pre></td></tr>
<tr> <td class="numLineCover"> 78</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> defaultPrefix = localParams.getParams(MTAS_CQL_QPARSER_PREFIX)[0];</span></pre></td></tr>
<tr> <td class="numLine"> 79</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLineCover"> 80</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src"> variables = <span class="keyword">new</span> HashMap<>();</pre></td></tr>
<tr> <td class="numLineCover"> 81</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src"> Iterator<String> it = localParams.getParameterNamesIterator();</pre></td></tr>
<tr> <td class="numLineCover"> 82</td> <td class="nbHitsCovered"><a title="Line 82: Conditional coverage 100% (2/2)."> 102</a></td> <td class="src"><pre class="src"> <a title="Line 82: Conditional coverage 100% (2/2)."> <span class="keyword">while</span> (it.hasNext()) {</a></pre></td></tr>
<tr> <td class="numLineCover"> 83</td> <td class="nbHitsCovered"> 84</td> <td class="src"><pre class="src"> String item = it.next(); </pre></td></tr>
<tr> <td class="numLineCover"> 84</td> <td class="nbHitsUncovered"><a title="Line 84: Conditional coverage 50% (1/2)."> 83</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 84: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (item.startsWith(<span class="string">"variable_"</span>)) { </a></span></pre></td></tr>
<tr> <td class="numLineCover"> 85</td> <td class="nbHitsUncovered"><a title="Line 85: Conditional coverage 0% (0/6) [each condition: 0%, 0%, 0%]."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 85: Conditional coverage 0% (0/6) [each condition: 0%, 0%, 0%]."> <span class="keyword">if</span>(localParams.getParams(item).length==0 || (localParams.getParams(item).length==1 && localParams.getParams(item)[0].isEmpty())) {</a></span></pre></td></tr>
<tr> <td class="numLineCover"> 86</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> variables.put(item.substring(9),<span class="keyword">new</span> String[0]);</span></pre></td></tr>
<tr> <td class="numLine"> 87</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover"> 88</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> ArrayList<String> list = <span class="keyword">new</span> ArrayList<>();</span></pre></td></tr>
<tr> <td class="numLineCover"> 89</td> <td class="nbHitsUncovered"><a title="Line 89: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 89: Conditional coverage 0% (0/2)."> <span class="keyword">for</span>(<span class="keyword">int</span> i=0; i<localParams.getParams(item).length; i++) {</a></span></pre></td></tr>
<tr> <td class="numLineCover"> 90</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> String[] subList = localParams.getParams(item)[i].split(<span class="string">"(?<!\\\\),"</span>);</span></pre></td></tr>
<tr> <td class="numLineCover"> 91</td> <td class="nbHitsUncovered"><a title="Line 91: Conditional coverage 0% (0/2)."> 0</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 91: Conditional coverage 0% (0/2)."> <span class="keyword">for</span>(<span class="keyword">int</span> j=0; j<subList.length; j++) {</a></span></pre></td></tr>
<tr> <td class="numLineCover"> 92</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> list.add(subList[j].replace(<span class="string">"\\,"</span>, <span class="string">","</span>).replace(<span class="string">"\\\\"</span>, <span class="string">"\\"</span>));</span></pre></td></tr>
<tr> <td class="numLine"> 93</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 94</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLineCover"> 95</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> variables.put(item.substring(9), list.toArray(<span class="keyword">new</span> String[list.size()]));</span></pre></td></tr>
<tr> <td class="numLine"> 96</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 97</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLineCover"> 98</td> <td class="nbHitsCovered"> 82</td> <td class="src"><pre class="src"> } </pre></td></tr>
<tr> <td class="numLineCover"> 99</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 100</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLine"> 101</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment">/*</span></pre></td></tr>
<tr> <td class="numLine"> 102</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment"> * (non-Javadoc)</span></pre></td></tr>
<tr> <td class="numLine"> 103</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment"> * </span></pre></td></tr>
<tr> <td class="numLine"> 104</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment"> * @see org.apache.solr.search.QParser#parse()</span></pre></td></tr>
<tr> <td class="numLine"> 105</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="comment"> */</span></pre></td></tr>
<tr> <td class="numLine"> 106</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> @Override</pre></td></tr>
<tr> <td class="numLine"> 107</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">public</span> Query parse() <span class="keyword">throws</span> SyntaxError {</pre></td></tr>
<tr> <td class="numLineCover"> 108</td> <td class="nbHitsUncovered"><a title="Line 108: Conditional coverage 50% (1/2)."> 21</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 108: Conditional coverage 50% (1/2)."> <span class="keyword">if</span> (field == <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover"> 109</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">throw</span> <span class="keyword">new</span> SyntaxError(<span class="string">"no "</span> + MTAS_CQL_QPARSER_FIELD);</span></pre></td></tr>
<tr> <td class="numLineCover"> 110</td> <td class="nbHitsUncovered"><a title="Line 110: Conditional coverage 50% (1/2)."> 20</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 110: Conditional coverage 50% (1/2)."> } <span class="keyword">else</span> <span class="keyword">if</span> (cql == <span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover"> 111</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">throw</span> <span class="keyword">new</span> SyntaxError(<span class="string">"no "</span> + MTAS_CQL_QPARSER_QUERY);</span></pre></td></tr>
<tr> <td class="numLine"> 112</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> } <span class="keyword">else</span> {</pre></td></tr>
<tr> <td class="numLineCover"> 113</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src"> MtasSpanQuery q = <span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLineCover"> 114</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src"> MtasSpanQuery iq =<span class="keyword">null</span>;</pre></td></tr>
<tr> <td class="numLineCover"> 115</td> <td class="nbHitsUncovered"><a title="Line 115: Conditional coverage 50% (1/2)."> 20</a></td> <td class="src"><pre class="src"><span class="srcUncovered"> <a title="Line 115: Conditional coverage 50% (1/2)."> <span class="keyword">if</span>(ignoreQuery!=<span class="keyword">null</span>) {</a></span></pre></td></tr>
<tr> <td class="numLineCover"> 116</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> Reader ignoreReader = <span class="keyword">new</span> BufferedReader(<span class="keyword">new</span> StringReader(ignoreQuery));</span></pre></td></tr>
<tr> <td class="numLineCover"> 117</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> MtasCQLParser ignoreParser = <span class="keyword">new</span> MtasCQLParser(ignoreReader);</span></pre></td></tr>
<tr> <td class="numLine"> 118</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">try</span> {</pre></td></tr>
<tr> <td class="numLineCover"> 119</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> iq = ignoreParser.parse(field, <span class="keyword">null</span>, <span class="keyword">null</span>, <span class="keyword">null</span>, <span class="keyword">null</span>);</span></pre></td></tr>
<tr> <td class="numLineCover"> 120</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> } <span class="keyword">catch</span> (mtas.parser.cql.TokenMgrError | mtas.parser.cql.ParseException e) {</span></pre></td></tr>
<tr> <td class="numLineCover"> 121</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">throw</span> <span class="keyword">new</span> SyntaxError(e.getMessage());</span></pre></td></tr>
<tr> <td class="numLineCover"> 122</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> }</span></pre></td></tr>
<tr> <td class="numLine"> 123</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLineCover"> 124</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src"> Reader queryReader = <span class="keyword">new</span> BufferedReader(<span class="keyword">new</span> StringReader(cql));</pre></td></tr>
<tr> <td class="numLineCover"> 125</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src"> MtasCQLParser queryParser = <span class="keyword">new</span> MtasCQLParser(queryReader);</pre></td></tr>
<tr> <td class="numLine"> 126</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> <span class="keyword">try</span> {</pre></td></tr>
<tr> <td class="numLineCover"> 127</td> <td class="nbHitsCovered"> 20</td> <td class="src"><pre class="src"> q = queryParser.parse(field, defaultPrefix, variables, iq, maximumIgnoreLength);</pre></td></tr>
<tr> <td class="numLineCover"> 128</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> } <span class="keyword">catch</span> (mtas.parser.cql.TokenMgrError | mtas.parser.cql.ParseException e) {</span></pre></td></tr>
<tr> <td class="numLineCover"> 129</td> <td class="nbHitsUncovered"> 0</td> <td class="src"><pre class="src"><span class="srcUncovered"> <span class="keyword">throw</span> <span class="keyword">new</span> SyntaxError(e.getMessage());</span></pre></td></tr>
<tr> <td class="numLineCover"> 130</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLineCover"> 131</td> <td class="nbHitsCovered"> 21</td> <td class="src"><pre class="src"> <span class="keyword">return</span> q;</pre></td></tr>
<tr> <td class="numLine"> 132</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 133</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
<tr> <td class="numLine"> 134</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> </pre></td></tr>
<tr> <td class="numLine"> 135</td> <td class="nbHits"> </td>
<td class="src"><pre class="src"> }</pre></td></tr>
</table>
<div class="footer">Report generated by <a href="http://cobertura.sourceforge.net/" target="_top">Cobertura</a> 2.1.1 on 5/11/17 11:17 AM.</div>
</body>
</html>