org.teiid.query.tempdata
Class TempTableDataManager

java.lang.Object
  extended by org.teiid.query.tempdata.TempTableDataManager
All Implemented Interfaces:
ProcessorDataManager

public class TempTableDataManager
extends java.lang.Object
implements ProcessorDataManager

This proxy ProcessorDataManager is used to handle temporary tables. This isn't handled as a connector because of the temporary metadata and the create/drop handling (which doesn't have push down support)


Constructor Summary
TempTableDataManager(ProcessorDataManager processorDataManager, BufferManager bufferManager, java.util.concurrent.Executor executor, org.teiid.dqp.internal.process.SessionAwareCache<org.teiid.dqp.internal.process.CachedResults> cache, org.teiid.dqp.internal.process.SessionAwareCache<org.teiid.dqp.internal.process.CachedResults> distibutedCache, CacheFactory cacheFactory)
           
 
Method Summary
 EventDistributor getEventDistributor()
           
 MetadataRepository getMetadataRepository()
           
 java.lang.Object lookupCodeValue(CommandContext context, java.lang.String codeTableName, java.lang.String returnElementName, java.lang.String keyElementName, java.lang.Object keyValue)
          Lookup a value from a cached code table.
 TupleSource registerRequest(CommandContext context, Command command, java.lang.String modelName, java.lang.String connectorBindingId, int nodeID, int limit)
           
 void setEventDistributor(EventDistributor eventDistributor)
           
 java.util.List<?> updateMatViewRow(TempTableStore globalStore, java.lang.String matTableName, java.util.List<?> tuple, boolean delete)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TempTableDataManager

public TempTableDataManager(ProcessorDataManager processorDataManager,
                            BufferManager bufferManager,
                            java.util.concurrent.Executor executor,
                            org.teiid.dqp.internal.process.SessionAwareCache<org.teiid.dqp.internal.process.CachedResults> cache,
                            org.teiid.dqp.internal.process.SessionAwareCache<org.teiid.dqp.internal.process.CachedResults> distibutedCache,
                            CacheFactory cacheFactory)
Method Detail

setEventDistributor

public void setEventDistributor(EventDistributor eventDistributor)

registerRequest

public TupleSource registerRequest(CommandContext context,
                                   Command command,
                                   java.lang.String modelName,
                                   java.lang.String connectorBindingId,
                                   int nodeID,
                                   int limit)
                            throws TeiidComponentException,
                                   TeiidProcessingException
Specified by:
registerRequest in interface ProcessorDataManager
Throws:
TeiidComponentException
TeiidProcessingException

updateMatViewRow

public java.util.List<?> updateMatViewRow(TempTableStore globalStore,
                                          java.lang.String matTableName,
                                          java.util.List<?> tuple,
                                          boolean delete)
                                   throws QueryProcessingException,
                                          TeiidComponentException
Throws:
QueryProcessingException
TeiidComponentException

lookupCodeValue

public java.lang.Object lookupCodeValue(CommandContext context,
                                        java.lang.String codeTableName,
                                        java.lang.String returnElementName,
                                        java.lang.String keyElementName,
                                        java.lang.Object keyValue)
                                 throws BlockedException,
                                        TeiidComponentException,
                                        TeiidProcessingException
Description copied from interface: ProcessorDataManager
Lookup a value from a cached code table. If the code table is not loaded, it will be loaded on the first query. Code tables should be cached based on a combination of the codeTableName, returnElementName, and keyElementName. If the table is not loaded, a request will be made and the method should throw a BlockedException.

Specified by:
lookupCodeValue in interface ProcessorDataManager
Throws:
BlockedException
TeiidComponentException
TeiidProcessingException

getEventDistributor

public EventDistributor getEventDistributor()
Specified by:
getEventDistributor in interface ProcessorDataManager

getMetadataRepository

public MetadataRepository getMetadataRepository()
Specified by:
getMetadataRepository in interface ProcessorDataManager


Copyright © 2011. All Rights Reserved.