':param obj: The object from which I need a unique string.
:return: A string with all the values from the get_eq_attrs() method
concatenated. This should represent the object in an unique
way.'

def __internal_get_eq_attrs_values(self, obj):

    if (type(obj).__name__ in dir(__builtin__)):
        return cpickle_dumps(obj)
    elif (obj is None):
        return cpickle_dumps(obj)
    elif isinstance(obj, DiskItem):
        result = ''
        for attr in obj.get_eq_attrs():
            value = getattr(obj, attr)
            result += self.__internal_get_eq_attrs_values(value)
        return result
    else:
        msg = 'Complex    classes    like    %s    need    to    inherit    from    DiskItem    to    be    stored.'
        raise Exception((msg % type(obj)))
