org.teiid.dqp.internal.process
Class Request

java.lang.Object
  extended by org.teiid.dqp.internal.process.Request
All Implemented Interfaces:
SecurityFunctionEvaluator
Direct Known Subclasses:
PreparedStatementRequest

public class Request
extends java.lang.Object
implements SecurityFunctionEvaluator

Server side representation of the RequestMessage. Knows how to process itself.


Field Summary
protected  boolean addedLimit
           
protected  AnalysisRecord analysisRecord
           
protected  CapabilitiesFinder capabilitiesFinder
           
protected  ConnectorManagerRepository connectorManagerRepo
           
protected  CommandContext context
           
protected  IDGenerator idGenerator
           
protected  QueryMetadataInterface metadata
           
protected  QueryProcessor processor
           
protected  ProcessorPlan processPlan
           
protected  RequestMessage requestMsg
           
protected  boolean returnsUpdateCount
           
protected  TransactionContext transactionContext
           
protected  Command userCommand
           
 
Fields inherited from interface org.teiid.query.eval.SecurityFunctionEvaluator
DATA_ROLE
 
Constructor Summary
Request()
           
 
Method Summary
protected  void checkReferences(java.util.List<Reference> references)
           
protected  void createCommandContext(Command command)
           
static ParseInfo createParseInfo(RequestMessage requestMsg)
           
protected  void generatePlan()
          state side effects: creates the analysis record creates the command context sets the pre-rewrite command on the request adds a limit clause if the row limit is specified sets the processor plan
 boolean hasRole(java.lang.String roleType, java.lang.String roleName)
           
protected  void initMetadata()
          if the metadata has not been supplied via setMetadata, this method will create the appropriate state
 void processRequest()
           
protected  void resolveCommand(Command command)
           
 void setAuthorizationValidator(AuthorizationValidator authorizationValidator)
           
 void setResultSetCacheEnabled(boolean resultSetCacheEnabled)
           
 void setUserRequestConcurrency(int userRequestConcurrency)
           
protected  void validateAccess(Command command)
           
static void validateWithVisitor(AbstractValidationVisitor visitor, QueryMetadataInterface metadata, Command command)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

requestMsg

protected RequestMessage requestMsg

idGenerator

protected IDGenerator idGenerator

capabilitiesFinder

protected CapabilitiesFinder capabilitiesFinder

metadata

protected QueryMetadataInterface metadata

addedLimit

protected boolean addedLimit

processPlan

protected ProcessorPlan processPlan

analysisRecord

protected AnalysisRecord analysisRecord

context

protected CommandContext context

processor

protected QueryProcessor processor

transactionContext

protected TransactionContext transactionContext

connectorManagerRepo

protected ConnectorManagerRepository connectorManagerRepo

userCommand

protected Command userCommand

returnsUpdateCount

protected boolean returnsUpdateCount
Constructor Detail

Request

public Request()
Method Detail

setResultSetCacheEnabled

public void setResultSetCacheEnabled(boolean resultSetCacheEnabled)

setAuthorizationValidator

public void setAuthorizationValidator(AuthorizationValidator authorizationValidator)

initMetadata

protected void initMetadata()
                     throws TeiidComponentException
if the metadata has not been supplied via setMetadata, this method will create the appropriate state

Throws:
TeiidComponentException

createCommandContext

protected void createCommandContext(Command command)
                             throws QueryValidatorException
Throws:
QueryValidatorException

hasRole

public boolean hasRole(java.lang.String roleType,
                       java.lang.String roleName)
                throws TeiidComponentException
Specified by:
hasRole in interface SecurityFunctionEvaluator
Throws:
TeiidComponentException

setUserRequestConcurrency

public void setUserRequestConcurrency(int userRequestConcurrency)

checkReferences

protected void checkReferences(java.util.List<Reference> references)
                        throws QueryValidatorException
Throws:
QueryValidatorException

resolveCommand

protected void resolveCommand(Command command)
                       throws QueryResolverException,
                              TeiidComponentException
Throws:
QueryResolverException
TeiidComponentException

createParseInfo

public static ParseInfo createParseInfo(RequestMessage requestMsg)

validateWithVisitor

public static void validateWithVisitor(AbstractValidationVisitor visitor,
                                       QueryMetadataInterface metadata,
                                       Command command)
                                throws QueryValidatorException,
                                       TeiidComponentException
Throws:
QueryValidatorException
TeiidComponentException

generatePlan

protected void generatePlan()
                     throws TeiidComponentException,
                            TeiidProcessingException
state side effects: creates the analysis record creates the command context sets the pre-rewrite command on the request adds a limit clause if the row limit is specified sets the processor plan

Throws:
TeiidComponentException
TeiidProcessingException

processRequest

public void processRequest()
                    throws TeiidComponentException,
                           TeiidProcessingException
Throws:
TeiidComponentException
TeiidProcessingException

validateAccess

protected void validateAccess(Command command)
                       throws QueryValidatorException,
                              TeiidComponentException
Throws:
QueryValidatorException
TeiidComponentException


Copyright © 2011. All Rights Reserved.