Author: markt Date: Mon Jun 26 17:20:46 2017 New Revision: 1799956 URL: http://svn.apache.org/viewvc?rev=1799956&view=rev Log: Reformat. No functional change.
Modified: tomcat/trunk/java/org/apache/catalina/mbeans/MBeanDumper.java Modified: tomcat/trunk/java/org/apache/catalina/mbeans/MBeanDumper.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/mbeans/MBeanDumper.java?rev=1799956&r1=1799955&r2=1799956&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/mbeans/MBeanDumper.java (original) +++ tomcat/trunk/java/org/apache/catalina/mbeans/MBeanDumper.java Mon Jun 26 17:20:46 2017 @@ -34,7 +34,6 @@ import org.apache.tomcat.util.ExceptionU /** * General helper to dump MBean contents to the log. - * */ public class MBeanDumper { @@ -42,14 +41,15 @@ public class MBeanDumper { private static final String CRLF = "\r\n"; + /** * The following code to dump MBeans has been copied from JMXProxyServlet. + * * @param mbeanServer the MBean server * @param names a set of object names for which to dump the info * @return a string representation of the MBeans */ - public static String dumpBeans(MBeanServer mbeanServer, Set<ObjectName> names) - { + public static String dumpBeans(MBeanServer mbeanServer, Set<ObjectName> names) { StringBuilder buf = new StringBuilder(); for (ObjectName oname : names) { buf.append("Name: "); @@ -57,26 +57,27 @@ public class MBeanDumper { buf.append(CRLF); try { - MBeanInfo minfo=mbeanServer.getMBeanInfo(oname); + MBeanInfo minfo = mbeanServer.getMBeanInfo(oname); // can't be null - I think - String code=minfo.getClassName(); + String code = minfo.getClassName(); if ("org.apache.commons.modeler.BaseModelMBean".equals(code)) { - code=(String)mbeanServer.getAttribute(oname, "modelerType"); + code = (String) mbeanServer.getAttribute(oname, "modelerType"); } buf.append("modelerType: "); buf.append(code); buf.append(CRLF); - MBeanAttributeInfo attrs[]=minfo.getAttributes(); - Object value=null; + MBeanAttributeInfo attrs[] = minfo.getAttributes(); + Object value = null; for (MBeanAttributeInfo attr : attrs) { - if (!attr.isReadable()) continue; + if (!attr.isReadable()) + continue; String attName = attr.getName(); - if ("modelerType".equals(attName)) continue; - if (attName.indexOf('=') >= 0 || - attName.indexOf(':') >= 0 || - attName.indexOf(' ') >= 0) { + if ("modelerType".equals(attName)) + continue; + if (attName.indexOf('=') >= 0 || attName.indexOf(':') >= 0 + || attName.indexOf(' ') >= 0) { continue; } @@ -86,33 +87,31 @@ public class MBeanDumper { Throwable cause = rme.getCause(); if (cause instanceof UnsupportedOperationException) { if (log.isDebugEnabled()) { - log.debug("Error getting attribute " + oname - + " " + attName, rme); + log.debug("Error getting attribute " + oname + " " + attName, rme); } } else if (cause instanceof NullPointerException) { if (log.isDebugEnabled()) { - log.debug("Error getting attribute " + oname - + " " + attName, rme); + log.debug("Error getting attribute " + oname + " " + attName, rme); } } else { - log.error("Error getting attribute " + oname + - " " + attName, rme); + log.error("Error getting attribute " + oname + " " + attName, rme); } continue; } catch (Throwable t) { ExceptionUtils.handleThrowable(t); - log.error("Error getting attribute " + oname + - " " + attName, t); + log.error("Error getting attribute " + oname + " " + attName, t); + continue; + } + if (value == null) { continue; } - if (value == null) continue; String valueString; try { Class<?> c = value.getClass(); if (c.isArray()) { int len = Array.getLength(value); - StringBuilder sb = new StringBuilder("Array[" + - c.getComponentType().getName() + "] of length " + len); + StringBuilder sb = new StringBuilder("Array[" + + c.getComponentType().getName() + "] of length " + len); if (len > 0) { sb.append(CRLF); } @@ -124,19 +123,17 @@ public class MBeanDumper { } } valueString = sb.toString(); - } - else if (TabularData.class.isInstance(value)) { + } else if (TabularData.class.isInstance(value)) { TabularData tab = TabularData.class.cast(value); StringJoiner joiner = new StringJoiner(CRLF); - joiner.add("TabularData[" - + tab.getTabularType().getRowType().getTypeName() - + "] of length " + tab.size()); + joiner.add( + "TabularData[" + tab.getTabularType().getRowType().getTypeName() + + "] of length " + tab.size()); for (Object item : tab.values()) { joiner.add(tableItemToString(item)); } valueString = joiner.toString(); - } - else { + } else { valueString = valueToString(value); } buf.append(attName); @@ -153,70 +150,73 @@ public class MBeanDumper { buf.append(CRLF); } return buf.toString(); - } + public static String escape(String value) { // The only invalid char is \n // We also need to keep the string short and split it with \nSPACE // XXX TODO - int idx=value.indexOf( "\n" ); - if( idx < 0 ) return value; + int idx = value.indexOf("\n"); + if (idx < 0) { + return value; + } - int prev=0; - StringBuilder sb=new StringBuilder(); - while( idx >= 0 ) { + int prev = 0; + StringBuilder sb = new StringBuilder(); + while (idx >= 0) { appendHead(sb, value, prev, idx); - - sb.append( "\\n\n "); - prev=idx+1; - if( idx==value.length() -1 ) break; - idx=value.indexOf('\n', idx+1); + sb.append("\\n\n "); + prev = idx + 1; + if (idx == value.length() - 1) + break; + idx = value.indexOf('\n', idx + 1); + } + if (prev < value.length()) { + appendHead(sb, value, prev, value.length()); } - if( prev < value.length() ) - appendHead( sb, value, prev, value.length()); return sb.toString(); } - private static void appendHead( StringBuilder sb, String value, int start, int end) { - if (end < 1) return; - int pos=start; - while( end-pos > 78 ) { - sb.append( value.substring(pos, pos+78)); - sb.append( "\n "); - pos=pos+78; + private static void appendHead(StringBuilder sb, String value, int start, int end) { + if (end < 1) { + return; + } + + int pos = start; + while (end - pos > 78) { + sb.append(value.substring(pos, pos + 78)); + sb.append("\n "); + pos = pos + 78; } - sb.append( value.substring(pos,end)); + sb.append(value.substring(pos, end)); } + private static String tableItemToString(Object item) { if (item == null) { return "\t" + "NULL VALUE"; } else { try { return "\t" + valueToString(item); - } - catch (Throwable t) { + } catch (Throwable t) { ExceptionUtils.handleThrowable(t); return "\t" + "NON-STRINGABLE VALUE"; } } } + private static String valueToString(Object value) { String valueString; if (CompositeData.class.isInstance(value)) { StringBuilder sb = new StringBuilder("{"); - String sep = ""; CompositeData composite = CompositeData.class.cast(value); Set<String> keys = composite.getCompositeType().keySet(); for (String key : keys) { - sb.append(sep) - .append(key) - .append("=") - .append(composite.get(key)); + sb.append(sep).append(key).append("=").append(composite.get(key)); sep = ", "; } sb.append("}"); --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org