Definition at line 16 of file OraPtrStreamer.cc.
bool ora::OraPtrReadBuffer::build |
( |
DataElement & |
dataElement | ) |
|
|
inline |
Definition at line 31 of file OraPtrStreamer.cc.
References ora::SelectOperation::addWhereId(), ora::DataElement::clear(), ora::MappingElement::columnNames(), edm::TypeWithDict::cppName(), ora::MappingElement::end(), ora::MappingElement::find(), i, m_dataElement, m_localElement, m_mapping, m_objectType, m_query, m_reader, m_schema, edm::TypeWithDict::name(), ora::RelationalStreamerFactory::newReader(), ora::ClassUtils::resolvedType(), AlCaHLTBitMon_QueryRunRegistry::string, edm::TypeWithDict::templateArgumentAt(), and ora::throwException().
Referenced by psClasses.BuildThread::run().
36 size_t cols = columns.size();
37 for(
size_t i=0;
i<cols;
i++ ){
45 if ( ! ptrType || !ptrResolvedType ) {
46 throwException(
"Missing dictionary information for the type of the pointer \"" +
48 "OraPtrReadBuffer::build" );
55 throwException(
"Item for \"" + ptrTypeName +
"\" not found in the mapping element",
56 "OraPtrReadBuffer::build" );
58 RelationalStreamerFactory streamerFactory(
m_schema );
59 m_reader.reset( streamerFactory.newReader( ptrResolvedType, iMe->second ) );
edm::TypeWithDict resolvedType(const edm::TypeWithDict &typ)
DataElement * m_dataElement
std::auto_ptr< IRelationalReader > m_reader
int addWhereId(const std::string &columnName)
TypeWithDict templateArgumentAt(size_t index) const
DataElement m_localElement
std::string cppName() const
iterator find(const std::string &key)
Retrieves a sub-element.
std::map< std::string, MappingElement >::iterator iterator
Iterator definition.
const std::vector< std::string > & columnNames() const
void throwException(const std::string &message, const std::string &methodName) __attribute__((noreturn))
iterator end()
Returns an iterator in the end of the sequence.
edm::TypeWithDict m_objectType
MappingElement & m_mapping
ContainerSchema & m_schema