# Path: commotion_client/utils/fs_utils.py
# def is_file(unknown):
# def walklevel(some_dir, level=1):
# def make_temp_dir(new=None):
# def clean_dir(path=None):
# def copy_contents(start, end):
# def json_load(path):
# 
# Path: commotion_client/utils/validate.py
# class ClientConfig(object):
# class Networking(object):
#     def __init__(self, config, directory=None):
#     def config(self):
#     def config(self, value):
#     def extension_path(self):
#     def extension_path(self, value):
#     def validate_all(self):
#     def gui(self, gui_name):
#     def name(self):
#     def menu_item(self):
#     def parent(self):
#     def menu_level(self):
#     def tests(self):
#     def check_menu_text(self, menu_text):
#     def check_exists(self, file_name):
#     def check_path(self, file_name):
#     def check_path_chars(self, file_name):
#     def check_path_length(self, file_name=None):
#     def __init__(self):
#     def ipaddr(self, ip_addr, addr_type=None):
# 
# Path: commotion_client/utils/settings.py
# class UserSettingsManager(object):
#     def __init__(self):
#     def save(self):
#     def load(self):
#     def get(self):


import logging
import importlib
import shutil
import os
import re
import sys
import zipfile
import json
import zipimport
from PyQt4 import QtCore
from commotion_client.utils import fs_utils
from commotion_client.utils import validate
from commotion_client.utils import settings
from commotion_client import extensions

"""
#Standard Library Imports

#PyQt imports

#Commotion Client Imports

class ExtensionManager(object):
    
    def __init__(self):
        self.log = logging.getLogger("commotion_client."+__name__)
        self.translate = QtCore.QCoreApplication.translate
        self.extensions = {}
        self.libraries = {}
        self.set_library_defaults()
        self.user_settings = self.get_user_settings()
        self.config_keys = ["name",
                            "main",
                            "menu_item",
                            "menu_level",
                            "parent",
                            "settings",
                            "toolbar",
                            "tests",
                            "initialized",
                            "type",]

    def get_user_settings(self):
        """Get the currently logged in user settings object."""

# Path: commotion_client/utils/fs_utils.py
# def is_file(unknown):
# def walklevel(some_dir, level=1):
# def make_temp_dir(new=None):
# def clean_dir(path=None):
# def copy_contents(start, end):
# def json_load(path):
# 
# Path: commotion_client/utils/validate.py
# class ClientConfig(object):
# class Networking(object):
#     def __init__(self, config, directory=None):
#     def config(self):
#     def config(self, value):
#     def extension_path(self):
#     def extension_path(self, value):
#     def validate_all(self):
#     def gui(self, gui_name):
#     def name(self):
#     def menu_item(self):
#     def parent(self):
#     def menu_level(self):
#     def tests(self):
#     def check_menu_text(self, menu_text):
#     def check_exists(self, file_name):
#     def check_path(self, file_name):
#     def check_path_chars(self, file_name):
#     def check_path_length(self, file_name=None):
#     def __init__(self):
#     def ipaddr(self, ip_addr, addr_type=None):
# 
# Path: commotion_client/utils/settings.py
# class UserSettingsManager(object):
#     def __init__(self):
#     def save(self):
#     def load(self):
#     def get(self):


# Path: commotion_client/utils/extension_manager.py
import logging
import importlib
import shutil
import os
import re
import sys
import zipfile
import json
import zipimport
from PyQt4 import QtCore
from commotion_client.utils import fs_utils
from commotion_client.utils import validate
from commotion_client.utils import settings
from commotion_client import extensions


"""
#Standard Library Imports

#PyQt imports

#Commotion Client Imports

class ExtensionManager(object):
    
    def __init__(self):
        self.log = logging.getLogger("commotion_client."+__name__)
        self.translate = QtCore.QCoreApplication.translate
        self.extensions = {}
        self.libraries = {}
        self.set_library_defaults()
        self.user_settings = self.get_user_settings()
        self.config_keys = ["name",
                            "main",
                            "menu_item",
                            "menu_level",
                            "parent",
                            "settings",
                            "toolbar",
                            "tests",
                            "initialized",
                            "type",]

    def get_user_settings(self):
        """Get the currently logged in user settings object."""

        settings_manager = settings.UserSettingsManager()