3a7fca5e9d
These do not seem to have been created and made appear, so make them appear and make sure the exposed public API(s) have docstrings so that they appear in the generated docs. Change-Id: Ie34e46647b0b20d936ddaa15dc824d0e2d2ca99d
50 lines
1.3 KiB
Python
50 lines
1.3 KiB
Python
# Copyright (c) 2012 Intel Corporation.
|
|
# All Rights Reserved.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
"""
|
|
UUID related utilities and helper functions.
|
|
"""
|
|
|
|
import uuid
|
|
|
|
|
|
def generate_uuid():
|
|
"""Creates a random uuid string.
|
|
|
|
:returns: string
|
|
"""
|
|
return str(uuid.uuid4())
|
|
|
|
|
|
def _format_uuid_string(string):
|
|
return (string.replace('urn:', '')
|
|
.replace('uuid:', '')
|
|
.strip('{}')
|
|
.replace('-', '')
|
|
.lower())
|
|
|
|
|
|
def is_uuid_like(val):
|
|
"""Returns validation of a value as a UUID.
|
|
|
|
:param val: Value to verify
|
|
:type val: string
|
|
:returns: bool
|
|
"""
|
|
try:
|
|
return str(uuid.UUID(val)).replace('-', '') == _format_uuid_string(val)
|
|
except (TypeError, ValueError, AttributeError):
|
|
return False
|