Helper classes#

Exception#

The class ScadeOneException is used to raise an exception. The message passed when raising the exception is passed to the Scade One logger ansys.scadeone.core.common.logger.ScadeOneLogger.

exception ansys.scadeone.core.common.exception.ScadeOneException(message: str, exc_info: bool = False)#

Bases: Exception

ScadeOne API Exception. When raising a ScadeOneException it is automatically logged. See ansys.scadeone.core.common.logger.ScadeOneLogger for more.

add_note()#

Exception.add_note(note) – add a note to the exception

with_traceback()#

Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.

Logging#

class ansys.scadeone.core.common.logger.LoggerLevel(*values)#

Bases: Enum

Logging levels.

CRITICAL = 5#

Critical log level

DEBUG = 1#

Debug log level

ERROR = 4#

Error log level

INFO = 2#

Information log level

WARNING = 3#

Warning log level

class ansys.scadeone.core.common.logger.ScadeOneLogger(level: LoggerLevel = LoggerLevel.ERROR, catch_all_exceptions: bool = False, logger_name: str = None)#

Bases: object

Logger used for PyScadeOne.

Parameters:
levelLoggerLevel, optional

Logging level to filter the message severity allowed in the logger. The default is LoggerLevel.ERROR.

catch_all_exceptionsbool, optional

Whether to catch all uncaught exceptions and log them. By default, False.

logger_namestr, optional

Name of the logger. By default, None, which will use the global logger name defined in GLOBAL_LOGGER_NAME.

critical(msg: str, *args, **kwargs) → None#

Log a message with severity CRITICAL on the logger.

debug(msg: str, *args, **kwargs) → None#

Log a message with severity DEBUG on the logger.

error(msg: str, *args, **kwargs) → None#

Log an error message with severity ERROR on the logger.

exception(msg: str, *args, **kwargs) → None#

Log an exception message with severity ERROR on the logger.

flush() → None#

Flush any pending log from all handlers.

info(msg: str, *args, **kwargs) → None#

Log a message with severity INFO on the logger.

log_to_console(level: LoggerLevel = LoggerLevel.DEBUG) → None#

Add standard output handler to the logger.

Parameters:
levelLoggerLevel, optional

Level of logging record. By default 'DEBUG'.

log_to_file(folder_path: Path | str | None = None, filename: str = 'pyscadeone.log', level: LoggerLevel = LoggerLevel.DEBUG) → None#

Add file handler to logger.

Parameters:
folder_pathPath or str, optional

Path to the folder where the log file will be created. If None (default), a user-specific default folder (~/.pyscadeone) will be used.

filenamestr, optional

Name of the file where the logs are recorded. By default, 'pyscadeone.log'.

levelLoggerLevel, optional

Level of logging. By default, 'DEBUG'.

warning(msg: str, *args, **kwargs) → None#

Log a message with severity WARNING on the logger.

property level: LoggerLevel#

Logging level to filter the message severity allowed in the logger.

Versioning#

The versioning module contains the version manager for the Scade One formats.

class ansys.scadeone.core.common.versioning.VersionManager#

Bases: object

Class managing the versions for the Scade One tools formats.

The version manager is used through the singleton FormatVersions instance.

check(format: str, version: str) → None#

Check if the version is supported for the format.

Parameters:
formatstr

Format name

versionstr

Version to be checked

Raises:
ScadeOneException

If the version is not supported for the format.

description(format: str) → str#

Get the description for the format.

Parameters:
formatstr

Format name

Returns:
str

Description

get_versions() → str#

Get the versions as a document string.

Returns:
str

String containing the versions

load_versions(version_file: Path) → None#

Load the versions from the json file file.

Parameters:
version_filePath

JSON file containing the versions

Raises:
ScadeOneException

If the file is not found or if the file is not valid.

version(format: str) → str#

Get the version for the format.

Parameters:
formatstr

Format name

Returns:
str

Version

property formats: list#

Get the formats as a list of strings.

ansys.scadeone.core.common.versioning.gen_swan_version(is_test_module=False) → str#

Generate the version for a Swan file.

Parameters:
is_test_modulebool

True if the test module version is needed

Returns:
str

Version