it.eng.spagobi.engines.qbe.tree
Class ExtJsQbeTreeBuilder

java.lang.Object
  extended by it.eng.spagobi.engines.qbe.tree.ExtJsQbeTreeBuilder

public class ExtJsQbeTreeBuilder
extends java.lang.Object

The Class ExtJsQbeTreeBuilder.

Author:
Andrea Gioia (andrea.gioia@eng.it)

Field Summary
static java.lang.String NODE_TYPE_CALCULATED_FIELD
           
static java.lang.String NODE_TYPE_ENTITY
           
static java.lang.String NODE_TYPE_INLINE_CALCULATED_FIELD
           
static java.lang.String NODE_TYPE_SIMPLE_FIELD
           
 java.io.PrintWriter writer
           
 
Constructor Summary
ExtJsQbeTreeBuilder(it.eng.qbe.model.structure.filter.QbeTreeFilter qbeTreeFilter)
          Instantiates a new ext js qbe tree builder.
 
Method Summary
 int addCalculatedFieldNodes(IQbeTree tree, it.eng.qbe.model.structure.IModelEntity entity, int parentEntityNodeId, int nodeCounter)
          Add Calculate Fields on the entity Control recursion level because calculate field are applied only at entity level not in dimension level.
 void addEntityNode(org.json.JSONArray nodes, it.eng.qbe.model.structure.IModelEntity entity, int recursionLevel)
          Adds the entity node.
 void addEntityNodes(org.json.JSONArray nodes, java.lang.String datamartName)
          Adds the entity nodes.
 void addEntityRootNode(org.json.JSONArray nodes, it.eng.qbe.model.structure.IModelEntity entity, int recursionLevel)
          Adds the entity root node.
 org.json.JSONObject getCalculatedFieldNode(it.eng.qbe.model.structure.IModelEntity parentEntity, it.eng.qbe.model.structure.ModelCalculatedField field)
           
protected  it.eng.qbe.datasource.IDataSource getDataSource()
          Gets the datamart model.
 org.json.JSONObject getFieldNode(it.eng.qbe.model.structure.IModelEntity parentEntity, it.eng.qbe.model.structure.IModelField field)
          Gets the field node.
 org.json.JSONArray getFieldNodes(it.eng.qbe.model.structure.IModelEntity entity, int recursionLevel)
          Gets the field nodes.
 java.util.Locale getLocale()
           
 org.json.JSONArray getQbeTree(it.eng.qbe.datasource.IDataSource dataSource, java.util.Locale locale, java.lang.String datamartName)
           
 org.json.JSONArray getSubEntitiesNodes(it.eng.qbe.model.structure.IModelEntity entity, org.json.JSONArray nodes, int recursionLevel)
          Gets the sub entities nodes.
protected  void setDatamartModel(it.eng.qbe.datasource.IDataSource dataSource)
          Sets the datamart model.
 void setLocale(java.util.Locale locale)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NODE_TYPE_ENTITY

public static final java.lang.String NODE_TYPE_ENTITY
See Also:
Constant Field Values

NODE_TYPE_SIMPLE_FIELD

public static final java.lang.String NODE_TYPE_SIMPLE_FIELD
See Also:
Constant Field Values

NODE_TYPE_CALCULATED_FIELD

public static final java.lang.String NODE_TYPE_CALCULATED_FIELD
See Also:
Constant Field Values

NODE_TYPE_INLINE_CALCULATED_FIELD

public static final java.lang.String NODE_TYPE_INLINE_CALCULATED_FIELD
See Also:
Constant Field Values

writer

public java.io.PrintWriter writer
Constructor Detail

ExtJsQbeTreeBuilder

public ExtJsQbeTreeBuilder(it.eng.qbe.model.structure.filter.QbeTreeFilter qbeTreeFilter)
Instantiates a new ext js qbe tree builder.

Parameters:
qbeTreeFilter - the qbe tree filter
Method Detail

getQbeTree

public org.json.JSONArray getQbeTree(it.eng.qbe.datasource.IDataSource dataSource,
                                     java.util.Locale locale,
                                     java.lang.String datamartName)

addEntityNodes

public void addEntityNodes(org.json.JSONArray nodes,
                           java.lang.String datamartName)
Adds the entity nodes.

Parameters:
nodes - the nodes
datamartName - the datamart name

addEntityNode

public void addEntityNode(org.json.JSONArray nodes,
                          it.eng.qbe.model.structure.IModelEntity entity,
                          int recursionLevel)
Adds the entity node.

Parameters:
nodes - the nodes
entity - the entity
recursionLevel - the recursion level

addEntityRootNode

public void addEntityRootNode(org.json.JSONArray nodes,
                              it.eng.qbe.model.structure.IModelEntity entity,
                              int recursionLevel)
Adds the entity root node.

Parameters:
nodes - the nodes
entity - the entity
recursionLevel - the recursion level

getFieldNodes

public org.json.JSONArray getFieldNodes(it.eng.qbe.model.structure.IModelEntity entity,
                                        int recursionLevel)
Gets the field nodes.

Parameters:
entity - the entity
recursionLevel - the recursion level
Returns:
the field nodes

getFieldNode

public org.json.JSONObject getFieldNode(it.eng.qbe.model.structure.IModelEntity parentEntity,
                                        it.eng.qbe.model.structure.IModelField field)
Gets the field node.

Parameters:
parentEntity - the parent entity
field - the field
Returns:
the field node

getCalculatedFieldNode

public org.json.JSONObject getCalculatedFieldNode(it.eng.qbe.model.structure.IModelEntity parentEntity,
                                                  it.eng.qbe.model.structure.ModelCalculatedField field)

addCalculatedFieldNodes

public int addCalculatedFieldNodes(IQbeTree tree,
                                   it.eng.qbe.model.structure.IModelEntity entity,
                                   int parentEntityNodeId,
                                   int nodeCounter)
Add Calculate Fields on the entity Control recursion level because calculate field are applied only at entity level not in dimension level.

Parameters:
tree - the tree
parentEntityNodeId - the parent entity node id
nodeCounter - the node counter
entity - the entity
Returns:
the int

getSubEntitiesNodes

public org.json.JSONArray getSubEntitiesNodes(it.eng.qbe.model.structure.IModelEntity entity,
                                              org.json.JSONArray nodes,
                                              int recursionLevel)
Gets the sub entities nodes.

Parameters:
entity - the entity
nodes - the nodes
recursionLevel - the recursion level
Returns:
the sub entities nodes

getDataSource

protected it.eng.qbe.datasource.IDataSource getDataSource()
Gets the datamart model.

Returns:
the datamart model

setDatamartModel

protected void setDatamartModel(it.eng.qbe.datasource.IDataSource dataSource)
Sets the datamart model.

Parameters:
dataSource - the new datamart model

getLocale

public java.util.Locale getLocale()

setLocale

public void setLocale(java.util.Locale locale)