1 /*
2 * JasperReports - Free Java Reporting Library.
3 * Copyright (C) 2001 - 2019 TIBCO Software Inc. All rights reserved.
4 * http://www.jaspersoft.com
5 *
6 * Unless you have purchased a commercial license agreement from Jaspersoft,
7 * the following license terms apply:
8 *
9 * This program is part of JasperReports.
10 *
11 * JasperReports is free software: you can redistribute it and/or modify
12 * it under the terms of the GNU Lesser General Public License as published by
13 * the Free Software Foundation, either version 3 of the License, or
14 * (at your option) any later version.
15 *
16 * JasperReports is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Lesser General Public License for more details.
20 *
21 * You should have received a copy of the GNU Lesser General Public License
22 * along with JasperReports. If not, see <http://www.gnu.org/licenses/>.
23 */
24 package net.sf.jasperreports.engine.query;
25
26
27
28 /**
29 * Base LESS/GREATER clause function for SQL queries.
30 *
31 * <p>
32 * The first token in the $X{...} syntax is the function ID token. Possible values for
33 * the LESS | GREATER clause function ID token are:
34 * <ul>
35 * <li><code>LESS</code> - in this case the <code>LESS THAN</code> operator <code><</code> will be applied.</li>
36 * <li><code>LESS]</code> - in this case the <code>LESS OR EQUAL</code> operator <code><=</code> will be applied.</li>
37 * <li><code>GREATER</code> - in this case the <code>GREATER THAN</code> operator <code>></code> will be applied.</li>
38 * <li><code>[GREATER</code> - in this case the <code>GREATER OR EQUAL</code> operator <code>>=</code> will be applied.</li>
39 * </ul>
40 * </p>
41 *
42 * @author Sanda Zaharia (shertage@users.sourceforge.net)
43 */
44 public class JRSqlLessOrGreaterClause extends SQLLessOrGreaterBaseClause
45 {
46
47 protected static final JRSqlLessOrGreaterClause singleton = new JRSqlLessOrGreaterClause();
48
49 /**
50 * Returns the singleton function instance.
51 *
52 * @return the singleton function instance
53 */
54 public static JRSqlLessOrGreaterClause instance()
55 {
56 return singleton;
57 }
58
59 @Override
60 protected ClauseFunctionParameterHandler createParameterHandler(JRQueryClauseContext queryContext,
61 String clauseId, String parameterName)
62 {
63 Object paramValue = queryContext.getValueParameter(parameterName).getValue();
64 return new DefaultClauseFunctionParameterHandler(queryContext, parameterName, paramValue);
65 }
66 }
67