pool::PersistencySvc::TechnologyDispatcher Node1 pool::PersistencySvc ::TechnologyDispatcher + TechnologyDispatcher() + ~TechnologyDispatcher() + microSessionManager() + microSessionManager() + microSessionManager() + microSessionManager() + disconnectAll() Node2 pool::PersistencySvc ::DatabaseRegistry + DatabaseRegistry() + ~DatabaseRegistry() + registerDatabaseHandler() + registerDatabaseHandler() + deregisterDatabaseHandler() + lookupByFID() + lookupByPFN() + lookupByLFN() + begin() + begin() + end() + end() + size() - registerDbHandler() Node2->Node1 -m_registry Node17 pool::PersistencySvc ::MicroSessionManager - m_session + MicroSessionManager() + ~MicroSessionManager() + connect() + disconnect() + disconnectAll() + technology() + fidForPfn() # attributeOfType() # setAttributeOfType() Node2->Node17 -m_registry Node3 std::map< std::string, pool::PersistencySvc ::DatabaseHandler * > Node3->Node2 -m_pfnToDb -m_fidToDb -m_lfnToDb Node12 std::map< std::string, std::set< std::string > > Node12->Node2 -m_fidToLfns Node14 std::set< pool::Persistency Svc::DatabaseHandler * > Node14->Node2 -m_databases Node14->Node17 -m_databaseHandlers Node15 pool::ITransaction + start() + commit() + commitAndHold() + rollback() + isActive() + update() + type() # ~ITransaction() Node15->Node1 -m_transaction Node15->Node17 -m_transaction Node16 std::map< long, pool ::PersistencySvc::MicroSession Manager * > Node16->Node1 -m_technologyTypes Node17->Node16 +elements Node19 std::map< std::string, pool::PersistencySvc ::MicroSessionManager * > Node17->Node19 +elements Node11 long Node11->Node16 +keys Node11->Node17 -m_technology Node19->Node1 -m_technologyNames