class AddAction(object):
    def __init__(self, logger, config):
        self.setting_repository = SettingRepository(logger=logger,
                                                    config=config)
        self.file_service = FileService(logger=logger, config=config)

    def execute(self, alias, file_path):
        if self.setting_repository.find_one_by(alias):
            self._print_output('Setting already added')
            return

        setting = self.file_service.create_setting(alias, file_path)
        self.setting_repository.create(setting)

        self._print_output('The {} setting was created'.format(setting.alias))

    # noinspection PyMethodMayBeStatic
    def _print_output(self, message):
        print(message)
Esempio n. 2
0
class DeleteAction(object):
    def __init__(self, logger, config):
        self.setting_repository = SettingRepository(logger=logger,
                                                    config=config)
        self.file_service = FileService(logger=logger, config=config)

    def execute(self, alias):
        setting = self.setting_repository.find_one_by(alias)

        if setting is None:
            self._print_output('Setting not found!!!')
            return

        self.setting_repository.delete(setting)
        self.file_service.remove_setting(setting)
        self._print_output('The {} setting was deleted'.format(setting.alias))

    # noinspection PyMethodMayBeStatic
    def _print_output(self, message):
        print(message)
class DoctorAction:
    def __init__(self, logger, config):
        self.setting_repository = SettingRepository(logger=logger,
                                                    config=config)
        self.file_service = FileService(logger=logger, config=config)

    def fix(self):
        self.setting_repository.clear_setting_table()
        self.__print_output('- Clear data base')
        setting_files = self.file_service.list_all()

        for setting_file in setting_files:
            alias = setting_file[:-4]
            setting = Setting(alias=alias, file=setting_file)
            self.__print_output('- Insert in data base {}'.format(setting))
            self.setting_repository.create(setting)

        self.setting_repository.create(
            Setting(alias='default', file='', selected=1))
        self.__print_output('- Insert default setting')
        self.file_service.deactivate_setting()

    def diagnostic(self):
        pass

    # noinspection PyMethodMayBeStatic
    def __print_output(self, message):
        print(message)
Esempio n. 4
0
class UseAction(object):
    def __init__(self, logger, config):
        self.setting_repository = SettingRepository(logger=logger,
                                                    config=config)
        self.file_service = FileService(logger=logger, config=config)

    def execute(self, alias):
        old_setting = self.setting_repository.find_selected()
        new_setting = self.setting_repository.find_one_by(alias)

        if new_setting is None:
            self._print_output('Setting not found!!!')
            return

        if old_setting is not None:
            old_setting.deselect()
            self.setting_repository.update(old_setting)
            self.file_service.deactivate_setting()

        new_setting.select()
        self.setting_repository.update(new_setting)
        self.file_service.activate_setting(new_setting)

        self._print_output('The {} setting is selected'.format(
            new_setting.alias))

    # noinspection PyMethodMayBeStatic
    def _print_output(self, message):
        print(message)
def __initialize(args):
    repository = SettingRepository(logger=args.log, config=args.config)
    file_manager = FileService(logger=args.log, config=args.config)

    if not file_manager.directory_exist():
        print('... Creating directory ...')
        file_manager.create_directory()
        print('... Creating database ...')
        repository.create_settings_table()

    if repository.find_one_by('default') is None:
        print('... Adding default settings ...')
        repository.create(Setting('default', ''))
Esempio n. 6
0
class ListAction(object):
    def __init__(self, logger, config):
        self.logger = logger
        self.settingRepository = SettingRepository(logger=logger,
                                                   config=config)

    def execute(self):
        for setting in self.settingRepository.list_all():
            self._print_setting(setting)

    # noinspection PyMethodMayBeStatic
    def _print_setting(self, setting):
        if setting.is_selected():
            print(' > {}'.format(setting.alias))
        else:
            print('   {}'.format(setting.alias))
 def __init__(self, logger, config):
     self.setting_repository = SettingRepository(logger=logger,
                                                 config=config)
     self.file_service = FileService(logger=logger, config=config)
Esempio n. 8
0
 def __init__(self, logger, config):
     self.logger = logger
     self.settingRepository = SettingRepository(logger=logger,
                                                config=config)