':param strip_lines: remove whitespace from the beginning an ending
of each line (or not).
Optional: defaults to True
:type strip_lines: bool
:param strip_newlines: remove newlines only
(only functions when ``strip_lines`` is false)
Optional: defaults to False
:type strip_lines: bool
:param provide_blank: are empty lines considered valid and provided?
Optional: defaults to False
:type provide_blank: bool
:param comment_char: character(s) that indicate a line isn\'t data (a comment)
and should not be provided.
Optional: defaults to \'#\'
:type comment_char: str'

def __init__(self, source, strip_lines=True, strip_newlines=False, provide_blank=False, comment_char=DEFAULT_COMMENT_CHAR, **kwargs):

    super(FilteredLineDataProvider, self).__init__(source, **kwargs)
    self.strip_lines = strip_lines
    self.strip_newlines = strip_newlines
    self.provide_blank = provide_blank
    self.comment_char = comment_char
