Public
Snippet $11 authored by Owo Sugiana

Streamer

streamer.py
import os
import sys
if sys.version_info.major == 2:
    import imp
else:
    import importlib.machinery


MODULES_PATH = os.path.split(__file__)[0]

MSG_NOT_FOUND = 'Module file {} not found'


def get_streamer_module(name):
    filename = os.path.join(MODULES_PATH, 'streamer', name) + '.py'
    if not os.path.exists(filename):
        msg = MSG_NOT_FOUND.format(filename)
        raise Exception(msg)
    if sys.version_info.major == 2:
        return imp.load_source(name, filename)
    loader = importlib.machinery.SourceFileLoader(name, filename)
    return loader.load_module()


class Streamer:
    def __init__(self):
        self.raw = ''
        self.size = 0

    # Override please.
    def get(self, raw):
        return raw

    # Override please.
    def set(self, raw):
        return raw