20#ifndef GEODE_POOLMANAGER_H_
21#define GEODE_POOLMANAGER_H_
26#include <unordered_map>
32#include "geode/HashMapOfPools.hpp"
33#include "internal/geode_base.hpp"
34#include "internal/geode_globals.hpp"
43class ThinClientPoolDM;
80 const HashMapOfPools&
getAll()
const;
89 std::shared_ptr<Pool>
find(
const std::string& name)
const;
98 std::shared_ptr<Pool>
find(
const std::shared_ptr<Region>& region)
const;
110 void removePool(
const std::string& name);
112 void addPool(std::string name,
const std::shared_ptr<Pool>& pool);
114 const std::shared_ptr<Pool>& getDefaultPool()
const;
116 std::shared_ptr<PoolManagerImpl> m_pimpl;
124 friend ThinClientPoolDM;
Caches are obtained from the create method on the CacheFactory#create class.
Definition: Cache.hpp:65
entry point for function execution
Definition: FunctionService.hpp:45
This interface provides for the configuration and creation of instances of Pool.
Definition: PoolFactory.hpp:68
Manages creation and access to connection pools for clients.
Definition: PoolManager.hpp:61
std::shared_ptr< Pool > find(const std::shared_ptr< Region > ®ion) const
Find the pool used by the given region.
std::shared_ptr< Pool > find(const std::string &name) const
Find by name an existing connection pool returning the existing pool or nullptr if it does not exist.
void close(bool keepAlive=false)
Unconditionally destroys all created pools that are in this manager.
PoolFactory createFactory() const
Creates a new pool factory, which is used to configure and create new Pools.
const HashMapOfPools & getAll() const
Returns a map containing all the pools in this manager.
Provides for the configuration and creation of instances of Region.
Definition: RegionFactory.hpp:43