com.semarchy.mdm.runtime.semql.dataaccess.sqlgen
Class SqlView

java.lang.Object
  extended by com.semarchy.mdm.runtime.semql.dataaccess.sqlgen.SqlView

public class SqlView
extends Object


Nested Class Summary
static class SqlView.PublishedExpression
           
 
Constructor Summary
SqlView(SqlViewAliasProvider pAliasProvider, IView pView)
           
 
Method Summary
 void appendFromClause(StringBuilder builder, String indent)
           
 void appendFromClause(StringBuilder builder, String indent, SqlWhereClause optionalSqlWhereClause, boolean pConsiderUsingPKIndexHint)
           
static void appendViewWhereClause(IView view, StringBuilder whereBuilder)
           
 SqlView createNestedSQLView(SemQLDataAccessNodePath pNestingAttr)
           
 SqlView findOrCreateSQLView(List<String> path)
           
static List<JoinPredicate> getJoinPredicates(INavigationNode pNavNode)
           
 String getNestingCorrelationCondition()
          The SQL condition to use to correlate/syncrhonize subquery to parents
 List<SqlView> getOtherViewsToSecure()
           
 SqlView getParentView()
          The SQLView at the upper (unnested) level when the SQLView is the root view of an subquery.
 String getPublicAlias(String pSQLExpression)
          Add the expression to the expressions published (selected) from this view.
 List<SqlView.PublishedExpression> getPublishedExpressions()
           
 IView getView()
           
 String getViewAlias()
           
static INavigationNode reverse(INavigationNode pNavNode)
           
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SqlView

public SqlView(SqlViewAliasProvider pAliasProvider,
               IView pView)
Method Detail

getViewAlias

public String getViewAlias()

getView

public IView getView()

getPublicAlias

public String getPublicAlias(String pSQLExpression)
Add the expression to the expressions published (selected) from this view. The expression as to be be valid for the view.

Parameters:
pSQLExpression - SQL expression to expose
Returns:
the alias to use in the from outside the view

getPublishedExpressions

public List<SqlView.PublishedExpression> getPublishedExpressions()

findOrCreateSQLView

public SqlView findOrCreateSQLView(List<String> path)

createNestedSQLView

public SqlView createNestedSQLView(SemQLDataAccessNodePath pNestingAttr)

reverse

public static INavigationNode reverse(INavigationNode pNavNode)

getJoinPredicates

public static List<JoinPredicate> getJoinPredicates(INavigationNode pNavNode)

getParentView

public SqlView getParentView()
The SQLView at the upper (unnested) level when the SQLView is the root view of an subquery. Null if current view is not the root view of the from clause of a nested query.

Returns:

appendFromClause

public void appendFromClause(StringBuilder builder,
                             String indent)

appendFromClause

public void appendFromClause(StringBuilder builder,
                             String indent,
                             SqlWhereClause optionalSqlWhereClause,
                             boolean pConsiderUsingPKIndexHint)

appendViewWhereClause

public static void appendViewWhereClause(IView view,
                                         StringBuilder whereBuilder)

getNestingCorrelationCondition

public String getNestingCorrelationCondition()
The SQL condition to use to correlate/syncrhonize subquery to parents

Returns:

toString

public String toString()
Overrides:
toString in class Object

getOtherViewsToSecure

public List<SqlView> getOtherViewsToSecure()


Copyright © 2015. All Rights Reserved.