def __init__(self, object_type: Type[T], obj_on_filesystem: PersistedObject, parser: _BaseParser,<EOL>logger: Logger, accept_union_types: bool = False):
super(_BaseParsingPlan, self).__init__(object_type, obj_on_filesystem, parser,<EOL>accept_union_types=accept_union_types)<EOL>check_var(logger, var_types=Logger, var_name='<STR_LIT>', enforce_not_none=False)<EOL>self.logger = logger<EOL>
Constructor like in PersistedObject, but with an additional logger.

:param object_type:
:param obj_on_filesystem:
:param parser:
:param logger: