Logo
Reference manual - version ored_version
BasicReferenceDataManager Class Reference

Basic Concrete impl that loads an big XML and keeps data in memory. More...

#include <ored/portfolio/referencedata.hpp>

Inheritance diagram for BasicReferenceDataManager:

Public Member Functions

 BasicReferenceDataManager (const string &filename)
void appendData (const string &filename)
QuantLib::ext::shared_ptr< ReferenceDatumbuildReferenceDatum (const string &refDataType)
void fromXML (XMLNode *node) override
XMLNode * toXML (ore::data::XMLDocument &doc) const override
void clear ()
bool hasData (const string &type, const string &id, const QuantLib::Date &asof=QuantLib::Null< QuantLib::Date >()) override
QuantLib::ext::shared_ptr< ReferenceDatumgetData (const string &type, const string &id, const QuantLib::Date &asof=QuantLib::Null< QuantLib::Date >()) override
void add (const QuantLib::ext::shared_ptr< ReferenceDatum > &referenceDatum) override
QuantLib::ext::shared_ptr< ReferenceDatumaddFromXMLNode (XMLNode *node, const std::string &id=std::string(), const QuantLib::Date &validFrom=QuantLib::Null< QuantLib::Date >())
Public Member Functions inherited from XMLSerializable
void fromFile (const std::string &filename)
void toFile (const std::string &filename) const
void fromXMLString (const std::string &xml)
 Parse from XML string.
std::string toXMLString () const
 Parse from XML string.
std::string toXMLStringUnformatted () const

Protected Member Functions

std::tuple< QuantLib::Date, QuantLib::ext::shared_ptr< ReferenceDatum > > latestValidFrom (const string &type, const string &id, const QuantLib::Date &asof) const
void check (const string &type, const string &id, const QuantLib::Date &asof) const

Protected Attributes

map< std::pair< string, string >, std::map< QuantLib::Date, QuantLib::ext::shared_ptr< ReferenceDatum > > > data_
std::set< std::tuple< string, string, QuantLib::Date > > duplicates_
map< std::pair< string, string >, std::map< QuantLib::Date, string > > buildErrors_

Detailed Description

Basic Concrete impl that loads an big XML and keeps data in memory.

Member Function Documentation

◆ fromXML()

void fromXML ( XMLNode * node)
overridevirtual

Implements XMLSerializable.

◆ toXML()

XMLNode * toXML ( ore::data::XMLDocument & doc) const
overridevirtual

Implements XMLSerializable.

◆ hasData()

bool hasData ( const string & type,
const string & id,
const QuantLib::Date & asof = QuantLib::Null< QuantLib::Date >() )
overridevirtual

Implements ReferenceDataManager.

◆ getData()

QuantLib::ext::shared_ptr< ReferenceDatum > getData ( const string & type,
const string & id,
const QuantLib::Date & asof = QuantLib::Null< QuantLib::Date >() )
overridevirtual

Implements ReferenceDataManager.

◆ add()

void add ( const QuantLib::ext::shared_ptr< ReferenceDatum > & referenceDatum)
overridevirtual

Implements ReferenceDataManager.