View Javadoc
1   /*
2    * Copyright (C) 2003-2012 David E. Berry
3    *
4    * This library is free software; you can redistribute it and/or
5    * modify it under the terms of the GNU Lesser General Public
6    * License as published by the Free Software Foundation; either
7    * version 2.1 of the License, or (at your option) any later version.
8    *
9    * This library 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 GNU
12   * Lesser General Public License for more details.
13   *
14   * You should have received a copy of the GNU Lesser General Public
15   * License along with this library; if not, write to the Free Software
16   * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
17   *
18   * A copy of the GNU Lesser General Public License may also be found at
19   * http://www.gnu.org/licenses/lgpl.txt
20   */
21  package org.synchronoss.cpo.jdbc;
22  
23  import org.synchronoss.cpo.BindableCpoWhere;
24  import org.synchronoss.cpo.meta.domain.CpoAttribute;
25  
26  /**
27   * Created with IntelliJ IDEA.
28   * User: dberry
29   * Date: 13/10/13
30   * Time: 14:05 PM
31   * To change this template use File | Settings | File Templates.
32   */
33  public class JdbcCpoWhere extends BindableCpoWhere {
34  
35    public JdbcCpoWhere() {
36    }
37  
38    public <T> JdbcCpoWhere(int logical, String attr, int comp, T value) {
39      super(logical, attr, comp, value);
40    }
41  
42    public <T> JdbcCpoWhere(int logical, String attr, int comp, T value, boolean not) {
43      super(logical, attr, comp, value, not);
44    }
45  
46    @Override
47    protected String buildColumnName(CpoAttribute attribute) {
48      JdbcCpoAttribute jdbcCpoAttribute = (JdbcCpoAttribute) attribute;
49  
50      StringBuilder columnName = new StringBuilder();
51  
52      if (jdbcCpoAttribute.getDbTable() != null) {
53        columnName.append(jdbcCpoAttribute.getDbTable());
54        columnName.append(".");
55      }
56      if (jdbcCpoAttribute.getDbColumn() != null) {
57        columnName.append(jdbcCpoAttribute.getDbColumn());
58      } else {
59        columnName.append(jdbcCpoAttribute.getDataName());
60      }
61  
62      return columnName.toString();
63    }
64  
65  }