77 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Python
		
	
	
			
		
		
	
	
			77 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Python
		
	
	
| # Copyright 2020 The Matrix.org Foundation C.I.C.
 | |
| #
 | |
| # Licensed under the Apache License, Version 2.0 (the "License");
 | |
| # you may not use this file except in compliance with the License.
 | |
| # You may obtain a copy of the License at
 | |
| #
 | |
| #     http://www.apache.org/licenses/LICENSE-2.0
 | |
| #
 | |
| # Unless required by applicable law or agreed to in writing, software
 | |
| # distributed under the License is distributed on an "AS IS" BASIS,
 | |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 | |
| # See the License for the specific language governing permissions and
 | |
| # limitations under the License.
 | |
| 
 | |
| """Contains *incomplete* type hints for txredisapi.
 | |
| """
 | |
| from typing import Any, List, Optional, Type, Union
 | |
| 
 | |
| from twisted.internet import protocol
 | |
| 
 | |
| class RedisProtocol(protocol.Protocol):
 | |
|     def publish(self, channel: str, message: bytes): ...
 | |
|     async def ping(self) -> None: ...
 | |
|     async def set(
 | |
|         self,
 | |
|         key: str,
 | |
|         value: Any,
 | |
|         expire: Optional[int] = None,
 | |
|         pexpire: Optional[int] = None,
 | |
|         only_if_not_exists: bool = False,
 | |
|         only_if_exists: bool = False,
 | |
|     ) -> None: ...
 | |
|     async def get(self, key: str) -> Any: ...
 | |
| 
 | |
| class SubscriberProtocol(RedisProtocol):
 | |
|     def __init__(self, *args, **kwargs): ...
 | |
|     password: Optional[str]
 | |
|     def subscribe(self, channels: Union[str, List[str]]): ...
 | |
|     def connectionMade(self): ...
 | |
|     def connectionLost(self, reason): ...
 | |
| 
 | |
| def lazyConnection(
 | |
|     host: str = ...,
 | |
|     port: int = ...,
 | |
|     dbid: Optional[int] = ...,
 | |
|     reconnect: bool = ...,
 | |
|     charset: str = ...,
 | |
|     password: Optional[str] = ...,
 | |
|     connectTimeout: Optional[int] = ...,
 | |
|     replyTimeout: Optional[int] = ...,
 | |
|     convertNumbers: bool = ...,
 | |
| ) -> RedisProtocol: ...
 | |
| 
 | |
| class ConnectionHandler: ...
 | |
| 
 | |
| class RedisFactory(protocol.ReconnectingClientFactory):
 | |
|     continueTrying: bool
 | |
|     handler: RedisProtocol
 | |
|     pool: List[RedisProtocol]
 | |
|     replyTimeout: Optional[int]
 | |
|     def __init__(
 | |
|         self,
 | |
|         uuid: str,
 | |
|         dbid: Optional[int],
 | |
|         poolsize: int,
 | |
|         isLazy: bool = False,
 | |
|         handler: Type = ConnectionHandler,
 | |
|         charset: str = "utf-8",
 | |
|         password: Optional[str] = None,
 | |
|         replyTimeout: Optional[int] = None,
 | |
|         convertNumbers: Optional[int] = True,
 | |
|     ): ...
 | |
|     def buildProtocol(self, addr) -> RedisProtocol: ...
 | |
| 
 | |
| class SubscriberFactory(RedisFactory):
 | |
|     def __init__(self) -> None: ...
 |