CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Protected Member Functions | Static Protected Member Functions | Private Member Functions | Private Attributes
edm::eventsetup::NoDataExceptionBase Class Reference

#include <NoDataException.h>

Inheritance diagram for edm::eventsetup::NoDataExceptionBase:
cms::Exception edm::eventsetup::NoDataException< T > edm::eventsetup::NoProxyException< T >

Public Member Functions

const DataKeydataKey () const
 
 NoDataExceptionBase (const EventSetupRecordKey &iRecordKey, const DataKey &iDataKey, const char *category_name="NoDataException")
 
virtual ~NoDataExceptionBase () throw ()
 
- Public Member Functions inherited from cms::Exception
void append (Exception const &another)
 
void append (std::string const &more_information)
 
void append (char const *more_information)
 
std::string category () const
 
 Exception (Category const &category)
 
 Exception (Category const &category, std::string const &message)
 
 Exception (Category const &category, std::string const &message, Exception const &another)
 
 Exception (Exception const &other)
 
virtual std::string explainSelf () const
 
CategoryList const & history () const
 
void raise ()
 
std::string rootCause () const
 
virtual char const * what () const throw ()
 
virtual ~Exception () throw ()
 

Protected Member Functions

void constructMessage (const char *iClassName, const std::string &iExtraInfo)
 

Static Protected Member Functions

static std::string noProxyMessage ()
 
static std::string providerButNoDataMessage (const EventSetupRecordKey &iKey)
 

Private Member Functions

void beginDataTypeMessage (std::string &) const
 
void endDataTypeMessage (std::string &) const
 

Private Attributes

DataKey dataKey_
 
EventSetupRecordKey record_
 

Additional Inherited Members

- Public Types inherited from cms::Exception
typedef std::string Category
 
typedef std::list< CategoryCategoryList
 

Detailed Description

Definition at line 78 of file NoDataException.h.

Constructor & Destructor Documentation

edm::eventsetup::NoDataExceptionBase::NoDataExceptionBase ( const EventSetupRecordKey iRecordKey,
const DataKey iDataKey,
const char *  category_name = "NoDataException" 
)

Definition at line 6 of file NoDataException.cc.

8  :
9  cms::Exception(category_name),
10  record_(iRecordKey),
11  dataKey_(iDataKey)
12  {
13  }
edm::eventsetup::NoDataExceptionBase::~NoDataExceptionBase ( )
throw (
)
virtual

Definition at line 15 of file NoDataException.cc.

15 {}

Member Function Documentation

void edm::eventsetup::NoDataExceptionBase::beginDataTypeMessage ( std::string &  oString) const
private

Definition at line 29 of file NoDataException.cc.

Referenced by constructMessage().

30  {
31  oString+= std::string("No data of type \"");
32  }
void edm::eventsetup::NoDataExceptionBase::constructMessage ( const char *  iClassName,
const std::string &  iExtraInfo 
)
protected

Definition at line 43 of file NoDataException.cc.

References cms::Exception::append(), beginDataTypeMessage(), endDataTypeMessage(), and argparse::message.

Referenced by edm::eventsetup::NoDataException< T >::NoDataException().

44  {
45  std::string message;
46  beginDataTypeMessage(message);
47  message += iClassName;
48  endDataTypeMessage(message);
49  this->append(message+std::string("\n "));
50  this->append(iExtraInfo);
51  }
void append(Exception const &another)
Definition: Exception.cc:82
void beginDataTypeMessage(std::string &) const
string message
Definition: argparse.py:126
void endDataTypeMessage(std::string &) const
const DataKey & edm::eventsetup::NoDataExceptionBase::dataKey ( ) const

Definition at line 17 of file NoDataException.cc.

References dataKey_.

void edm::eventsetup::NoDataExceptionBase::endDataTypeMessage ( std::string &  oString) const
private

Definition at line 34 of file NoDataException.cc.

References dataKey_, edm::eventsetup::EventSetupRecordKey::name(), edm::eventsetup::DataKey::name(), record_, and edm::eventsetup::SimpleStringTag::value().

Referenced by constructMessage().

35  {
36  oString += "\" with label \"";
37  oString += this->dataKey_.name().value();
38  oString += "\" in record \"";
39  oString += this->record_.name();
40  oString += "\"";
41  }
const NameTag & name() const
Definition: DataKey.h:67
const char * value() const
Definition: DataKeyTags.h:40
std::string edm::eventsetup::NoDataExceptionBase::noProxyMessage ( )
staticprotected

Definition at line 25 of file NoDataException.cc.

25  {
26  return std::string("Please add an ESSource or ESProducer to your job which can deliver this data.\n");
27  }
std::string edm::eventsetup::NoDataExceptionBase::providerButNoDataMessage ( const EventSetupRecordKey iKey)
staticprotected

Definition at line 19 of file NoDataException.cc.

References edm::eventsetup::EventSetupRecordKey::name().

Referenced by edm::eventsetup::NoDataException< T >::NoDataException().

19  {
20  return std::string(" A provider for this data exists, but it's unable to deliver the data for this \"")
21  +iKey.name()
22  +"\" record.\n Perhaps no valid data exists for this IOV? Please check the data's interval of validity.\n";
23  }

Member Data Documentation

DataKey edm::eventsetup::NoDataExceptionBase::dataKey_
private

Definition at line 100 of file NoDataException.h.

Referenced by dataKey(), and endDataTypeMessage().

EventSetupRecordKey edm::eventsetup::NoDataExceptionBase::record_
private

Definition at line 99 of file NoDataException.h.

Referenced by endDataTypeMessage().