48 std::string
const & uid)
52 ERROR(
"Create Object: Was not possible to create object ",
53 "Abstract classes cannot hold objects", uid,
"for abstract class" , cn);
55 throw daq::dbe::ObjectChangeWasNotSuccessful(
ERS_HERE);
65 catch (dunedaq::conffwk::Exception
const & ex)
70 throw daq::dbe::ObjectChangeWasNotSuccessful(
ERS_HERE);
83template<
typename RESTYPE,
typename KEYTYPE = std::
string>
84using mapreader = std::function< RESTYPE (KEYTYPE
const &) >;
92 auto relreader = [&relations ]( std::string
const & name )
94 return relations.at(name);
97 auto attreader = [ & attributes ] ( std::string
const & name )
99 return attributes.at(name);
102 if (not newobj.is_null())
107 std::vector<dunedaq::conffwk::attribute_t> AttList = ClassInfo.
p_attributes;
108 std::vector<dunedaq::conffwk::relationship_t> RelList = ClassInfo.
p_relationships;
114 if(att.p_is_multi_value) {
318 catch (std::out_of_range
const & e)
328 auto data = relreader(rel.p_name);
331 catch (std::out_of_range
const & e)
349 catch (dunedaq::conffwk::Exception
const & ex)
352 todelete.
UID().c_str());
354 throw daq::dbe::ObjectChangeWasNotSuccessful(
ERS_HERE);
361 std::string
const & objectname)
371 catch (dunedaq::conffwk::NotFound
const & e)
375 catch (dunedaq::conffwk::Generic
const & e)
382 ERROR(
"Unknown exception caught",
"");
383 TLOG_DEBUG(3) <<
"Unknown exception caught!" ;
393 std::string
const & query)
395 std::vector<ConfigObject> objects;
402 catch (dunedaq::conffwk::NotFound
const & e)
406 catch (dunedaq::conffwk::Generic
const & e)
413 ERROR(
"Unknown exception caught",
"");
414 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