|
What this is
Other links
The source code
/*
* Sun Public License Notice
*
* The contents of this file are subject to the Sun Public License
* Version 1.0 (the "License"). You may not use this file except in
* compliance with the License. A copy of the License is available at
* http://www.sun.com/
*
* The Original Code is NetBeans. The Initial Developer of the Original
* Code is Sun Microsystems, Inc. Portions Copyright 1997-2001 Sun
* Microsystems, Inc. All Rights Reserved.
*/
package org.netbeans.mdrshell;
import java.util.Collection;
import java.util.Iterator;
import java.io.PrintStream;
/** Helper singleton for StringBuffer
*
* @author Petr Hrebejk
* @version
*/
class Support {
/** Support is a singleton.
*/
private Support() {
}
/** Aligns the StringBuffer to length given by position
*/
public static void ensurePosition( StringBuffer sb, int position ) {
if ( sb.length() < position ) {
while ( sb.length() < position ) {
sb.append( " " );
}
}
else if ( sb.length() > position ) {
sb.setLength( position );
}
}
/** Default print function for results of commands.
*/
public static void defaultPrint( PrintStream ps, Object object ) {
defaultPrint( ps, 0, object );
}
/** Default print function for results of commands at given position on
* line.
*/
public static void defaultPrint( PrintStream ps, int offset, Object object ) {
if ( object == null ) {
ps.println("null");
return;
}
if ( object instanceof java.util.Iterator ) {
printIndent( ps, offset );
ps.print( "ITERATOR : {" );
for( Iterator it = (Iterator)object; it.hasNext(); ) {
defaultPrint( ps, offset + 2, it.next() );
}
ps.println();
printIndent( ps, offset );
ps.println( "} // end of ITERATOR" );
}
else if ( object.getClass().isArray() ) {
printIndent( ps, offset );
ps.print( "ARRAY : [" );
for ( int i = 0; i < java.lang.reflect.Array.getLength( object ); i++ ) {
//printIndent( ps, offset );
defaultPrint( ps, offset + 2, java.lang.reflect.Array.get( object, i ) );
//ps.println( java.lang.reflect.Array.get( object, i ).toString() );
}
ps.println();
printIndent( ps, offset );
ps.println( "] // end of ARRAY" );
}
else if ( object instanceof Throwable ) {
((Throwable)object).printStackTrace();
}
else if ( object instanceof Collection ) {
printIndent( ps, offset );
ps.print( "COLLECTION : {" );
for( Iterator it = ((Collection)object).iterator(); it.hasNext(); ) {
defaultPrint( ps, offset + 2, it.next() );
}
ps.println();
printIndent( ps, offset );
ps.println( "} // end of COLLECTION" );
}
else {
printIndent( ps, offset );
ps.println( object.toString() );
}
}
private static void printIndent( PrintStream ps, int indent ) {
for( ; indent > 0; indent -- ) {
ps.print( " " );
}
}
}
|
| ... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2024 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.