Package org.teiid.olingo.service
Class DocumentNode
- java.lang.Object
-
- org.teiid.olingo.service.DocumentNode
-
- Direct Known Subclasses:
ApplyDocumentNode,ComplexDocumentNode,CrossJoinNode,ExpandDocumentNode,NoDocumentNode
public class DocumentNode extends Object
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interfaceDocumentNode.ContextColumnstatic classDocumentNode.TableContextColumn
-
Field Summary
Fields Modifier and Type Field Description protected LinkedHashMap<org.teiid.query.sql.symbol.Expression,ProjectedColumn>projectedColumnsprotected LinkedHashMap<String,ProjectedColumn>projectedColumnsByName
-
Constructor Summary
Constructors Constructor Description DocumentNode()DocumentNode(org.teiid.metadata.Table table, org.teiid.query.sql.symbol.GroupSymbol gs, org.apache.olingo.commons.api.edm.EdmEntityType type)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected voidaddAllColumns(boolean onlyPK)protected voidaddColumns(org.teiid.query.sql.lang.Select select, AtomicInteger ordinal, List<ProjectedColumn> projected)voidaddCriteria(org.teiid.query.sql.symbol.Expression filter)voidaddExpand(ExpandDocumentNode resource)protected voidaddProjectedColumn(String columnName, org.teiid.query.sql.symbol.Expression expr)protected ProjectedColumnaddProjectedColumn(org.teiid.query.sql.symbol.Expression expr, org.apache.olingo.commons.api.edm.EdmType type, org.apache.olingo.commons.api.edm.EdmProperty property, boolean collection)voidaddSibling(DocumentNode resource)static DocumentNodebuild(org.apache.olingo.commons.api.edm.EdmEntityType type, List<org.apache.olingo.server.api.uri.UriParameter> keyPredicates, org.teiid.metadata.MetadataStore metadata, org.apache.olingo.server.api.OData odata, org.teiid.olingo.service.TeiidServiceHandler.UniqueNameGenerator nameGenerator, boolean useAlias, org.apache.olingo.server.api.uri.UriInfo uriInfo, org.teiid.olingo.service.ODataSQLBuilder.URLParseService parseService)static DocumentNodebuild(DocumentNode resource, org.apache.olingo.commons.api.edm.EdmEntityType type, List<org.apache.olingo.server.api.uri.UriParameter> keyPredicates, org.teiid.metadata.MetadataStore metadata, org.apache.olingo.server.api.OData odata, org.teiid.olingo.service.TeiidServiceHandler.UniqueNameGenerator nameGenerator, boolean useAlias, org.apache.olingo.server.api.uri.UriInfo uriInfo, org.teiid.olingo.service.ODataSQLBuilder.URLParseService parseService)org.teiid.query.sql.lang.QuerybuildQuery()List<ProjectedColumn>getAllProjectedColumns()DocumentNode.ContextColumngetColumnByName(String name)org.teiid.query.sql.lang.CriteriagetCriteria()org.apache.olingo.commons.api.edm.EdmStructuredTypegetEdmStructuredType()List<ExpandDocumentNode>getExpands()org.teiid.query.sql.lang.FromClausegetFromClause()StringgetFullName()org.teiid.query.sql.symbol.GroupSymbolgetGroupSymbol()DocumentNodegetIterator()List<String>getKeyColumnNames()List<org.apache.olingo.server.api.uri.UriParameter>getKeyPredicates()StringgetName()LinkedHashMap<org.teiid.query.sql.symbol.Expression,ProjectedColumn>getProjectedColumns()List<DocumentNode>getSiblings()voidsetCriteria(org.teiid.query.sql.lang.Criteria criteria)voidsetEdmStructuredType(org.apache.olingo.commons.api.edm.EdmStructuredType edmStructuredType)voidsetFromClause(org.teiid.query.sql.lang.FromClause fromClause)voidsetGroupSymbol(org.teiid.query.sql.symbol.GroupSymbol groupSymbol)voidsetIterator(DocumentNode itResource)voidsetKeyPredicates(List<org.apache.olingo.server.api.uri.UriParameter> keyPredicates)voidsetTable(org.teiid.metadata.Table table)protected List<ProjectedColumn>sortColumns(Collection<ProjectedColumn> toSort)StringtoString()
-
-
-
Field Detail
-
projectedColumns
protected LinkedHashMap<org.teiid.query.sql.symbol.Expression,ProjectedColumn> projectedColumns
-
projectedColumnsByName
protected LinkedHashMap<String,ProjectedColumn> projectedColumnsByName
-
-
Method Detail
-
build
public static DocumentNode build(org.apache.olingo.commons.api.edm.EdmEntityType type, List<org.apache.olingo.server.api.uri.UriParameter> keyPredicates, org.teiid.metadata.MetadataStore metadata, org.apache.olingo.server.api.OData odata, org.teiid.olingo.service.TeiidServiceHandler.UniqueNameGenerator nameGenerator, boolean useAlias, org.apache.olingo.server.api.uri.UriInfo uriInfo, org.teiid.olingo.service.ODataSQLBuilder.URLParseService parseService) throws org.teiid.core.TeiidException
- Throws:
org.teiid.core.TeiidException
-
build
public static DocumentNode build(DocumentNode resource, org.apache.olingo.commons.api.edm.EdmEntityType type, List<org.apache.olingo.server.api.uri.UriParameter> keyPredicates, org.teiid.metadata.MetadataStore metadata, org.apache.olingo.server.api.OData odata, org.teiid.olingo.service.TeiidServiceHandler.UniqueNameGenerator nameGenerator, boolean useAlias, org.apache.olingo.server.api.uri.UriInfo uriInfo, org.teiid.olingo.service.ODataSQLBuilder.URLParseService parseService) throws org.teiid.core.TeiidException
- Throws:
org.teiid.core.TeiidException
-
getName
public String getName()
-
getColumnByName
public DocumentNode.ContextColumn getColumnByName(String name)
-
getFullName
public String getFullName()
-
getGroupSymbol
public org.teiid.query.sql.symbol.GroupSymbol getGroupSymbol()
-
getEdmStructuredType
public org.apache.olingo.commons.api.edm.EdmStructuredType getEdmStructuredType()
-
getFromClause
public org.teiid.query.sql.lang.FromClause getFromClause()
-
setFromClause
public void setFromClause(org.teiid.query.sql.lang.FromClause fromClause)
-
getCriteria
public org.teiid.query.sql.lang.Criteria getCriteria()
-
setCriteria
public void setCriteria(org.teiid.query.sql.lang.Criteria criteria)
-
setTable
public void setTable(org.teiid.metadata.Table table)
-
setGroupSymbol
public void setGroupSymbol(org.teiid.query.sql.symbol.GroupSymbol groupSymbol)
-
setEdmStructuredType
public void setEdmStructuredType(org.apache.olingo.commons.api.edm.EdmStructuredType edmStructuredType)
-
addAllColumns
protected void addAllColumns(boolean onlyPK)
-
addProjectedColumn
protected void addProjectedColumn(String columnName, org.teiid.query.sql.symbol.Expression expr)
-
addProjectedColumn
protected ProjectedColumn addProjectedColumn(org.teiid.query.sql.symbol.Expression expr, org.apache.olingo.commons.api.edm.EdmType type, org.apache.olingo.commons.api.edm.EdmProperty property, boolean collection)
-
getProjectedColumns
public LinkedHashMap<org.teiid.query.sql.symbol.Expression,ProjectedColumn> getProjectedColumns()
-
getAllProjectedColumns
public List<ProjectedColumn> getAllProjectedColumns()
-
getKeyPredicates
public List<org.apache.olingo.server.api.uri.UriParameter> getKeyPredicates()
-
setKeyPredicates
public void setKeyPredicates(List<org.apache.olingo.server.api.uri.UriParameter> keyPredicates)
-
addSibling
public void addSibling(DocumentNode resource)
-
getSiblings
public List<DocumentNode> getSiblings()
-
addExpand
public void addExpand(ExpandDocumentNode resource)
-
getExpands
public List<ExpandDocumentNode> getExpands()
-
buildQuery
public org.teiid.query.sql.lang.Query buildQuery()
-
sortColumns
protected List<ProjectedColumn> sortColumns(Collection<ProjectedColumn> toSort)
-
addColumns
protected void addColumns(org.teiid.query.sql.lang.Select select, AtomicInteger ordinal, List<ProjectedColumn> projected)
-
addCriteria
public void addCriteria(org.teiid.query.sql.symbol.Expression filter)
-
setIterator
public void setIterator(DocumentNode itResource)
-
getIterator
public DocumentNode getIterator()
-
-