code: def __get__(self, obj, type=None):
      """Called on attribute access on the class or instance."""
      if obj is None:
          # Being called on the class, return the original function.
          # This way, introspection works on the class.
          return self.getter
  
      val = self.getter(obj)
      # print "** setattr_on_read - loading '%s'" % self.name  # dbg
      setattr(obj, self.name, val)
      return val
  
label_desc: Use image node_id 2 for calling the OneTimeProperty obj's underlying member method code with example usage: obj.__get__(obj, type) and returns: val, self