View Javadoc
1   /*
2    * Copyright (C) 2003-2008 eXo Platform SAS.
3    *
4    * This program is free software; you can redistribute it and/or
5    * modify it under the terms of the GNU Affero General Public License
6    * as published by the Free Software Foundation; either version 3
7    * of the License, or (at your option) any later version.
8    *
9    * This program is distributed in the hope that it will be useful,
10   * but WITHOUT ANY WARRANTY; without even the implied warranty of
11   * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12   * GNU General Public License for more details.
13   *
14   * You should have received a copy of the GNU General Public License
15   * along with this program; if not, see<http://www.gnu.org/licenses/>.
16   */
17  package org.exoplatform.services.wcm.utils;
18  
19  
20  
21  /**
22   * Created by The eXo Platform SAS
23   * Author : Hoa Pham
24   *          hoa.pham@exoplatform.com
25   * Oct 7, 2008
26   */
27  public class XPathQueryBuilder extends AbstractQueryBuilder {
28  
29    public void isNull(String propertyName, LOGICAL condition) {
30    }
31  
32    public void isNotNull(String propertyName, LOGICAL condition) {
33    }
34  
35    public void lessThan(String propertyName, String value, LOGICAL condition) {
36      comparison(propertyName,value,condition,"<");
37    }
38  
39    public void greaterThan(String propName, String value, LOGICAL condition) {
40      comparison(propName,value,condition,">");
41    }
42  
43    public void lessThanOrEqual(String propName, String value, LOGICAL condition) {
44      comparison(propName,value,condition,"<=");
45    }
46  
47    public void greaterOrEqual(String propName,String value, LOGICAL condition) {
48      comparison(propName,value,condition,">=");
49    }
50  
51    public void equal(String propName, String value , LOGICAL condition) {
52      comparison(propName,value,condition,"=");
53    }
54  
55    public void notEqual(String propName, String value, LOGICAL condition) {
56      if(condition == LOGICAL.AND)
57        propertiesClause.append("and @").append(propName).append(" != '").append(value).append("' ");
58      else if(condition == LOGICAL.OR)
59        propertiesClause.append("or @").append(" != '").append(value).append("' ");
60      return;
61    }
62  
63    private void comparison(String propName, String value, LOGICAL condition, String symbol) {
64    }
65  
66    public void like(String propName, String value, LOGICAL condition) {
67    }
68  
69    @Override
70    public void afterDate(String datePropertyName, String date, LOGICAL condition) {
71    }
72  
73    @Override
74    public void beforeDate(String datePropertyName, String date, LOGICAL condition) {
75    }
76  
77    @Override
78    public void betweenDates(String datePropertyName, String startDate, String endDate,
79        LOGICAL condition) {
80    }
81  
82    @Override
83    public void contains(String scope, String term, LOGICAL condition) {
84    }
85  
86    @Override
87    public String createQueryStatement() {
88      return null;
89    }
90  
91    @Override
92    public void merge(AbstractQueryBuilder other) {
93    }
94  
95    @Override
96    public void notContains(String scope, String term, LOGICAL condition) {
97    }
98  
99    @Override
100   public void orderBy(String properyName, ORDERBY orderby) {
101   }
102 
103   @Override
104   public void reference(String propName, String value, LOGICAL condition) {
105   }
106 
107   public void spellCheck(String value) {
108   }
109 
110   @Override
111   public void setQueryPath(String path, PATH_TYPE pathtype) {
112   }
113 
114   @Override
115   public void excerpt(boolean enable) {
116   }
117 
118   @Override
119   public void fromNodeTypes(String[] nodetypes) {
120   }
121 
122   @Override
123   public void selectTypes(String[] returnTypes) {
124   }
125 
126   @Override
127   public void closeGroup() {
128   }
129 
130   @Override
131   public void openGroup(LOGICAL logical) {
132   }
133 }