identt
Public Member Functions | List of all members
identt::store::StoreBase Class Reference
Inheritance diagram for identt::store::StoreBase:
identt::store::AccessKeyService identt::store::BlobDataService identt::store::InviteService identt::store::LogReadService identt::store::LookupService identt::store::MailSmsService identt::store::PubKeyService identt::store::StoreCache identt::store::StoreLevel identt::store::StoreTrans identt::store::ThreePidService identt::store::ValidateService identt::work::WorkServer

Public Member Functions

std::string EncodeKeyType (KeyTypeE keytype)
 EncodeKeyType : make prefix key with keytype. More...
 
std::string EncodePrimaryKey (KeyTypeE keytype, ::google::protobuf::uint64 id)
 EncodePrimaryKey : make primary key with id only. More...
 
std::pair< KeyTypeE, uint64_t > DecodePrimaryKey (std::string &key)
 DecodePrimaryKey : get keytype and id from primary key. More...
 
template<typename T >
std::string EncodeSecondaryKey (KeyTypeE keytype, T key)
 EncodeSecondaryKey : make secondary key with one variable only. More...
 
template<typename T , typename U >
std::string EncodeSecondaryKey (KeyTypeE keytype, T key1, U key2)
 EncodeSecondaryKey : make secondary key with two variables. More...
 
template<typename T , typename U , typename V >
std::string EncodeSecondaryKey (KeyTypeE keytype, T key1, U key2, V key3)
 EncodeSecondaryKey : make secondary key with three variables. More...
 
template<>
std::string EncodeSecondaryKey (KeyTypeE keytype, uint64_t key)
 1 value More...
 
template<>
std::string EncodeSecondaryKey (KeyTypeE keytype, std::string key)
 EncodeSecondaryKey : make secondary key with std::string : always unique. More...
 
template<>
std::string EncodeSecondaryKey (KeyTypeE keytype, uint64_t key1, uint64_t key2)
 2 value More...
 
template<>
std::string EncodeSecondaryKey (KeyTypeE keytype, uint64_t key1, std::string key2)
 EncodeSecondaryKey : make secondary key with two keys uint64_t , std::string : always unique. More...
 
template<>
std::string EncodeSecondaryKey (KeyTypeE keytype, std::string key1, uint64_t key2)
 EncodeSecondaryKey : make secondary key with two keys std::string , uint64_t : always unique : s-u unique , s non unique. More...
 
template<>
std::string EncodeSecondaryKey (KeyTypeE keytype, std::string key1, std::string key2)
 EncodeSecondaryKey : make secondary key with two keys std::string , std::string : always unique. More...
 
template<>
std::string EncodeSecondaryKey (KeyTypeE keytype, uint64_t key1, int32_t key2)
 EncodeSecondaryKey : make secondary key with two keys uint64_t, int32_t : always unique. More...
 
template<>
std::string EncodeSecondaryKey (KeyTypeE keytype, uint64_t key1, uint64_t key2, uint64_t key3)
 3 value More...
 
template<>
std::string EncodeSecondaryKey (KeyTypeE keytype, uint64_t key1, uint64_t key2, std::string key3)
 EncodeSecondaryKey : make secondary key with three keys uint64_t , uint64_t , std::string : always unique. More...
 
template<>
std::string EncodeSecondaryKey (KeyTypeE keytype, uint64_t key1, std::string key2, uint64_t key3)
 EncodeSecondaryKey : make secondary key with three keys uint64_t , std::string , uint64_t : always unique : u-s-u unique , u-s non unique. More...
 
template<>
std::string EncodeSecondaryKey (KeyTypeE keytype, uint64_t key1, std::string key2, std::string key3)
 EncodeSecondaryKey : make secondary key with three keys uint64_t , std::string , std::string : always unique. More...
 
template<>
std::string EncodeSecondaryKey (KeyTypeE keytype, std::string key1, uint64_t key2, uint64_t key3)
 EncodeSecondaryKey : make secondary key with three keys std::string , uint64_t , uint64_t : s-u-u unique , s-u non unique. More...
 
template<>
std::string EncodeSecondaryKey (KeyTypeE keytype, std::string key1, uint64_t key2, std::string key3)
 EncodeSecondaryKey : make secondary key with three keys std::string , uint64_t , std::string : always unique. More...
 
template<>
std::string EncodeSecondaryKey (KeyTypeE keytype, std::string key1, std::string key2, uint64_t key3)
 EncodeSecondaryKey : make secondary key with three keys std::string , std::string , uint64_t : s-s-u unique , s-s non unique. More...
 
template<>
std::string EncodeSecondaryKey (KeyTypeE keytype, std::string key1, std::string key2, std::string key3)
 EncodeSecondaryKey : make secondary key with three keys std::string , std::string , std::string : always unique. More...
 

Member Function Documentation

§ DecodePrimaryKey()

std::pair< identt::store::KeyTypeE, uint64_t > identt::store::StoreBase::DecodePrimaryKey ( std::string &  key)

DecodePrimaryKey : get keytype and id from primary key.

Parameters
std::string&key
Returns
std::pair<KeyType,uint64_t> keytype, id

§ EncodeKeyType()

std::string identt::store::StoreBase::EncodeKeyType ( KeyTypeE  keytype)

EncodeKeyType : make prefix key with keytype.

Parameters
KeyTypeEkeytype
Returns
std::string Key

§ EncodePrimaryKey()

std::string identt::store::StoreBase::EncodePrimaryKey ( KeyTypeE  keytype,
::google::protobuf::uint64  id 
)

EncodePrimaryKey : make primary key with id only.

Parameters
KeyTypeEkeytype
::google::protobuf::uint64id
Returns
std::string Key

§ EncodeSecondaryKey() [1/18]

template<typename T >
std::string identt::store::StoreBase::EncodeSecondaryKey ( KeyTypeE  keytype,
key 
)

EncodeSecondaryKey : make secondary key with one variable only.

Parameters
KeyTypeEkeytype
Tkey
Returns
std::string Key

§ EncodeSecondaryKey() [2/18]

template<typename T , typename U >
std::string identt::store::StoreBase::EncodeSecondaryKey ( KeyTypeE  keytype,
key1,
key2 
)

EncodeSecondaryKey : make secondary key with two variables.

Parameters
KeyTypeEkeytype
Tkey1
Ukey2
Returns
std::string Key

§ EncodeSecondaryKey() [3/18]

template<typename T , typename U , typename V >
std::string identt::store::StoreBase::EncodeSecondaryKey ( KeyTypeE  keytype,
key1,
key2,
key3 
)

EncodeSecondaryKey : make secondary key with three variables.

Parameters
KeyTypeEkeytype
Tkey1
Ukey2
Vkey3
Returns
std::string Key

§ EncodeSecondaryKey() [4/18]

template<>
std::string identt::store::StoreBase::EncodeSecondaryKey ( KeyTypeE  keytype,
uint64_t  key 
)

1 value

EncodeSecondaryKey : make secondary key with uint64_t : always unique

§ EncodeSecondaryKey() [5/18]

template<>
std::string identt::store::StoreBase::EncodeSecondaryKey ( KeyTypeE  keytype,
std::string  key 
)

EncodeSecondaryKey : make secondary key with std::string : always unique.

§ EncodeSecondaryKey() [6/18]

template<>
std::string identt::store::StoreBase::EncodeSecondaryKey ( KeyTypeE  keytype,
uint64_t  key1,
uint64_t  key2 
)

2 value

EncodeSecondaryKey : make secondary key with two keys uint64_t , uint64_t : u-u unique , u non unique

§ EncodeSecondaryKey() [7/18]

template<>
std::string identt::store::StoreBase::EncodeSecondaryKey ( KeyTypeE  keytype,
uint64_t  key1,
std::string  key2 
)

EncodeSecondaryKey : make secondary key with two keys uint64_t , std::string : always unique.

§ EncodeSecondaryKey() [8/18]

template<>
std::string identt::store::StoreBase::EncodeSecondaryKey ( KeyTypeE  keytype,
std::string  key1,
uint64_t  key2 
)

EncodeSecondaryKey : make secondary key with two keys std::string , uint64_t : always unique : s-u unique , s non unique.

§ EncodeSecondaryKey() [9/18]

template<>
std::string identt::store::StoreBase::EncodeSecondaryKey ( KeyTypeE  keytype,
std::string  key1,
std::string  key2 
)

EncodeSecondaryKey : make secondary key with two keys std::string , std::string : always unique.

§ EncodeSecondaryKey() [10/18]

template<>
std::string identt::store::StoreBase::EncodeSecondaryKey ( KeyTypeE  keytype,
uint64_t  key1,
int32_t  key2 
)

EncodeSecondaryKey : make secondary key with two keys uint64_t, int32_t : always unique.

§ EncodeSecondaryKey() [11/18]

template<>
std::string identt::store::StoreBase::EncodeSecondaryKey ( KeyTypeE  keytype,
uint64_t  key1,
uint64_t  key2,
uint64_t  key3 
)

3 value

EncodeSecondaryKey : make secondary key with three keys uint64_t , uint64_t , uint64_t : u-u-u unique , u-u non unique

§ EncodeSecondaryKey() [12/18]

template<>
std::string identt::store::StoreBase::EncodeSecondaryKey ( KeyTypeE  keytype,
uint64_t  key1,
uint64_t  key2,
std::string  key3 
)

EncodeSecondaryKey : make secondary key with three keys uint64_t , uint64_t , std::string : always unique.

§ EncodeSecondaryKey() [13/18]

template<>
std::string identt::store::StoreBase::EncodeSecondaryKey ( KeyTypeE  keytype,
uint64_t  key1,
std::string  key2,
uint64_t  key3 
)

EncodeSecondaryKey : make secondary key with three keys uint64_t , std::string , uint64_t : always unique : u-s-u unique , u-s non unique.

§ EncodeSecondaryKey() [14/18]

template<>
std::string identt::store::StoreBase::EncodeSecondaryKey ( KeyTypeE  keytype,
uint64_t  key1,
std::string  key2,
std::string  key3 
)

EncodeSecondaryKey : make secondary key with three keys uint64_t , std::string , std::string : always unique.

§ EncodeSecondaryKey() [15/18]

template<>
std::string identt::store::StoreBase::EncodeSecondaryKey ( KeyTypeE  keytype,
std::string  key1,
uint64_t  key2,
uint64_t  key3 
)

EncodeSecondaryKey : make secondary key with three keys std::string , uint64_t , uint64_t : s-u-u unique , s-u non unique.

§ EncodeSecondaryKey() [16/18]

template<>
std::string identt::store::StoreBase::EncodeSecondaryKey ( KeyTypeE  keytype,
std::string  key1,
uint64_t  key2,
std::string  key3 
)

EncodeSecondaryKey : make secondary key with three keys std::string , uint64_t , std::string : always unique.

§ EncodeSecondaryKey() [17/18]

template<>
std::string identt::store::StoreBase::EncodeSecondaryKey ( KeyTypeE  keytype,
std::string  key1,
std::string  key2,
uint64_t  key3 
)

EncodeSecondaryKey : make secondary key with three keys std::string , std::string , uint64_t : s-s-u unique , s-s non unique.

§ EncodeSecondaryKey() [18/18]

template<>
std::string identt::store::StoreBase::EncodeSecondaryKey ( KeyTypeE  keytype,
std::string  key1,
std::string  key2,
std::string  key3 
)

EncodeSecondaryKey : make secondary key with three keys std::string , std::string , std::string : always unique.


The documentation for this class was generated from the following files: