#include <ObjectStreamer.h>
Public Member Functions | |
bool | build (DataElement &dataElement, IRelationalData &relationalData, RelationalBuffer &operationBuffer) |
ObjectWriter (const Reflex::Type &objectType, MappingElement &mapping, ContainerSchema &contSchema) | |
void | processDataMember (DataElement &dataElement, IRelationalData &relationalData, Reflex::Type &dataMemberType, MappingElement &dataMemberMapping, RelationalBuffer *operationBuffer) |
void | setRecordId (const std::vector< int > &identity) |
void | write (int oid, const void *data) |
Writes a data element. | |
virtual | ~ObjectWriter () |
Private Attributes | |
std::vector< IRelationalWriter * > | m_writers |
Definition at line 29 of file ObjectStreamer.h.
ora::ObjectWriter::ObjectWriter | ( | const Reflex::Type & | objectType, |
MappingElement & | mapping, | ||
ContainerSchema & | contSchema | ||
) |
Definition at line 109 of file ObjectStreamer.cc.
: ObjectStreamerBase( objectType, mapping, contSchema ), m_writers(){ }
ora::ObjectWriter::~ObjectWriter | ( | ) | [virtual] |
Definition at line 116 of file ObjectStreamer.cc.
bool ora::ObjectWriter::build | ( | DataElement & | dataElement, |
IRelationalData & | relationalData, | ||
RelationalBuffer & | operationBuffer | ||
) | [virtual] |
Implements ora::IRelationalWriter.
Definition at line 124 of file ObjectStreamer.cc.
{ return buildDataMembers( dataElement, relationalData, &operationBuffer ); }
void ora::ObjectWriter::processDataMember | ( | DataElement & | dataElement, |
IRelationalData & | relationalData, | ||
Reflex::Type & | dataMemberType, | ||
MappingElement & | dataMemberMapping, | ||
RelationalBuffer * | operationBuffer | ||
) | [virtual] |
Implements ora::ObjectStreamerBase.
Definition at line 146 of file ObjectStreamer.cc.
References ora::IRelationalWriter::build().
{ IRelationalWriter* dataMemberWriter = m_streamerFactory.newWriter( dataMemberType, dataMemberMapping ); m_writers.push_back( dataMemberWriter ); dataMemberWriter->build( dataMemberElement, relationalData, *operationBuffer ); }
void ora::ObjectWriter::setRecordId | ( | const std::vector< int > & | identity | ) | [virtual] |
Implements ora::IRelationalWriter.
Definition at line 130 of file ObjectStreamer.cc.
void ora::ObjectWriter::write | ( | int | oid, |
const void * | data | ||
) | [virtual] |
Writes a data element.
Implements ora::IRelationalWriter.
Definition at line 138 of file ObjectStreamer.cc.
std::vector< IRelationalWriter* > ora::ObjectWriter::m_writers [private] |
Definition at line 50 of file ObjectStreamer.h.