1#if !defined(RESIP_ABSTRACTDB_HXX)
2#define RESIP_ABSTRACTDB_HXX
12 class TransactionUser;
128 virtual bool isAuthorized(
const std::set<resip::Data>& peerNames,
const std::set<resip::Data>& identities)
const;
211 bool first=
false) = 0;
222 bool first=
false) = 0;
resip::Data mCondition1Header
resip::Data mCondition2Regex
resip::Data mCondition2Header
resip::Data mCondition1Regex
resip::Data mRewriteExpression
resip::Data mMatchingPattern
uint64_t mOriginalSentTime
resip::Data authorizedIdentity
resip::Data forwardAddress
resip::Data passwordHashAlt
std::vector< RouteRecord > RouteRecordList
virtual bool dbNextRecord(const Table table, const resip::Data &key, resip::Data &data, bool forUpdate, bool first=false)=0
virtual bool addToSilo(const Key &key, const SiloRecord &rec)
virtual bool addTlsPeerIdentity(const Key &key, const TlsPeerIdentityRecord &rec)
virtual ConfigRecord getConfig(const Key &key) const
std::vector< ConfigRecord > ConfigRecordList
virtual Key nextStaticRegKey()
virtual Key nextTlsPeerIdentityKey()
virtual Key firstConfigKey()
virtual bool dbCommitTransaction(const Table table)=0
virtual resip::Data dbNextKey(const Table table, bool first=false)=0
virtual void decodeSiloRecord(resip::Data &data, SiloRecord &rec)
virtual void eraseStaticReg(const Key &key)
virtual RouteRecord getRoute(const Key &key) const
virtual Key firstAclKey()
virtual resip::Data dbFirstKey(const Table table)
virtual void cleanupExpiredSiloRecords(uint64_t now, unsigned long expirationTime)
virtual AclRecord getAcl(const Key &key) const
virtual Key firstStaticRegKey()
std::vector< SiloRecord > SiloRecordList
virtual bool addAcl(const Key &key, const AclRecord &rec)
virtual bool addStaticReg(const Key &key, const StaticRegRecord &rec)
virtual void eraseSiloRecord(const Key &key)
virtual bool dbFirstRecord(const Table table, const resip::Data &key, resip::Data &data, bool forUpdate)
virtual FilterRecordList getAllFilters()
virtual void eraseTlsPeerIdentity(const Key &key)
virtual StaticRegRecord getStaticReg(const Key &key) const
virtual Key nextFilterKey()
virtual void eraseRoute(const Key &key)
virtual Key firstRouteKey()
virtual AclRecordList getAllAcls()
virtual Key nextUserKey()
std::vector< StaticRegRecord > StaticRegRecordList
virtual Key nextRouteKey()
virtual bool dbWriteRecord(const Table table, const resip::Data &key, const resip::Data &data)=0
virtual RouteRecordList getAllRoutes()
virtual bool addFilter(const Key &key, const FilterRecord &rec)
virtual Key firstUserKey()
virtual void eraseUser(const Key &key)
virtual bool isAuthorized(const std::set< resip::Data > &peerNames, const std::set< resip::Data > &identities) const
virtual void eraseAcl(const Key &key)
std::vector< FilterRecord > FilterRecordList
virtual Key firstTlsPeerIdentityKey()
virtual void eraseFilter(const Key &key)
virtual StaticRegRecordList getAllStaticRegs()
virtual void encodeRoute(const RouteRecord &rec, resip::Data &buffer)
virtual ConfigRecordList getAllConfigs()
virtual resip::Data getUserAuthInfo(const Key &key) const
virtual bool dbReadRecord(const Table table, const resip::Data &key, resip::Data &data) const =0
return false if not found
virtual void encodeFilter(const FilterRecord &rec, resip::Data &buffer)
virtual bool getSiloRecords(const Key &skey, SiloRecordList &recordList)
virtual void eraseConfig(const Key &key)
virtual bool dbBeginTransaction(const Table table)=0
virtual FilterRecord getFilter(const Key &key) const
virtual bool addUser(const Key &key, const UserRecord &rec)
virtual bool addRoute(const Key &key, const RouteRecord &rec)
virtual Key nextConfigKey()
virtual Key firstFilterKey()
virtual bool addConfig(const Key &key, const ConfigRecord &rec)
virtual UserRecord getUser(const Key &key) const
virtual void dbEraseRecord(const Table table, const resip::Data &key, bool isSecondaryKey=false)=0
virtual TlsPeerIdentityRecord getTlsPeerIdentity(const Key &key) const
virtual bool dbRollbackTransaction(const Table table)=0
virtual void encodeUser(const UserRecord &rec, resip::Data &buffer)
std::vector< AclRecord > AclRecordList
virtual int getSecondaryKey(const Table table, const Key &key, const resip::Data &data, void **secondaryKey, unsigned int *secondaryKeyLen)
An alternative to std::string, encapsulates an arbitrary buffer of bytes.
This Class is used to implement a primitive form of RPC using loose XML formatting.
dcm! – add UnusedChecking(_enum) below;
unsigned __int64 uint64_t