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::OraTagTable Class Reference

#include <OraDbSchema.h>

Inheritance diagram for cond::persistency::OraTagTable:
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)
 
 OraTagTable (IOVCache &cache)
 
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 ()
 
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 ~OraTagTable ()
 
- Public Member Functions inherited from cond::persistency::ITagTable
virtual ~ITagTable ()
 

Private Attributes

IOVCachem_cache
 

Detailed Description

Definition at line 41 of file OraDbSchema.h.

Constructor & Destructor Documentation

cond::persistency::OraTagTable::OraTagTable ( IOVCache cache)
explicit

Definition at line 63 of file OraDbSchema.cc.

63  :
64  m_cache( cache ){
65  }
virtual cond::persistency::OraTagTable::~OraTagTable ( )
inlinevirtual

Definition at line 44 of file OraDbSchema.h.

44 {}

Member Function Documentation

void cond::persistency::OraTagTable::create ( )
inlinevirtual

Implements cond::persistency::ITagTable.

Definition at line 48 of file OraDbSchema.h.

48  {
49  }
bool cond::persistency::OraTagTable::exists ( )
inlinevirtual

Implements cond::persistency::ITagTable.

Definition at line 45 of file OraDbSchema.h.

45  {
46  return true;
47  }
bool cond::persistency::OraTagTable::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 87 of file OraDbSchema.cc.

References cond::IOVProxy::comment(), cond::persistency::IOVCache::iovSequence(), cond::persistency::IOVCache::load(), m_cache, cond::IOVProxy::timestamp(), and cond::time::to_boost().

88  {
89  if(!m_cache.load( name )) return false;
91  modificationTime = cond::time::to_boost( m_cache.iovSequence().timestamp() );
92  // TO DO: get insertion time from the Logger?
93  return true;
94  }
cond::IOVProxy iovSequence()
Definition: OraDbSchema.cc:25
bool load(const std::string &tag)
Definition: OraDbSchema.cc:56
tuple description
Definition: idDealer.py:66
cond::Time_t timestamp() const
Definition: IOVProxy.cc:308
std::string comment() const
Definition: IOVProxy.cc:299
boost::posix_time::ptime to_boost(Time_t iValue)
void cond::persistency::OraTagTable::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 96 of file OraDbSchema.cc.

References cond::persistency::IOVCache::addTag(), cond::IOVEditor::create(), cond::persistency::IOVCache::editor(), m_cache, cond::IOVEditor::stamp(), AlCaHLTBitMon_QueryRunRegistry::string, results_mgr::tok, and cond::persistency::IOVCache::validationMode().

Referenced by BeautifulSoup.PageElement::_invert().

98  {
99  std::string tok = m_cache.editor().create( timeType, endOfValidity );
100  if( !m_cache.validationMode() ){
102  }
103  m_cache.addTag( name, tok );
104  }
std::string create(cond::TimeType timetype)
Definition: IOVEditor.cc:260
cond::IOVEditor editor()
Definition: OraDbSchema.cc:29
void addTag(const std::string &tag, const std::string token)
Definition: OraDbSchema.cc:47
tuple description
Definition: idDealer.py:66
void stamp(std::string const &icomment, bool append=false)
Definition: IOVEditor.cc:375
bool cond::persistency::OraTagTable::select ( const std::string &  name)
virtual
bool cond::persistency::OraTagTable::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 71 of file OraDbSchema.cc.

References cond::IOVRange::back(), cond::DbSession::classNameForItem(), cond::IOVProxy::comment(), cond::IOVRange::front(), cond::IOVProxy::head(), cond::persistency::IOVCache::iovSequence(), cond::IOVProxy::lastTill(), cond::persistency::IOVCache::load(), m_cache, cond::persistency::IOVCache::session(), cond::IOVElementProxy::since(), cond::IOVProxy::size(), AlCaHLTBitMon_QueryRunRegistry::string, cond::IOVProxy::tail(), cond::IOVProxy::timetype(), and cond::IOVElementProxy::token().

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().

73  {
74  if(!m_cache.load( name )) return false;
75  if( m_cache.iovSequence().size()==0 ) return false;
76  timeType = m_cache.iovSequence().timetype();
78  objectType = m_cache.session().classNameForItem( ptok );
79  //if( m_cache.iovSequence().payloadClasses().size()==0 ) throwException( "No payload type information found.","OraTagTable::select");
80  //objectType = *m_cache.iovSequence().payloadClasses().begin();
81  endOfValidity = m_cache.iovSequence().lastTill();
83  lastValidatedTime = m_cache.iovSequence().tail(1).back().since();
84  return true;
85  }
std::string classNameForItem(const std::string &objectId)
Definition: DbSession.cc:292
cond::DbSession & session()
Definition: OraDbSchema.cc:21
IOVRange head(int n) const
Definition: IOVProxy.cc:256
IOVElementProxy front() const
Definition: IOVProxy.cc:155
IOVRange tail(int n) const
Definition: IOVProxy.cc:260
cond::IOVProxy iovSequence()
Definition: OraDbSchema.cc:25
cond::Time_t lastTill() const
Definition: IOVProxy.cc:289
std::string const & token() const
Definition: IOVProxy.h:75
int size() const
Definition: IOVProxy.cc:272
bool load(const std::string &tag)
Definition: OraDbSchema.cc:56
tuple description
Definition: idDealer.py:66
cond::Time_t since() const
Definition: IOVProxy.h:67
TimeType timetype() const
Definition: IOVProxy.cc:281
std::string comment() const
Definition: IOVProxy.cc:299
IOVElementProxy back() const
Definition: IOVProxy.cc:160
void cond::persistency::OraTagTable::setValidationMode ( )
virtual
void cond::persistency::OraTagTable::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 106 of file OraDbSchema.cc.

References cond::persistency::IOVCache::editor(), cond::persistency::IOVCache::getToken(), cond::IOVEditor::load(), m_cache, cond::IOVEditor::stamp(), AlCaHLTBitMon_QueryRunRegistry::string, cond::persistency::throwException(), results_mgr::tok, cond::IOVEditor::updateClosure(), and cond::persistency::IOVCache::validationMode().

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().

107  {
108 
110  if( tok.empty() ) throwException( "Tag \""+name+"\" has not been found in the database.","OraTagTable::update");
111  m_cache.editor().load( tok );
112  m_cache.editor().updateClosure( endOfValidity );
114  }
std::string getToken(const std::string &tag)
Definition: OraDbSchema.cc:38
void load(const std::string &token)
Definition: IOVEditor.cc:202
cond::IOVEditor editor()
Definition: OraDbSchema.cc:29
tuple description
Definition: idDealer.py:66
void updateClosure(cond::Time_t newtillTime)
Update the closure of the iov sequence.
Definition: IOVEditor.cc:405
void stamp(std::string const &icomment, bool append=false)
Definition: IOVEditor.cc:375
void throwException(const std::string &message, const std::string &methodName)
Definition: Exception.cc:11
void cond::persistency::OraTagTable::updateValidity ( const std::string &  name,
cond::Time_t  lastValidatedTime,
const boost::posix_time::ptime &  updateTime 
)
virtual

Implements cond::persistency::ITagTable.

Definition at line 116 of file OraDbSchema.cc.

117  {
118  // can't be done in this case...
119  }

Member Data Documentation

IOVCache& cond::persistency::OraTagTable::m_cache
private

Definition at line 65 of file OraDbSchema.h.

Referenced by getMetadata(), insert(), select(), setValidationMode(), and update().