def __init__(self, url, event_types=None, extra_info=None,
                 content_format='json', title=None, categories=None,
                 auth_user='', auth_key='', auth_server='',
                 wait_interval=30, max_wait=600, http_timeout=120, **kw):
        super(AtomPubHandler, self).__init__(**kw)
        self.events = []
        self.included_types = []
        self.excluded_types = []
        self.url = url
        self.auth_user = auth_user
        self.auth_key = auth_key
        self.auth_server = auth_server
        self.wait_interval = wait_interval
        self.max_wait = max_wait
        self.http_timeout = http_timeout
        self.content_format = content_format
        self.title = title
        self.categories = categories
        if extra_info:
            self.extra_info = extra_info
        else:
            self.extra_info = {}

        if event_types:
            if isinstance(event_types, six.string_types):
                event_types = [event_types]
            for t in event_types:
                if t.startswith('!'):
                    self.excluded_types.append(t[1:])
                else:
                    self.included_types.append(t)
        else:
            self.included_types.append('*')
        if self.excluded_types and not self.included_types:
            self.included_types.append('*')
dataset/ETHPy150Open openstack/stacktach-winchester/winchester/pipeline_handler.py/AtomPubHandler.__init__/original