package com.idega.block.dataquery.data.sql; import com.idega.block.dataquery.data.xml.QueryEntityPart; import com.idega.util.StringHandler; /** * <p>Title: idegaWeb</p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2003</p> * <p>Company: idega Software</p> * @author <a href="thomas@idega.is">Thomas Hilbig</a> * @version 1.0 * Created on Oct 10, 2003 */ public class InnerJoinExpression implements Expression { public static final String PREFIX=" , "; private String alias; private String tableName; public InnerJoinExpression(QueryEntityPart queryEntityPart, SQLQuery sqlQuery) { String entity = queryEntityPart.getBeanClassName(); String path = queryEntityPart.getPath(); this.alias = sqlQuery.getUniqueNameForEntity(entity,path); this.tableName = sqlQuery.getTableName(entity, path); } public InnerJoinExpression(String tableName, String path, SQLQuery sqlQuery) { this.tableName = tableName; this.alias = sqlQuery.getUniqueNameForEntityByTableName(tableName, path); } /* (non-Javadoc) * @see com.idega.block.dataquery.data.sql.Expression#toSQLString() */ public String toSQLString() { StringBuffer buffer = new StringBuffer(" ").append(this.tableName).append(" ").append(this.alias).append(" "); return buffer.toString(); } /* (non-Javadoc) * @see com.idega.block.dataquery.data.sql.Expression#isValid() */ public boolean isValid() { return StringHandler.isNotEmpty(this.alias) && StringHandler.isNotEmpty(this.tableName); } public String getTable() { return this.tableName; } }