The openstack_dashboard.openstack.common.strutils ModuleΒΆ

System-level utilities and helper functions.

openstack_dashboard.openstack.common.strutils.bool_from_string(subject, strict=False, default=False)[source]

Interpret a string as a boolean.

A case-insensitive match is performed such that strings matching ‘t’, ‘true’, ‘on’, ‘y’, ‘yes’, or ‘1’ are considered True and, when strict=False, anything else returns the value specified by ‘default’.

Useful for JSON-decoded stuff and config file parsing.

If strict=True, unrecognized values, including None, will raise a ValueError which is useful when parsing values passed in from an API call. Strings yielding False are ‘f’, ‘false’, ‘off’, ‘n’, ‘no’, or ‘0’.

openstack_dashboard.openstack.common.strutils.int_from_bool_as_string(subject)[source]

Interpret a string as a boolean and return either 1 or 0.

Any string value in:

(‘True’, ‘true’, ‘On’, ‘on’, ‘1’)

is interpreted as a boolean True.

Useful for JSON-decoded stuff and config file parsing

openstack_dashboard.openstack.common.strutils.safe_decode(text, incoming=None, errors='strict')[source]

Decodes incoming text/bytes string using incoming if they’re not already unicode.

Parameters:
Returns:

text or a unicode incoming encoded representation of it.

Raises TypeError:
 

If text is not an instance of str

openstack_dashboard.openstack.common.strutils.safe_encode(text, incoming=None, encoding='utf-8', errors='strict')[source]

Encodes incoming text/bytes string using encoding.

If incoming is not specified, text is expected to be encoded with current python’s default encoding. (sys.getdefaultencoding)

Parameters:
Returns:

text or a bytestring encoding encoded representation of it.

Raises TypeError:
 

If text is not an instance of str

openstack_dashboard.openstack.common.strutils.string_to_bytes(text, unit_system='IEC', return_int=False)[source]

Converts a string into an float representation of bytes.

The units supported for IEC

Kb(it), Kib(it), Mb(it), Mib(it), Gb(it), Gib(it), Tb(it), Tib(it)
KB, KiB, MB, MiB, GB, GiB, TB, TiB

The units supported for SI

kb(it), Mb(it), Gb(it), Tb(it)
kB, MB, GB, TB

Note that the SI unit system does not support capital letter ‘K’

Parameters:
  • text – String input for bytes size conversion.
  • unit_system – Unit system for byte size conversion.
  • return_int – If True, returns integer representation of text in bytes. (default: decimal)
Returns:

Numerical representation of text in bytes.

Raises ValueError:
 

If text has an invalid value.

openstack_dashboard.openstack.common.strutils.to_slug(value, incoming=None, errors='strict')[source]

Normalize string.

Convert to lowercase, remove non-word characters, and convert spaces to hyphens.

Inspired by Django’s slugify filter.

Parameters:
Returns:

slugified unicode representation of value

Raises TypeError:
 

If text is not an instance of str

Previous topic

The openstack_dashboard.openstack.common Module

Next topic

The openstack_dashboard.openstack.common.log Module

This Page