22 #define GAUDISVC_TAGCOLLECTIONSVC_CPP
73 status = INVALID_ROOT;
77 std::vector<Prop> props;
78 long loc = ident.find(
" ");
79 std::string filename, auth, svc =
"DbCnvSvc";
80 logname = ident.substr(0,loc);
81 tok.
analyse(ident.substr(loc+1,ident.length()),
" ",
"",
"",
"=",
"'",
"'");
82 for ( Tokenizer::Items::iterator
i = tok.
items().begin();
i != tok.
items().end();
i++) {
83 const std::string& tag = (*i).tag();
86 props.push_back(
Prop(
"Server", (*i).value()));
90 filename = (*i).value();
93 switch( ::
toupper((*i).value()[0]) ) {
96 case 'W': typ =
'N';
break;
97 case 'U': typ =
'U';
break;
100 switch( ::
toupper((*i).value()[2]) ) {
101 case 'C': typ =
'R';
break;
103 default: typ =
'O';
break;
106 default: typ = 0;
break;
111 case 'V': svc = (*i).value();
break;
113 switch(::
toupper((*i).value()[0])) {
115 props.push_back(
Prop(
"ShareFiles", (*i).value()));
122 switch(::
toupper((*i).value()[0])) {
124 svc =
"HbookCnv::ConvSvc";
127 props.push_back(
Prop(
"DbType", (*i).value()));
128 svc =
"PoolDbCnvSvc";
131 props.push_back(
Prop(
"DbType", (*i).value()));
137 props.push_back(
Prop((*i).tag(), (*i).value()));
154 log <<
MSG::ERROR <<
"Cannot add " << ident <<
" invalid filename!" <<
endmsg;
160 const std::string& typ,
161 const std::vector<Prop>& props,
163 using Gaudi::Utils::TypeNameString;
175 status = NO_INTERFACE;
177 for ( std::vector<Prop>::const_iterator j = props.begin(); j != props.end(); j++) {
178 iprop->setProperty(
StringProperty((*j).first, (*j).second)).ignore();
181 status = isvc->sysInitialize();