Beispiel #1
0
    def __init__(self, name, config, bus, filter, service_resolver):
        Stage.__init__(self, name=name, config=config, bus=bus, filter=filter, service_resolver=service_resolver)

        self._locations = self.config.strict(
            key="locations", types=[str], can_iterate=True, default=["subject"], values=["subject", "body"]
        )
        self._tags = self.config.strict(key="tags", types=[unicode, str], can_iterate=True, default=[])
Beispiel #2
0
    def __init__(self, name, config, bus, filter, service_resolver):
        Stage.__init__(self, name=name, config=config, bus=bus, filter=filter, service_resolver=service_resolver)

        svc = self.service_resolver.get_service(PipelineService)
        assert isinstance(svc, PipelineService)

        self._pipeline = svc.build_pipeline(name=self.config.strict(key='jump', types=[str], non_empty=True),
                                            bus=self.bus)
Beispiel #3
0
    def __init__(self, name, config, bus, filter, service_resolver):
        Stage.__init__(self, name=name, config=config, bus=bus, filter=filter, service_resolver=service_resolver)

        self._destination = self.config.strict(key='destination', types=[str], default=None)
        self._lambda = self.config.strict(key='lambda', can_call=True, non_empty=False, default=None)

        assert bool(self._destination) != bool(self._lambda)
        assert not self._destination is None or not self._lambda is None
Beispiel #4
0
    def __init__(self, name, config, bus, filter, service_resolver):
        Stage.__init__(self, name=name, config=config, bus=bus, filter=filter, service_resolver=service_resolver)

        self._vars = {}
        for key in self.config.keys():
            if key in ['module', 'filter']:
                continue

            self._vars[key] = self.config.get(key=key)
Beispiel #5
0
    def __init__(self, name, config, bus, filter, service_resolver, modules):
        Stage.__init__(self, name=name, config=config, bus=bus, filter=filter, service_resolver=service_resolver)

        self._fail_action = FailAction.try_parse(self.config.strict('error',
                                                                    default='continue',
                                                                    values=['continue', 'rollback', 'drop', 'raise']))

        assert all(map(lambda x: isinstance(x, Stage), modules))

        self._modules = modules
Beispiel #6
0
    def __init__(self, name, config, bus, filter, service_resolver):
        Stage.__init__(self, name=name, config=config, bus=bus, filter=filter, service_resolver=service_resolver)

        self._is_optional = self.config.strict('optional', default=False, types=[bool])
        self._default_logo = self.config.strict('default', default=None, types=[str])
        self._user_def = self.config.strict('user_def', default=None, types=[str])
        self._display = self.config.strict('display', default=None, types=[str])
        self._id = self.config.strict('id', types=[str], non_empty=True)

        svc = self.service_resolver.get_service(Attachments)
        assert isinstance(svc, Attachments)
        self._service = svc
Beispiel #7
0
    def __init__(self, name, config, bus, filter, service_resolver):
        Stage.__init__(self, name=name, config=config, bus=bus, filter=filter, service_resolver=service_resolver)

        self._template = self.config.strict('template', types=[str], non_empty=True)
        self._display = self.config.strict('display', types=[str], non_empty=True)
        self._encoding = self.config.strict('encoding', types=[str], default='cp1251')

        text_svc = self.service_resolver.get_service(TextFactory)
        assert isinstance(text_svc, TextFactory)

        attachment_svc = self.service_resolver.get_service(Attachments)
        assert isinstance(attachment_svc, Attachments)

        self._text_svc = text_svc
        self._attachments_svc = attachment_svc
Beispiel #8
0
    def __init__(self, name, config, bus, filter, service_resolver):
        Stage.__init__(self, name=name, config=config, bus=bus, filter=filter, service_resolver=service_resolver)

        self._locations = self.config.strict(key='locations', types=[str], can_iterate=True,
                                             default=['subject', 'body'])
        self._remove_long_spaces = self.config.strict('remove_long_spaces', types=[bool], default=False)
        self._remove_html = self.config.strict('remove_html', types=[bool], default=False)
        self._allowed_html_tags = Beautifulizer.DEFAULT_ALLOWED_HTML + self.config.strict('allowed_html_tags',
                                                                                          types=[str], can_iterate=True,
                                                                                          default=[])
        self._remove_long_newline = self.config.strict('remove_long_newline', types=[bool], default=False)
        self._restore_punctuation = self.config.strict('restore_punctuation', types=[bool], default=False)
        self._sender_name_rewrite = self.config.strict('sender_name_rewrite',
                                                       can_call=True, non_empty=False, default=None)

        self._sender_address_rewrite = self.config.strict('sender_address_rewrite',
                                                          can_call=True, non_empty=False, default=None)
Beispiel #9
0
    def __init__(self, name, config, bus, filter, service_resolver):
        Stage.__init__(self, name=name, config=config, bus=bus, filter=filter, service_resolver=service_resolver)

        svc = self.service_resolver.get_service(PipelineService)
        assert isinstance(svc, PipelineService)

        self._condition = svc.get_filter(module_name='filter', bus=self.bus, config=self.config.section('if'))

        then_config = self.config.section('then')
        self._then_stage = svc.get_stage(module_name=then_config.strict('module', types=[str], non_empty=True),
                                         bus=self.bus,
                                         config=then_config,
                                         filter=svc.get_stage_filter(bus=self.bus, stage_config=then_config))

        else_config = self.config.section('else')
        self._else_stage = svc.get_stage(module_name=else_config.strict('module', types=[str], non_empty=True),
                                         bus=self.bus,
                                         config=else_config,
                                         filter=svc.get_stage_filter(bus=self.bus, stage_config=else_config))
Beispiel #10
0
    def __init__(self, name, config, bus, filter, service_resolver):
        Stage.__init__(self, name=name, config=config, bus=bus, filter=filter, service_resolver=service_resolver)

        self._header_name = self.config.strict('name', types=[str], non_empty=True)
        self._value = self.config.strict('value', non_empty=True)
        self._allow_replace = self.config.strict('allow_replace', types=[bool], default=True)
Beispiel #11
0
 def __init__(self, name, config, bus, filter, service_resolver):
     Stage.__init__(self, name=name, config=config, bus=bus, filter=filter, service_resolver=service_resolver)
Beispiel #12
0
    def __init__(self, name, config, bus, filter, service_resolver):
        Stage.__init__(self, name=name, config=config, bus=bus, filter=filter, service_resolver=service_resolver)
        self._headers = self.config.strict(key='headers', types=[str], can_iterate=True, default=['To', 'Cc', 'Bcc'])
        self._undisclosed = self.config.strict(key='undisclosed', types=[bool], default=False)

        assert set(self._headers).issubset({'To', 'Cc', 'Bcc'})
Beispiel #13
0
    def __init__(self, name, config, bus, filter, service_resolver):
        Stage.__init__(self, name=name, config=config, bus=bus, filter=filter, service_resolver=service_resolver)

        self._new_subject = self.config.strict(key='new_subject', types=[str, unicode],
                                               default=u'**Subject replaced**', extend=self.bus.data)