FileDocCategorySizeDatePackage
MBeanInfoStringifier.javaAPI DocGlassfish v2 API5246Fri May 04 22:31:06 BST 2007com.sun.appserv.management.util.jmx.stringifier

MBeanInfoStringifier

public class MBeanInfoStringifier extends MBeanFeatureInfoStringifier implements com.sun.appserv.management.util.stringifier.Stringifier

Fields Summary
public static final MBeanInfoStringifier
DEFAULT
Constructors Summary
public MBeanInfoStringifier()

	
		
	
	
		super();
	
public MBeanInfoStringifier(MBeanFeatureInfoStringifierOptions options)

		super( options );
	
Methods Summary
MBeanAttributeInfoStringifiergetMBeanAttributeInfoStringifier(MBeanFeatureInfoStringifierOptions options)

		return( new MBeanAttributeInfoStringifier(options) );
	
MBeanConstructorInfoStringifiergetMBeanConstructorInfoStringifier(MBeanFeatureInfoStringifierOptions options)

		return( new MBeanConstructorInfoStringifier(options) );
	
MBeanNotificationInfoStringifiergetMBeanNotificationInfoStringifier(MBeanFeatureInfoStringifierOptions options)

		return( new MBeanNotificationInfoStringifier(options) );
	
MBeanOperationInfoStringifiergetMBeanOperationInfoStringifier(MBeanFeatureInfoStringifierOptions options)

		return( new MBeanOperationInfoStringifier(options) );
	
public java.lang.Stringstringify(java.lang.Object o)

		String			result	= "";
		final MBeanInfo	info	= (MBeanInfo)o;
		
		final MBeanOperationInfo []		operations		= info.getOperations();
		final MBeanAttributeInfo []		attributes		= info.getAttributes();
		final MBeanConstructorInfo []	constructors	= info.getConstructors();
		final MBeanNotificationInfo []	notifications	= info.getNotifications();
		final String    description = info.getDescription();
		
		result	= "Summary: " +
					operations.length + " operations, " +
					attributes.length + " attributes, " +
					constructors.length + " constructors, " +
					notifications.length + " notifications" +
					(description == null ? "" : ", \"" + description + "\"" );
		
		final MBeanFeatureInfoStringifierOptions options	=
				new MBeanFeatureInfoStringifierOptions( true, "," );
		
		// Do formal terms like "Attributes" need to be I18n?
		// Probabably not as they are part of a specification.
		result	= result + "\n\n- Attributes -" +
					stringifyArray( attributes, getMBeanAttributeInfoStringifier( options ) );
	
		result	= result + "\n\n- Operations -" +
					stringifyArray( operations, getMBeanOperationInfoStringifier(options) );
	
		result	= result + "\n\n- Constructors -" +
					stringifyArray( constructors, getMBeanConstructorInfoStringifier(options) );
	
		result	= result + "\n\n- Notifications -" + 
					stringifyArray( notifications, getMBeanNotificationInfoStringifier(options) );
		
		return( result );
			
	
private java.lang.StringstringifyArray(java.lang.Object[] a, com.sun.appserv.management.util.stringifier.Stringifier stringifier)

		String	temp	= "";
		
		if ( a.length != 0 )
		{
			temp	= "\n" + ArrayStringifier.stringify( a, "\n", stringifier);
		}
		return( temp );