You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2017/06/26 17:20:47 UTC
svn commit: r1799956 -
/tomcat/trunk/java/org/apache/catalina/mbeans/MBeanDumper.java
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-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org