CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
cond::persistency::TAG::Table Class Reference

#include <IOVSchema.h>

Inheritance diagram for cond::persistency::TAG::Table:
cond::persistency::ITagTable

Public Member Functions

void create ()
 
bool exists ()
 
bool getMetadata (const std::string &name, std::string &description, boost::posix_time::ptime &insertionTime, boost::posix_time::ptime &modificationTime)
 
void insert (const std::string &name, cond::TimeType timeType, const std::string &objectType, cond::SynchronizationType synchronizationType, cond::Time_t endOfValidity, const std::string &description, cond::Time_t lastValidatedTime, const boost::posix_time::ptime &insertionTime)
 
bool select (const std::string &name)
 
bool select (const std::string &name, cond::TimeType &timeType, std::string &objectType, cond::SynchronizationType &synchronizationType, cond::Time_t &endOfValidity, std::string &description, cond::Time_t &lastValidatedTime)
 
void setValidationMode ()
 
 Table (coral::ISchema &schema)
 
void update (const std::string &name, cond::Time_t &endOfValidity, const std::string &description, cond::Time_t lastValidatedTime, const boost::posix_time::ptime &updateTime)
 
void updateValidity (const std::string &name, cond::Time_t lastValidatedTime, const boost::posix_time::ptime &updateTime)
 
virtual ~Table ()
 
- Public Member Functions inherited from cond::persistency::ITagTable
virtual ~ITagTable ()
 

Private Attributes

coral::ISchema & m_schema
 

Detailed Description

Definition at line 25 of file IOVSchema.h.

Constructor & Destructor Documentation

cond::persistency::TAG::Table::Table ( coral::ISchema &  schema)
explicit

Definition at line 35 of file IOVSchema.cc.

35  :
36  m_schema( schema ){
37  }
coral::ISchema & m_schema
Definition: IOVSchema.h:44
virtual cond::persistency::TAG::Table::~Table ( )
inlinevirtual

Definition at line 28 of file IOVSchema.h.

28 {}

Member Function Documentation

void cond::persistency::TAG::Table::create ( )
virtual

Implements cond::persistency::ITagTable.

Definition at line 43 of file IOVSchema.cc.

References cond::persistency::TableDescription< Types >::get(), cond::persistency::TableDescription< Types >::setPrimaryKey(), cond::persistency::throwException(), and cond::persistency::TAG::tname.

Referenced by cond::persistency::IOVSchema::create().

43  {
44  if( exists() ){
45  throwException( "TAG table already exists in this schema.",
46  "TAG::Table::create");
47  }
48  TableDescription< NAME, TIME_TYPE, OBJECT_TYPE, SYNCHRONIZATION, END_OF_VALIDITY, DESCRIPTION, LAST_VALIDATED_TIME, INSERTION_TIME, MODIFICATION_TIME > descr( tname );
49  descr.setPrimaryKey<NAME>();
50  createTable( m_schema, descr.get() );
51  }
coral::ISchema & m_schema
Definition: IOVSchema.h:44
static char const * tname
Definition: IOVSchema.h:13
void throwException(const std::string &message, const std::string &methodName)
Definition: Exception.cc:11
bool cond::persistency::TAG::Table::exists ( )
virtual
bool cond::persistency::TAG::Table::getMetadata ( const std::string &  name,
std::string &  description,
boost::posix_time::ptime &  insertionTime,
boost::posix_time::ptime &  modificationTime 
)
virtual

Implements cond::persistency::ITagTable.

Definition at line 75 of file IOVSchema.cc.

References cond::persistency::Query< Types >::addCondition(), mergeVDriftHistosByStation::name, and lumiQueryAPI::q.

78  {
79  Query< DESCRIPTION, INSERTION_TIME, MODIFICATION_TIME > q( m_schema );
80  q.addCondition<NAME>( name );
81  for ( auto row : q ) std::tie( description, insertionTime, modificationTime ) = row;
82  return q.retrievedRows();
83  }
coral::ISchema & m_schema
Definition: IOVSchema.h:44
tuple description
Definition: idDealer.py:66
void cond::persistency::TAG::Table::insert ( const std::string &  name,
cond::TimeType  timeType,
const std::string &  objectType,
cond::SynchronizationType  synchronizationType,
cond::Time_t  endOfValidity,
const std::string &  description,
cond::Time_t  lastValidatedTime,
const boost::posix_time::ptime &  insertionTime 
)
virtual

Implements cond::persistency::ITagTable.

Definition at line 85 of file IOVSchema.cc.

References cond::persistency::RowBuffer< Columns >::get(), and cond::persistency::TAG::tname.

Referenced by BeautifulSoup.PageElement::_invert().

92  {
93  RowBuffer< NAME, TIME_TYPE, OBJECT_TYPE, SYNCHRONIZATION, END_OF_VALIDITY, DESCRIPTION, LAST_VALIDATED_TIME, INSERTION_TIME, MODIFICATION_TIME >
94  dataToInsert( std::tie( name, timeType, objectType, synchronizationType, endOfValidity, description, lastValidatedTime, insertionTime, insertionTime ) );
95  insertInTable( m_schema, tname, dataToInsert.get() );
96  }
coral::ISchema & m_schema
Definition: IOVSchema.h:44
static char const * tname
Definition: IOVSchema.h:13
tuple description
Definition: idDealer.py:66
bool cond::persistency::TAG::Table::select ( const std::string &  name)
virtual
bool cond::persistency::TAG::Table::select ( const std::string &  name,
cond::TimeType timeType,
std::string &  objectType,
cond::SynchronizationType synchronizationType,
cond::Time_t endOfValidity,
std::string &  description,
cond::Time_t lastValidatedTime 
)
virtual

Implements cond::persistency::ITagTable.

Definition at line 61 of file IOVSchema.cc.

References cond::persistency::Query< Types >::addCondition(), mergeVDriftHistosByStation::name, and lumiQueryAPI::q.

Referenced by Vispa.Views.LineDecayView.LineDecayContainer::createObject(), Vispa.Plugins.Browser.BrowserTabController.BrowserTabController::find(), Vispa.Views.LineDecayView.LineDecayContainer::mousePressEvent(), Vispa.Gui.PortConnection.PointToPointConnection::mousePressEvent(), Vispa.Gui.VispaWidget.VispaWidget::mousePressEvent(), and Vispa.Views.AbstractView.AbstractView::restoreSelection().

67  {
68  Query< TIME_TYPE, OBJECT_TYPE, SYNCHRONIZATION, END_OF_VALIDITY, DESCRIPTION, LAST_VALIDATED_TIME > q( m_schema );
69  q.addCondition<NAME>( name );
70  for ( auto row : q ) std::tie( timeType, objectType, synchronizationType, endOfValidity, description, lastValidatedTime ) = row;
71 
72  return q.retrievedRows();
73  }
coral::ISchema & m_schema
Definition: IOVSchema.h:44
tuple description
Definition: idDealer.py:66
void cond::persistency::TAG::Table::setValidationMode ( )
inlinevirtual

Implements cond::persistency::ITagTable.

Definition at line 42 of file IOVSchema.h.

42 {}
void cond::persistency::TAG::Table::update ( const std::string &  name,
cond::Time_t endOfValidity,
const std::string &  description,
cond::Time_t  lastValidatedTime,
const boost::posix_time::ptime &  updateTime 
)
virtual

Implements cond::persistency::ITagTable.

Definition at line 98 of file IOVSchema.cc.

References cond::persistency::UpdateBuffer::addWhereCondition(), mergeVDriftHistosByStation::name, cond::persistency::UpdateBuffer::setColumnData(), and cond::persistency::TAG::tname.

Referenced by progressbar.ProgressBar::__next__(), MatrixUtil.Matrix::__setitem__(), MatrixUtil.Steps::__setitem__(), python.seqvaluedict.seqdict::__setslice__(), Vispa.Gui.VispaWidget.VispaWidget::autosize(), Vispa.Views.LineDecayView.LineDecayContainer::createObject(), Vispa.Views.LineDecayView.LineDecayContainer::deselectAllObjects(), Vispa.Gui.VispaWidgetOwner.VispaWidgetOwner::deselectAllWidgets(), Vispa.Gui.VispaWidget.VispaWidget::enableAutosizing(), python.seqvaluedict.seqdict::extend(), progressbar.ProgressBar::finish(), Vispa.Gui.MenuWidget.MenuWidget::leaveEvent(), Vispa.Gui.VispaWidgetOwner.VispaWidgetOwner::mouseMoveEvent(), Vispa.Gui.MenuWidget.MenuWidget::mouseMoveEvent(), Vispa.Views.LineDecayView.LineDecayContainer::mouseMoveEvent(), Vispa.Gui.VispaWidgetOwner.VispaWidgetOwner::mouseReleaseEvent(), Vispa.Views.LineDecayView.LineDecayContainer::objectMoved(), MatrixUtil.Steps::overwrite(), Vispa.Views.LineDecayView.LineDecayContainer::removeObject(), Vispa.Gui.ConnectableWidget.ConnectableWidget::removePorts(), Vispa.Gui.FindDialog.FindDialog::reset(), Vispa.Gui.PortConnection.PointToPointConnection::select(), Vispa.Gui.VispaWidget.VispaWidget::select(), Vispa.Views.LineDecayView.LineDecayContainer::select(), Vispa.Gui.VispaWidget.VispaWidget::setText(), Vispa.Gui.VispaWidget.VispaWidget::setTitle(), Vispa.Gui.ZoomableWidget.ZoomableWidget::setZoom(), Vispa.Views.LineDecayView.LineDecayContainer::setZoom(), and Vispa.Gui.PortConnection.PointToPointConnection::updateConnection().

102  {
103  UpdateBuffer buffer;
104  buffer.setColumnData< END_OF_VALIDITY, DESCRIPTION, LAST_VALIDATED_TIME, MODIFICATION_TIME >( std::tie( endOfValidity, description, lastValidatedTime, updateTime ) );
105  buffer.addWhereCondition<NAME>( name );
106  updateTable( m_schema, tname, buffer );
107  }
coral::ISchema & m_schema
Definition: IOVSchema.h:44
static char const * tname
Definition: IOVSchema.h:13
tuple description
Definition: idDealer.py:66
void cond::persistency::TAG::Table::updateValidity ( const std::string &  name,
cond::Time_t  lastValidatedTime,
const boost::posix_time::ptime &  updateTime 
)
virtual

Implements cond::persistency::ITagTable.

Definition at line 109 of file IOVSchema.cc.

References cond::persistency::UpdateBuffer::addWhereCondition(), mergeVDriftHistosByStation::name, cond::persistency::UpdateBuffer::setColumnData(), and cond::persistency::TAG::tname.

111  {
112  UpdateBuffer buffer;
113  buffer.setColumnData< LAST_VALIDATED_TIME, MODIFICATION_TIME >( std::tie( lastValidatedTime, updateTime ) );
114  buffer.addWhereCondition<NAME>( name );
115  updateTable( m_schema, tname, buffer );
116  }
coral::ISchema & m_schema
Definition: IOVSchema.h:44
static char const * tname
Definition: IOVSchema.h:13

Member Data Documentation

coral::ISchema& cond::persistency::TAG::Table::m_schema
private

Definition at line 44 of file IOVSchema.h.