def collectors(self, recurse=True, flags=<NUM_LIT:0>):
output = {}<EOL>if recurse and self.inherits():<EOL><INDENT>schema = orb.system.schema(self.inherits())<EOL>if not schema:<EOL><INDENT>raise orb.errors.ModelNotFound(schema=self.inherits())<EOL><DEDENT>else:<EOL><INDENT>iflags = (flags & ~orb.Collector.Flags.Virtual) if flags else ~orb.Collector.Flags.Virtual<EOL>output.update(schema.collectors(recurse=recurse, flags=iflags))<EOL><DEDENT><DEDENT>output.update({c.name(): c for c in self.__collectors.values() if not flags or c.testFlag(flags)})<EOL>return output<EOL>
Returns a list of the collectors for this instance.

:return     {<str> name: <orb.Collector>, ..}