projects
/
metaproxy-moved-to-github.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
added explain xslt stylesheet
[metaproxy-moved-to-github.git]
/
src
/
filter_virt_db.cpp
diff --git
a/src/filter_virt_db.cpp
b/src/filter_virt_db.cpp
index
250d395
..
b671793
100644
(file)
--- a/
src/filter_virt_db.cpp
+++ b/
src/filter_virt_db.cpp
@@
-1,4
+1,4
@@
-/* $Id: filter_virt_db.cpp,v 1.51 2007-05-09 21:23:09 adam Exp $
+/* $Id: filter_virt_db.cpp,v 1.53 2007-11-26 21:45:08 adam Exp $
Copyright (c) 2005-2007, Index Data.
This file is part of Metaproxy.
Copyright (c) 2005-2007, Index Data.
This file is part of Metaproxy.
@@
-18,7
+18,7
@@
along with Metaproxy; see the file LICENSE. If not, write to the
Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA.
*/
Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA.
*/
-/* $Id: filter_virt_db.cpp,v 1.51 2007-05-09 21:23:09 adam Exp $
+/* $Id: filter_virt_db.cpp,v 1.53 2007-11-26 21:45:08 adam Exp $
Copyright (c) 2005-2007, Index Data.
See the LICENSE file for details
Copyright (c) 2005-2007, Index Data.
See the LICENSE file for details
@@
-160,8
+160,13
@@
yf::VirtualDB::BackendPtr yf::VirtualDB::Frontend::create_backend_from_databases
}
std::list<std::string>::const_iterator t_it =
map_it->second.m_targets.begin();
}
std::list<std::string>::const_iterator t_it =
map_it->second.m_targets.begin();
- for (; t_it != map_it->second.m_targets.end(); t_it++)
- targets_dedup[*t_it] = true;
+ for (; t_it != map_it->second.m_targets.end(); t_it++) {
+ if (!targets_dedup[*t_it])
+ {
+ targets_dedup[*t_it] = true;
+ b->m_targets.push_back(*t_it);
+ }
+ }
// see if we have a route conflict.
if (!first_route && b->m_route != map_it->second.m_route)
// see if we have a route conflict.
if (!first_route && b->m_route != map_it->second.m_route)
@@
-174,10
+179,6
@@
yf::VirtualDB::BackendPtr yf::VirtualDB::Frontend::create_backend_from_databases
b->m_route = map_it->second.m_route;
first_route = false;
}
b->m_route = map_it->second.m_route;
first_route = false;
}
- std::map<std::string,bool>::const_iterator tm_it = targets_dedup.begin();
- for (; tm_it != targets_dedup.end(); tm_it++)
- b->m_targets.push_back(tm_it->first);
-
return b;
}
return b;
}
@@
-498,7
+499,8
@@
void yf::VirtualDB::Frontend::fixup_npr_record(ODR odr, Z_NamePlusRecord *npr,
{
// see which target it corresponds to.. (if any)
std::map<std::string,VirtualDB::Map>::const_iterator map_it;
{
// see which target it corresponds to.. (if any)
std::map<std::string,VirtualDB::Map>::const_iterator map_it;
- map_it = m_p->m_maps.find(*db_it);
+
+ map_it = m_p->m_maps.find(mp::util::database_name_normalize(*db_it));
if (map_it != m_p->m_maps.end())
{
VirtualDB::Map m = map_it->second;
if (map_it != m_p->m_maps.end())
{
VirtualDB::Map m = map_it->second;