/**
   * Returns a string representation of this {@code OpenMBeanParameterInfoSupport} instance.
   *
   * <p>The string representation consists of the name of this class (i.e. {@code
   * javax.management.openmbean.OpenMBeanParameterInfoSupport}), the string representation of the
   * name and open type of the described parameter, the string representation of its default, min,
   * max and legal values and the string representation of its descriptor.
   *
   * <p>As {@code OpenMBeanParameterInfoSupport} instances are immutable, the string representation
   * for this instance is calculated once, on the first call to {@code toString}, and then the same
   * value is returned for subsequent calls.
   *
   * @return a string representation of this {@code OpenMBeanParameterInfoSupport} instance.
   */
  public String toString() {

    // Calculate the string value if it has not yet been done (ie
    // 1st call to toString())
    //
    if (myToString == null) myToString = OpenMBeanAttributeInfoSupport.toString(this);

    // return always the same string representation for this
    // instance (immutable)
    //
    return myToString;
  }