Merge pull request #2830 from matrix-org/rav/factor_out_get_conn
Factor out get_db_conn to HomeServer base classpull/2829/head
						commit
						4b0f06e99c
					
				|  | @ -49,19 +49,6 @@ class AppserviceSlaveStore( | |||
| 
 | ||||
| 
 | ||||
| class AppserviceServer(HomeServer): | ||||
|     def get_db_conn(self, run_new_connection=True): | ||||
|         # Any param beginning with cp_ is a parameter for adbapi, and should | ||||
|         # not be passed to the database engine. | ||||
|         db_params = { | ||||
|             k: v for k, v in self.db_config.get("args", {}).items() | ||||
|             if not k.startswith("cp_") | ||||
|         } | ||||
|         db_conn = self.database_engine.module.connect(**db_params) | ||||
| 
 | ||||
|         if run_new_connection: | ||||
|             self.database_engine.on_new_connection(db_conn) | ||||
|         return db_conn | ||||
| 
 | ||||
|     def setup(self): | ||||
|         logger.info("Setting up.") | ||||
|         self.datastore = AppserviceSlaveStore(self.get_db_conn(), self) | ||||
|  |  | |||
|  | @ -64,19 +64,6 @@ class ClientReaderSlavedStore( | |||
| 
 | ||||
| 
 | ||||
| class ClientReaderServer(HomeServer): | ||||
|     def get_db_conn(self, run_new_connection=True): | ||||
|         # Any param beginning with cp_ is a parameter for adbapi, and should | ||||
|         # not be passed to the database engine. | ||||
|         db_params = { | ||||
|             k: v for k, v in self.db_config.get("args", {}).items() | ||||
|             if not k.startswith("cp_") | ||||
|         } | ||||
|         db_conn = self.database_engine.module.connect(**db_params) | ||||
| 
 | ||||
|         if run_new_connection: | ||||
|             self.database_engine.on_new_connection(db_conn) | ||||
|         return db_conn | ||||
| 
 | ||||
|     def setup(self): | ||||
|         logger.info("Setting up.") | ||||
|         self.datastore = ClientReaderSlavedStore(self.get_db_conn(), self) | ||||
|  |  | |||
|  | @ -58,19 +58,6 @@ class FederationReaderSlavedStore( | |||
| 
 | ||||
| 
 | ||||
| class FederationReaderServer(HomeServer): | ||||
|     def get_db_conn(self, run_new_connection=True): | ||||
|         # Any param beginning with cp_ is a parameter for adbapi, and should | ||||
|         # not be passed to the database engine. | ||||
|         db_params = { | ||||
|             k: v for k, v in self.db_config.get("args", {}).items() | ||||
|             if not k.startswith("cp_") | ||||
|         } | ||||
|         db_conn = self.database_engine.module.connect(**db_params) | ||||
| 
 | ||||
|         if run_new_connection: | ||||
|             self.database_engine.on_new_connection(db_conn) | ||||
|         return db_conn | ||||
| 
 | ||||
|     def setup(self): | ||||
|         logger.info("Setting up.") | ||||
|         self.datastore = FederationReaderSlavedStore(self.get_db_conn(), self) | ||||
|  |  | |||
|  | @ -76,19 +76,6 @@ class FederationSenderSlaveStore( | |||
| 
 | ||||
| 
 | ||||
| class FederationSenderServer(HomeServer): | ||||
|     def get_db_conn(self, run_new_connection=True): | ||||
|         # Any param beginning with cp_ is a parameter for adbapi, and should | ||||
|         # not be passed to the database engine. | ||||
|         db_params = { | ||||
|             k: v for k, v in self.db_config.get("args", {}).items() | ||||
|             if not k.startswith("cp_") | ||||
|         } | ||||
|         db_conn = self.database_engine.module.connect(**db_params) | ||||
| 
 | ||||
|         if run_new_connection: | ||||
|             self.database_engine.on_new_connection(db_conn) | ||||
|         return db_conn | ||||
| 
 | ||||
|     def setup(self): | ||||
|         logger.info("Setting up.") | ||||
|         self.datastore = FederationSenderSlaveStore(self.get_db_conn(), self) | ||||
|  |  | |||
|  | @ -118,19 +118,6 @@ class FrontendProxySlavedStore( | |||
| 
 | ||||
| 
 | ||||
| class FrontendProxyServer(HomeServer): | ||||
|     def get_db_conn(self, run_new_connection=True): | ||||
|         # Any param beginning with cp_ is a parameter for adbapi, and should | ||||
|         # not be passed to the database engine. | ||||
|         db_params = { | ||||
|             k: v for k, v in self.db_config.get("args", {}).items() | ||||
|             if not k.startswith("cp_") | ||||
|         } | ||||
|         db_conn = self.database_engine.module.connect(**db_params) | ||||
| 
 | ||||
|         if run_new_connection: | ||||
|             self.database_engine.on_new_connection(db_conn) | ||||
|         return db_conn | ||||
| 
 | ||||
|     def setup(self): | ||||
|         logger.info("Setting up.") | ||||
|         self.datastore = FrontendProxySlavedStore(self.get_db_conn(), self) | ||||
|  |  | |||
|  | @ -266,19 +266,6 @@ class SynapseHomeServer(HomeServer): | |||
|         except IncorrectDatabaseSetup as e: | ||||
|             quit_with_error(e.message) | ||||
| 
 | ||||
|     def get_db_conn(self, run_new_connection=True): | ||||
|         # Any param beginning with cp_ is a parameter for adbapi, and should | ||||
|         # not be passed to the database engine. | ||||
|         db_params = { | ||||
|             k: v for k, v in self.db_config.get("args", {}).items() | ||||
|             if not k.startswith("cp_") | ||||
|         } | ||||
|         db_conn = self.database_engine.module.connect(**db_params) | ||||
| 
 | ||||
|         if run_new_connection: | ||||
|             self.database_engine.on_new_connection(db_conn) | ||||
|         return db_conn | ||||
| 
 | ||||
| 
 | ||||
| def setup(config_options): | ||||
|     """ | ||||
|  |  | |||
|  | @ -60,19 +60,6 @@ class MediaRepositorySlavedStore( | |||
| 
 | ||||
| 
 | ||||
| class MediaRepositoryServer(HomeServer): | ||||
|     def get_db_conn(self, run_new_connection=True): | ||||
|         # Any param beginning with cp_ is a parameter for adbapi, and should | ||||
|         # not be passed to the database engine. | ||||
|         db_params = { | ||||
|             k: v for k, v in self.db_config.get("args", {}).items() | ||||
|             if not k.startswith("cp_") | ||||
|         } | ||||
|         db_conn = self.database_engine.module.connect(**db_params) | ||||
| 
 | ||||
|         if run_new_connection: | ||||
|             self.database_engine.on_new_connection(db_conn) | ||||
|         return db_conn | ||||
| 
 | ||||
|     def setup(self): | ||||
|         logger.info("Setting up.") | ||||
|         self.datastore = MediaRepositorySlavedStore(self.get_db_conn(), self) | ||||
|  |  | |||
|  | @ -81,19 +81,6 @@ class PusherSlaveStore( | |||
| 
 | ||||
| 
 | ||||
| class PusherServer(HomeServer): | ||||
|     def get_db_conn(self, run_new_connection=True): | ||||
|         # Any param beginning with cp_ is a parameter for adbapi, and should | ||||
|         # not be passed to the database engine. | ||||
|         db_params = { | ||||
|             k: v for k, v in self.db_config.get("args", {}).items() | ||||
|             if not k.startswith("cp_") | ||||
|         } | ||||
|         db_conn = self.database_engine.module.connect(**db_params) | ||||
| 
 | ||||
|         if run_new_connection: | ||||
|             self.database_engine.on_new_connection(db_conn) | ||||
|         return db_conn | ||||
| 
 | ||||
|     def setup(self): | ||||
|         logger.info("Setting up.") | ||||
|         self.datastore = PusherSlaveStore(self.get_db_conn(), self) | ||||
|  |  | |||
|  | @ -246,19 +246,6 @@ class SynchrotronApplicationService(object): | |||
| 
 | ||||
| 
 | ||||
| class SynchrotronServer(HomeServer): | ||||
|     def get_db_conn(self, run_new_connection=True): | ||||
|         # Any param beginning with cp_ is a parameter for adbapi, and should | ||||
|         # not be passed to the database engine. | ||||
|         db_params = { | ||||
|             k: v for k, v in self.db_config.get("args", {}).items() | ||||
|             if not k.startswith("cp_") | ||||
|         } | ||||
|         db_conn = self.database_engine.module.connect(**db_params) | ||||
| 
 | ||||
|         if run_new_connection: | ||||
|             self.database_engine.on_new_connection(db_conn) | ||||
|         return db_conn | ||||
| 
 | ||||
|     def setup(self): | ||||
|         logger.info("Setting up.") | ||||
|         self.datastore = SynchrotronSlavedStore(self.get_db_conn(), self) | ||||
|  |  | |||
|  | @ -92,19 +92,6 @@ class UserDirectorySlaveStore( | |||
| 
 | ||||
| 
 | ||||
| class UserDirectoryServer(HomeServer): | ||||
|     def get_db_conn(self, run_new_connection=True): | ||||
|         # Any param beginning with cp_ is a parameter for adbapi, and should | ||||
|         # not be passed to the database engine. | ||||
|         db_params = { | ||||
|             k: v for k, v in self.db_config.get("args", {}).items() | ||||
|             if not k.startswith("cp_") | ||||
|         } | ||||
|         db_conn = self.database_engine.module.connect(**db_params) | ||||
| 
 | ||||
|         if run_new_connection: | ||||
|             self.database_engine.on_new_connection(db_conn) | ||||
|         return db_conn | ||||
| 
 | ||||
|     def setup(self): | ||||
|         logger.info("Setting up.") | ||||
|         self.datastore = UserDirectorySlaveStore(self.get_db_conn(), self) | ||||
|  |  | |||
|  | @ -307,6 +307,23 @@ class HomeServer(object): | |||
|             **self.db_config.get("args", {}) | ||||
|         ) | ||||
| 
 | ||||
|     def get_db_conn(self, run_new_connection=True): | ||||
|         """Makes a new connection to the database, skipping the db pool | ||||
| 
 | ||||
|         Returns: | ||||
|             Connection: a connection object implementing the PEP-249 spec | ||||
|         """ | ||||
|         # Any param beginning with cp_ is a parameter for adbapi, and should | ||||
|         # not be passed to the database engine. | ||||
|         db_params = { | ||||
|             k: v for k, v in self.db_config.get("args", {}).items() | ||||
|             if not k.startswith("cp_") | ||||
|         } | ||||
|         db_conn = self.database_engine.module.connect(**db_params) | ||||
|         if run_new_connection: | ||||
|             self.database_engine.on_new_connection(db_conn) | ||||
|         return db_conn | ||||
| 
 | ||||
|     def build_media_repository_resource(self): | ||||
|         # build the media repo resource. This indirects through the HomeServer | ||||
|         # to ensure that we only have a single instance of | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Richard van der Hoff
						Richard van der Hoff