<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def reload_component(self, component):
 """ Reload given Component module. Usage:: True True <tests_component_a.TestsComponentA object at 0x17b4890> True <tests_component_a.TestsComponentA object at 0x17b0d70> :param component: Component name. :type component: unicode :return: Reload success. :rtype: bool """


        dependents = list(reversed(self.list_dependents(component)))
        dependents.append(component)

        for dependent in dependents:
            profile = self.__components[dependent]
            module = __import__(profile.package)
            reload(module)
            object = profile.attribute in dir(module) and getattr(module, profile.attribute) or None
            if object and inspect.isclass(object):
                for type in self.__categories.itervalues():
                    if type.__name__ in (base.__name__ for base in object.__bases__):
                        instance = object(name=profile.name)
                        profile.module = module
                        profile.interface = instance
                        LOGGER.info("{0} | '{1}' Component has been reloaded!".format(
                            self.__class__.__name__, profile.name))
        return True