Source code for pulsar.util
""" Pulsar utilities.
"""
from tempfile import NamedTemporaryFile
BUFFER_SIZE = 4096
[docs]
def copy_to_path(object, path):
"""
Copy file-like object to path.
"""
output = open(path, 'wb')
_copy_and_close(object, output)
def _copy_and_close(object, output):
try:
while True:
buffer = object.read(BUFFER_SIZE)
if not buffer:
break
output.write(buffer)
finally:
output.close()
[docs]
def copy_to_temp(object):
"""
Copy file-like object to temp file and return
path.
"""
temp_file = NamedTemporaryFile(delete=False)
_copy_and_close(object, temp_file)
return temp_file.name
[docs]
def enum(**enums):
"""
http://stackoverflow.com/questions/36932/how-can-i-represent-an-enum-in-python
"""
return type('Enum', (), enums)