43 std::string
const & uid)
47 ERROR(
"Create Object: Was not possible to create object ",
48 "Abstract classes cannot hold objects", uid,
"for abstract class" , cn);
50 throw daq::dbe::ObjectChangeWasNotSuccessful(
ERS_HERE);
60 catch (dunedaq::conffwk::Exception
const & ex)
65 throw daq::dbe::ObjectChangeWasNotSuccessful(
ERS_HERE);
78template<
typename RESTYPE,
typename KEYTYPE = std::
string>
79using mapreader = std::function< RESTYPE (KEYTYPE
const &) >;
87 auto relreader = [&relations ]( std::string
const & name )
89 return relations.at(name);
92 auto attreader = [ & attributes ] ( std::string
const & name )
94 return attributes.at(name);
97 if (not newobj.is_null())
102 std::vector<dunedaq::conffwk::attribute_t> AttList = ClassInfo.
p_attributes;
103 std::vector<dunedaq::conffwk::relationship_t> RelList = ClassInfo.
p_relationships;
109 if(att.p_is_multi_value) {
313 catch (std::out_of_range
const & e)
323 auto data = relreader(rel.p_name);
326 catch (std::out_of_range
const & e)
344 catch (dunedaq::conffwk::Exception
const & ex)
347 todelete.
UID().c_str());
349 throw daq::dbe::ObjectChangeWasNotSuccessful(
ERS_HERE);
356 std::string
const & objectname)
366 catch (dunedaq::conffwk::NotFound
const & e)
370 catch (dunedaq::conffwk::Generic
const & e)
377 ERROR(
"Unknown exception caught",
"");
378 TLOG_DEBUG(3) <<
"Unknown exception caught!" ;
388 std::string
const & query)
390 std::vector<ConfigObject> objects;
397 catch (dunedaq::conffwk::NotFound
const & e)
401 catch (dunedaq::conffwk::Generic
const & e)
408 ERROR(
"Unknown exception caught",
"");
409 TLOG_DEBUG(3) <<
"Unknown exception caught!" ;
static dunedaq::conffwk::class_t definition(std::string const &cn, bool direct_only)
static tref set_object(tref newobj, dbe::t_config_object_preimage::type_attrmap const &attributes, dbe::t_config_object_preimage::type_relmap const &relations)
static void destroy_object(dunedaq::conffwk::ConfigObject &)
static dunedaq::conffwk::ConfigObject get_object(std::string const &, std::string const &)
static std::vector< dunedaq::conffwk::ConfigObject > query_class(std::string const &classname, std::string const &query)
static dunedaq::conffwk::ConfigObject create_object(std::string const &fn, std::string const &cn, std::string const &name)
static void rename_object(dunedaq::conffwk::ConfigObject &object, std::string const &newname)
static cptr< dunedaq::conffwk::Configuration > dbptr()
Represents database objects.
const std::string & UID() const noexcept
Return object identity.
void rename(const std::string &new_id)
Rename object.
#define TLOG_DEBUG(lvl,...)
void adate(inner::configobject::tref Object, dunedaq::conffwk::attribute_t const &AttributeData, T NewValueData, bool NotEmit=false)
void relation(dbe::inner::configobject::tref src, dunedaq::conffwk::relationship_t const &edge, std::vector< dbe::inner::configobject::tref > const &targets)
void aclass(inner::configobject::tref Object, dunedaq::conffwk::attribute_t const &AttributeData, T NewValueData, bool NotEmit=false)
void anenum(inner::configobject::tref Object, dunedaq::conffwk::attribute_t const &AttributeData, T NewValueData, bool NotEmit=false)
void atime(inner::configobject::tref Object, dunedaq::conffwk::attribute_t const &AttributeData, T NewValueData, bool NotEmit=false)
void attribute(inner::configobject::tref Object, dunedaq::conffwk::attribute_t const &AttributeData, T NewValueData, bool NotEmit=false)
std::function< RESTYPE(KEYTYPE const &) > mapreader
std::string const parse(ers::Issue const &)
int8_t to< int8_t >(QStringList const &DataList, dunedaq::conffwk::int_format_t Format)
u_int64_t to< u_int64_t >(QStringList const &DataList, dunedaq::conffwk::int_format_t Format)
int16_t to< int16_t >(QStringList const &DataList, dunedaq::conffwk::int_format_t Format)
u_int8_t to< u_int8_t >(QStringList const &DataList, dunedaq::conffwk::int_format_t Format)
int64_t to< int64_t >(QStringList const &DataList, dunedaq::conffwk::int_format_t Format)
T to(QStringList const &DataList)
QStringList to< QStringList >(std::vector< std::string > const &x)
std::string to< std::string >(QStringList const &DataList)
int32_t to< int32_t >(QStringList const &DataList, dunedaq::conffwk::int_format_t Format)
u_int32_t to< u_int32_t >(QStringList const &DataList, dunedaq::conffwk::int_format_t Format)
double to< double >(QStringList const &DataList, dunedaq::conffwk::int_format_t Format)
u_int16_t to< u_int16_t >(QStringList const &DataList, dunedaq::conffwk::int_format_t Format)
float to< float >(QStringList const &DataList, dunedaq::conffwk::int_format_t Format)
bool to< bool >(QStringList const &DataList, dunedaq::conffwk::int_format_t Format)
inner::configobject::tref tref
std::map< type_str, type_images > type_relmap
std::map< type_str, type_attributes > type_attrmap
const std::vector< attribute_t > p_attributes
const std::vector< relationship_t > p_relationships