Coverage Report - org.israfil.sqlelements.constraints.ColumnConstraint
 
Classes in this File Line Coverage Branch Coverage Complexity
ColumnConstraint
100% 
100% 
1.667
 
 1  
 /*
 2  
  * SQLElements object-oriented SQL parsing and generation library
 3  
  * 
 4  
  * Copyright (c) 2003, 2004, 2005 Israfil Consulting Services Corporation
 5  
  * Copyright (c) 2003, 2004, 2005 Christian Edward Gruber
 6  
  * All Rights Reserved
 7  
  * 
 8  
  *  This library is free software; you can redistribute it and/or modify 
 9  
  *  it under the terms of the GNU Lesser General Public License as published 
 10  
  *  by the Free Software Foundation; either version 2.1 of the License, or 
 11  
  *  (at your option) any later version.
 12  
  *
 13  
  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 
 14  
  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 
 15  
  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. 
 16  
  * IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, 
 17  
  * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, 
 18  
  * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, 
 19  
  * OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 
 20  
  * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 
 21  
  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY 
 22  
  * OF SUCH DAMAGE.
 23  
  *
 24  
  *  You should have received a copy of the GNU Lesser General Public License 
 25  
  *  along with this library; if not, please visit http://www.gnu.org/licenses/lgpl.html
 26  
  *
 27  
  * $Id: ColumnConstraint.java 21 2005-12-10 16:40:45 -0500 (Sat, 10 Dec 2005) cgruber $
 28  
  */
 29  
 package org.israfil.sqlelements.constraints;
 30  
 
 31  
 import org.israfil.sqlelements.Column;
 32  
 import org.israfil.sqlelements.render.SQLRenderContext;
 33  
 
 34  
 
 35  
 /**
 36  
  * A constraint wrapper for a column.  It's used internally by 
 37  
  * the library to ease implementation of column-oriented
 38  
  * constraints such as "Equals", etc.
 39  
  * 
 40  
  * @see BinaryConstraint
 41  
  * @see Equals
 42  
  * 
 43  
  * @author <a href="mailto:cgruber@israfil.net">Christian Edward Gruber </a>
 44  
  * @author Latest: $Author: cgruber $
 45  
  * @version $Revision: 21 $
 46  
  */
 47  
 class ColumnConstraint implements SimpleConstraint
 48  
 {
 49  
     Column column;
 50  1
     public Column getColumn() { return column; } 
 51  
 
 52  
     public ColumnConstraint(Column column) 
 53  38
     {
 54  38
         this.column = column;
 55  38
     }
 56  
     
 57  
     public String render(SQLRenderContext context)
 58  
     {
 59  33
         if (column.getTable() != null) 
 60  
         {
 61  18
             return context.getAlias(column.getTable()) + "." + column.render(context);
 62  
         }
 63  15
         else return column.render(context);
 64  
     }
 65  
 }