myfaces-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Prakash Udupa <prakash.ud...@oracle.com>
Subject [TRINIDAD] [API] [TRINIDAD-2473] Improve diagnostic support for resource bundle feature in skinning framework
Date Tue, 03 Jun 2014 20:28:41 GMT
HI,

While needing to add more diagnostic messages to debug skinning issues, we needed quite a
few toString() implementations 
that needed these common aspects:

1. Add information about the class - class name and identity hash code
2. Add the rudimentary field-value state from the objects of the class
3. Formatting needed to make the string representations uniform.

Proposal is to add a utility class (API) "ToStringHelper" that takes care of this requirement.
Please review the API and 
discuss here if you have comments.

API proposal:
==========

package org.apache.myfaces.trinidad.util;

/**
  * Helper class to build strings for diagnostic log messages, and in toString() implementations.
  * This helper class takes care of few niceties' like:
  *  1. Adding the identity (classname and hashcode) of an object
  *  2. Adding fields and values of an object
  *  3. Formatting in string in JSON style
  *  4. Adopts a builder pattern, hence easy to use
  *
  */
public final class ToStringHelper
{
   /**
    * Zero arg constructor
    */
   public ToStringHelper()

   /**
    * Constructor that takes in the object whose information is to be added to the string
    * @param object The object whose classname and hashcode is to be included in the string
    */
   public ToStringHelper(Object object);

   /**
    * Appends the field name and value (as returned by 'toString()' of the supplied value
object),
    *  formatting it in JSON style
    * @param fieldName The name of the field to append
    * @param value The value object of the field to append
    * @return The helper object after appending
    */
   public ToStringHelper append(String fieldName, Object value);
}

Thanks,
Prakash

Mime
View raw message