예제 #1
0
    def __init__(self):
        scope = Scope().get_instance()
        self.logger = scope.get_logger()
        self.message_manager = scope.get_message_manager()
        self.event_manager = scope.get_event_manager()
        self.messenger = scope.get_messenger()
        self.conf_manager = scope.get_configuration_manager()
        self.db_service = scope.get_db_service()
        self.util = Util()
        self.servicename = 'im.liderahenk.org'
        self.local_user_disable = None

        #self.event_manager.register_event('REGISTRATION_RESPONSE', self.registration_process)
        self.event_manager.register_event('REGISTRATION_SUCCESS',
                                          self.registration_success)
        self.event_manager.register_event('REGISTRATION_ERROR',
                                          self.registration_error)

        self.ldap_login_cancel = ExecuteCancelSSSDAuthentication()
        self.ad_login_cancel = ExecuteCancelSSSDAdAuthentication()
        self.ldap_login = ExecuteSSSDAuthentication()
        self.ad_login = ExecuteSSSDAdAuthentication()

        self.directory_server = None

        if self.is_registered():
            self.logger.debug('Ahenk already registered')
        else:
            self.register(True)
예제 #2
0
    def process_task(self, task):

        ##
        scope = Scope().get_instance()
        self.messenger = scope.get_messenger()
        ##

        try:
            plugin_name = task.get_plugin().get_name().lower()
            plugin_ver = task.get_plugin().get_version()

            if self.does_plugin_exist(
                    plugin_name,
                    plugin_ver) and plugin_name in self.plugin_queue_dict:
                self.plugin_queue_dict[plugin_name].put(task, 1)
            else:
                self.logger.warning(
                    '{0} plugin not found. Task was delayed. Ahenk will request plugin from Lider if distribution available'
                    .format(plugin_name, plugin_ver))
                self.delayed_tasks[plugin_name] = task
                msg = self.message_manager.missing_plugin_message(
                    PluginBean(name=plugin_name, version=plugin_ver))
                self.messenger.send_direct_message(msg)
        except Exception as e:
            self.logger.error(
                'Exception occurred while processing task. Error Message: {0}'.
                format(str(e)))
예제 #3
0
 def __init__(self):
     scope = Scope().get_instance()
     self.logger = scope.get_logger()
     self.message_manager = scope.get_message_manager()
     self.messenger = scope.get_messenger()
     self.db_service = scope.get_db_service()
     self.ask_path = '/opt/ahenk/base/agreement/ask.py'
     self.logger.debug('Instance initialized.')
예제 #4
0
 def __init__(self):
     scope = Scope().get_instance()
     self.logger = scope.get_logger()
     self.message_manager = scope.get_message_manager()
     self.messenger = scope.get_messenger()
     self.db_service = scope.get_db_service()
     self.ask_path = '/usr/share/ahenk/base/agreement/ask.py'
     self.logger.debug('Instance initialized.')
예제 #5
0
 def __init__(self):
     scope = Scope().get_instance()
     self.logger = scope.get_logger()
     self.plugin_manager = scope.get_plugin_manager()
     self.message_manager = scope.get_message_manager()
     self.messenger = scope.get_messenger()
     self.conf_manager = scope.get_configuration_manager()
     self.db_service = scope.get_db_service()
     self.execute_manager = scope.get_execution_manager()
예제 #6
0
 def __init__(self):
     scope = Scope().get_instance()
     self.logger = scope.get_logger()
     self.plugin_manager = scope.get_plugin_manager()
     self.message_manager = scope.get_message_manager()
     self.messenger = scope.get_messenger()
     self.conf_manager = scope.get_configuration_manager()
     self.db_service = scope.get_db_service()
     self.execute_manager = scope.get_execution_manager()
예제 #7
0
    def __init__(self):
        scope = Scope().get_instance()
        self.logger = scope.get_logger()
        self.message_manager = scope.get_message_manager()
        self.event_manager = scope.get_event_manager()
        self.messenger = scope.get_messenger()
        self.conf_manager = scope.get_configuration_manager()
        self.db_service = scope.get_db_service()

        self.event_manager.register_event('REGISTRATION_RESPONSE', self.registration_process)

        if self.is_registered():
            self.logger.debug('Ahenk already registered')
        else:
            self.register(True)
예제 #8
0
    def __init__(self):
        scope = Scope().get_instance()
        self.logger = scope.get_logger()
        self.message_manager = scope.get_message_manager()
        self.event_manager = scope.get_event_manager()
        self.messenger = scope.get_messenger()
        self.conf_manager = scope.get_configuration_manager()
        self.db_service = scope.get_db_service()

        self.event_manager.register_event('REGISTRATION_RESPONSE',
                                          self.registration_process)

        if self.is_registered():
            self.logger.debug('Ahenk already registered')
        else:
            self.register(True)
예제 #9
0
    def __init__(self):
        scope = Scope().get_instance()
        self.logger = scope.get_logger()
        self.message_manager = scope.get_message_manager()
        self.event_manager = scope.get_event_manager()
        self.messenger = scope.get_messenger()
        self.conf_manager = scope.get_configuration_manager()
        self.db_service = scope.get_db_service()
        self.util = Util()
        self.service_name = 'im.liderahenk.org'

        #self.event_manager.register_event('REGISTRATION_RESPONSE', self.registration_process)
        self.event_manager.register_event('REGISTRATION_SUCCESS',
                                          self.registration_success)
        self.event_manager.register_event('REGISTRATION_ERROR',
                                          self.registration_error)

        if self.is_registered():
            self.logger.debug('Ahenk already registered')
        else:
            self.register(True)
예제 #10
0
    def process_task(self, task):

        ##
        scope = Scope().get_instance()
        self.messenger = scope.get_messenger()
        ##

        try:
            plugin_name = task.get_plugin().get_name().lower()
            plugin_ver = task.get_plugin().get_version()

            if self.does_plugin_exist(plugin_name, plugin_ver) and plugin_name in self.plugin_queue_dict:
                self.plugin_queue_dict[plugin_name].put(task, 1)
            else:
                self.logger.warning(
                    '{0} plugin not found. Task was delayed. Ahenk will request plugin from Lider if distribution available'.format(
                        plugin_name, plugin_ver))
                self.delayed_tasks[plugin_name] = task
                msg = self.message_manager.missing_plugin_message(PluginBean(name=plugin_name, version=plugin_ver))
                self.messenger.send_direct_message(msg)
        except Exception as e:
            self.logger.error(
                'Exception occurred while processing task. Error Message: {0}'.format(str(e)))