linotp.lib.type_utils module¶
contains utility functions for type checking
- exception linotp.lib.type_utils.DurationParsingException¶
Bases:
Exception
- linotp.lib.type_utils.boolean(value)¶
type converter for boolean config entries
- linotp.lib.type_utils.check_networks_expression(networks)¶
check if a given term is realy a description of networks
- Parameters
networks – the term which should describe a network eg. “192.168.178.1/24, example.com/32”
- Returns
boolean - true if this is a network description
- linotp.lib.type_utils.check_time_format_string(time_format_string)¶
check if a given parameter is a valid time filter format
- Parameters
timefilter_format – the term which should describe datetime format eg. “%d, %m, %H, %I, %M, %S, %J”
- Returns
boolean - true if this is valid format string
- linotp.lib.type_utils.convert_to_datetime(date_str, time_formats)¶
Convert a string to a datetime object by one of the time format strings.
- Parameters
date_str – date string
time_formats – list of time formats, which the date string should match
- linotp.lib.type_utils.encrypted_data(value)¶
type converter for config entries -
similar to int(bla) it will try to conveert the given value into an object of EncryptedData
- Returns
EncyptedData object
- linotp.lib.type_utils.get_duration(value)¶
return duration in seconds
- linotp.lib.type_utils.get_ip_address(address)¶
get the ip address representation from netaddr
- Parameters
address – the term which should describe a ip address eg. 192.168.178.1 or www.example.com
- Returns
None or the netaddr.IPAddress object
- linotp.lib.type_utils.get_ip_network(network)¶
get the ip network representation from netaddr
- Parameters
network – the term which should describe a network eg. 192.168.178.1/24 or example.com/32
- Returns
None or the netaddr.IPNetwork object
- linotp.lib.type_utils.get_timeout(timeout, seperator=',')¶
get the timeout or timeout tuple from timeout input
- linotp.lib.type_utils.is_duration(value)¶
- linotp.lib.type_utils.is_integer(value)¶
type checking function for integers
- Parameters
value – the to be checked value
- Returns
return boolean
- linotp.lib.type_utils.is_ip_address(address)¶
get the ip address representation from netaddr
- Parameters
address – the term which should describe a ip address eg. 192.168.178.1 or www.example.com
- Returns
boolean - true if it is an IPAddress
- linotp.lib.type_utils.is_ip_address_dotted_quad(address)¶
Check whether address is an IP address in dotted-quad notation. is_ip_address() will also accept DNS names, which is not what we want. netaddr.IPAddress() returns valid results for strange input like 1.2, which might technically be an IP address but is not what people expect, so we don’t bother with it. Note that this will fail dismally in an IPv6 environment.
- linotp.lib.type_utils.is_network(network)¶
test if a given term is realy a network description
- Parameters
network – the term which should describe a network eg. 192.168.178.1/24 or example.com/32
- Returns
boolean - true if this is a network description
- linotp.lib.type_utils.parse_duration(duration_str, time_delta_compliant=False)¶
transform a duration string into a time delta object
- Parameters
duration_str – duration string like ‘1h’ ‘3h 20m 10s’ ’10s’ or iso8601 durations like ‘P23DT23H’
- Returns
timedelta
- linotp.lib.type_utils.parse_timeout(timeout_val, seperator=',')¶
parse a timeout value which migth be a single value or a tuple of connection and response timeouts
- Params timeout_val
timeout value which could be either string, tuple or float/int
- Returns
timeout tuple of float or float/int timeout value