You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
from typing import Optional, Tuple, Union
class CredentialProvider: """
Credentials Provider. """
def get_credentials(self) -> Union[Tuple[str], Tuple[str, str]]: raise NotImplementedError("get_credentials must be implemented")
class UsernamePasswordCredentialProvider(CredentialProvider): """
Simple implementation of CredentialProvider that just wraps static username and password. """
def __init__(self, username: Optional[str] = None, password: Optional[str] = None): self.username = username or "" self.password = password or ""
def get_credentials(self): if self.username: return self.username, self.password return (self.password,)
|