schrodinger.application.livedesign.login module¶
Login page of the Maestro LiveDesign Export GUI.
Copyright Schrodinger, LLC. All rights reserved.
- class schrodinger.application.livedesign.login.AuthenticationMode¶
Bases:
IntEnum- CREDENTIALS = 0¶
- SINGLE = 1¶
- class schrodinger.application.livedesign.login.LoginManager¶
Bases:
QObjectManages login credentials and LD client acquisition.
Supports both synchronous and asynchronous download patterns.
- Variables:
_CONNECTING – Whether a connection is currently in progress.
connectionFinished – Emitted upon completion of the asynchronous ‘asyncConnect’. Emitted with an error message on failure.
- connectionFinished¶
A
pyqtSignalemitted by instances of the class.
- __init__()¶
- getMode() AuthenticationMode | None¶
- Returns:
The authentication mode from preferences
- getHost()¶
- Returns:
The server host from preferences
- Return type:
str or None
- getUsername()¶
- Returns:
The username from preferences
- Return type:
str
- getToken()¶
- Returns:
The SSO token from preferences
- Rypte:
str
- classmethod connect(host: str, token: Optional[str] = None, username: Optional[str] = None, password: Optional[str] = None, timeout: int = 60, compatibility_mode: Optional[Version] = Version(major=2025, minor=1), user_agent_prefix: Optional[str] = 'Maestro/2026-2') str¶
Download the LiveDesign
ldclientpackage, import theldclient.clientmodule and connect to the LiveDesign server. Also handle the raised exception and return error message if exception is raised. Seeldclient_proxy.LDClientProxy.connectfor argument documentation.- Parameters:
timeout – Timeout for the ldclient package download request (in secs)
- Returns:
the error message with useful information in the event of a failure otherwise return empty string.
- asyncConnect(host: str, token: Optional[str] = None, username: Optional[str] = None, password: Optional[str] = None, timeout: int = 60, compatibility_mode: Optional[Version] = Version(major=2025, minor=1), user_agent_prefix: Optional[str] = 'Maestro/2026-2') None¶
Download LD client in a non-blocking way, import the
ldclient.clientmodule and connect to the LiveDesign server.NOTE:
connectionFinishedsignal will be emitted when the task is completed.- Parameters:
host – The host name to download ld-client from.
token – Token corresponding to the given
host.username – Username for the host.
password – Password for the host.
timeout – Timeout value for the connection request (in secs).
compatibility_mode – Version of ld-client.
user_agent_prefix – User agent prefix string.
- disconnect()¶
Disconnect the LiveDesign client connection and clear the token.
- setMode(mode: AuthenticationMode)¶
- Parameters:
mode – The authentication mode
- setHost(host)¶
- Parameters:
host (str) – The server host
- setUsername(username)¶
- Parameters:
username (str) – The username of the user
- setToken(token)¶
- Parameters:
token (str) – The SSO token
- schrodinger.application.livedesign.login.get_ldclient_download_dir() str¶
Create and return the directory to use for downloading the ldclient package. Each session should have its own ldclient package directory to avoid being overwritten by other sessions which might be using a different version of the ldclient package.
- schrodinger.application.livedesign.login.download_ld_client(url: str, timeout: int | None = None) str¶
Download the LiveDesign client under a temp directory and extract it.
- Parameters:
url – URL to download the ld client package
timeout – Timeout for the download request (in secs)
- Returns:
path to the client package
- Raises:
Exception – Raises RuntimeError in case of any error
- schrodinger.application.livedesign.login.download_client(url: str, download_dir: str, tar_filename: str, timeout: int | None = None) str¶
Download the client tar.gz file at the specified URL and extract it
- Parameters:
url – URL to download the client package
download_dir – Directory to download and extract the client tarfile
tar_filename – Filename of the downloaded tarfile
timeout – Timeout for the download request (in secs)
- Returns:
path to the client package
- Raises:
Exception – Raises RuntimeError in case of any error
- schrodinger.application.livedesign.login.get_ld_client() LDClientProxy¶
Return the singleton proxy LiveDesign client. Proxy notifies the listeners whenever the connection to the LiveDesign server changes.
LiveDesign login panel manages the connection to the LiveDesign server and ensures the underlying
LDClientobject is re-initialized.See
ldclient_proxy.LDClientProxyfor details.
- schrodinger.application.livedesign.login.get_ldclient_models()¶
Return
ldclient.modelsmodule from the ldclient package.
- schrodinger.application.livedesign.login.get_ldclient_enums()¶
Return
ldclient.enumsmodule from the ldclient package.
- schrodinger.application.livedesign.login.get_ldclient_responses()¶
Return
ldclient.responsesmodule from the ldclient package.
- schrodinger.application.livedesign.login.get_ldclient_requests()¶
Return
ldclient.requestsmodule from the ldclient package.
- schrodinger.application.livedesign.login.login_using_last_session_credentials()¶
Attempt to access last session’s login credentials to log into livedesign.