def _generate_object_info(self, lom_object): property_names = [] if isinstance(lom_object, cs_base_classes()): property_names = ifilter(lambda prop: not prop.startswith('_'), dir(lom_object)) else: property_names = EXPOSED_TYPE_PROPERTIES.get(type(lom_object), []) for name in property_names: self._generate_property_info(name, lom_object)