68 LDEBUG <<
"EventTemplateDefinitionResource::init() for language " << (int)m_language;
74 LDEBUG <<
"Template name ="<< name;
78 LERROR <<
"No param 'templateName' in EventTemplateDefinitionResource for language " << (int)m_language;
84 LDEBUG <<
"Template mention ="<< nameMention;
89 LERROR <<
"No param 'templateMention' in EventTemplateDefinitionResource for language " << (int)m_language;
96 map<string,string> elts = unitConfiguration.
getMapAtKey(
"templateElements");
97 LDEBUG <<
"templateElements .size " << elts.size();
98 for(
auto it=elts.begin(),it_end=elts.end();it!=it_end;it++) {
99 LDEBUG <<
"templateElement =" << (*it).first;
104 LERROR <<
"No map 'templateElements' in EventTemplateDefinition for language " << (int)m_language;
110 map<string,string> elts = unitConfiguration.
getMapAtKey(
"cardinalities");
111 LDEBUG <<
"cardinalities .size " << elts.size();
112 for(
auto it=elts.begin(),it_end = elts.end();it!=it_end;it++) {
113 LDEBUG <<
"templateElement =" << (*it).first;
114 m_cardinalities[(*it).first]=stoi((*it).second);
122 if (m_cardinalities.find(it.first)==m_cardinalities.end()) {
123 m_cardinalities[it.first]=1;
129 LDEBUG <<
"get elementMapping for template merging";
132 map<string,string> mapping = unitConfiguration.
getMapAtKey(
"elementMapping");
133 LDEBUG <<
"elementMapping .size" << mapping.size();
134 for(
auto it=mapping.cbegin(),it_end=mapping.cend();it!=it_end;it++) {
135 const std::string& elements=(*it).second;
137 boost::char_separator<char> sep(
",; ");
138 boost::tokenizer<boost::char_separator<char> > tok(elements,sep);
139 for(
auto e=tok.begin(),e_end=tok.end(); e!=e_end;e++) {
140 LDEBUG <<
"EventTemplateDefinitionResource: add mapping "
141 << (*it).first <<
":" << *e;
142 m_elementMapping[(*it).first].insert(*e);
147 LDEBUG <<
"No param 'elementMapping' in EventTemplateDefinition for language "
151 LDEBUG <<
"EventTemplateDefinitionResource::init() Done";
155existsMapping(
const std::string& eltName1,
const std::string& eltName2)
const
158 map<string,set<string> >::const_iterator it=m_elementMapping.find(eltName1);
159 if (it!=m_elementMapping.end()) {
160 if ( (*it).second.find(eltName2) != (*it).second.end() ) {
166 map<string,set<string> >::const_iterator it=m_elementMapping.find(eltName2);
167 if (it!=m_elementMapping.end()) {
168 if ( (*it).second.find(eltName1) != (*it).second.end() ) {