code: public String fancyFormat() {
        StringWriter sw = new StringWriter();
        PrintWriter pw = new PrintWriter(sw);
        pw.println("[" + name + "]");
        pw.println("instanceName     : " + instanceName);   //MSI
        pw.println("skip-cache-attribute : " + skipCacheAttribute);
        pw.println("className      : " + className);
        //pw.println("name           : "+name);
        //pw.println("all names      : "+allNames);
        pw.println("sharing Policy : " + sharingPolicy + " "+                     // @A1C
                   (sharingPolicy==EntryInfo.NOT_SHARED?"NOT_SHARED":             // @A1A
                    sharingPolicy==EntryInfo.SHARED_PULL?"SHARED_PULL":           // @A1A
                    sharingPolicy==EntryInfo.SHARED_PUSH?"SHARED_PUSH":           // @A1A
                    sharingPolicy==EntryInfo.SHARED_PUSH_PULL?"SHARED_PUSH_PULL": // @A1A
                    "unknown" ) );                                                // @A1A
      if(properties != null && properties.size()>0) {   //ST-begin       
           Iterator it = properties.values().iterator();
           while (it.hasNext()) {
              pw.println(((Property) it.next()).fancyFormat(1));
  	   }
        }  								//ST-end
        for (int i = 0; cacheIds != null && i < cacheIds.length; i++) {
           pw.println("[CacheId " + i + "]");
           pw.println(cacheIds[i].fancyFormat(1));
        }
        for (int i = 0; dependencyIds != null && i < dependencyIds.length; i++) {
           pw.println("[Dependency " + i + "]");
           pw.println(dependencyIds[i].fancyFormat(1));
        }
        for (int i = 0; invalidations != null && i < invalidations.length; i++) {
           pw.println("[Invalidation " + i + "]");
           pw.println(invalidations[i].fancyFormat(1));
        }
        return sw.toString();
     }
docs: produces nice ascii text