def __str__()

in zktraffic/zab/quorum_packet.py [0:0]


  def __str__(self):
    def attributes():
      def valid(key, value):
        if not isinstance(value, int) and not isinstance(value, string_types):
          return False

        if key.isupper() or key.startswith("_") or "_literal" in key or key == "type":
          return False

        return True

      for key in dir(self):
        value = getattr(self, key)
        if valid(key, value):
          alt_key = "%s_literal" % key
          if hasattr(self, alt_key):
            value = getattr(self, alt_key)
          yield key, value

    parts = ["%s(" % self.__class__.__name__]
    for name, value in attributes():
        parts.append(" %s=%s," % (name, value))
    parts.append(")")

    return "\n".join(parts) + "\n"