FileDocCategorySizeDatePackage
DottedNamesTest.javaAPI DocGlassfish v2 API8645Fri May 04 22:23:54 BST 2007com.sun.enterprise.management.config

DottedNamesTest

public final class DottedNamesTest extends com.sun.enterprise.management.AMXTestBase

Fields Summary
Constructors Summary
public DottedNamesTest()

	
Methods Summary
private voidcheckAttribute(javax.management.Attribute attr)

		assert( attr != null );
		
		final Object value	= attr.getValue();
		if ( value instanceof Attribute )
		{
			warning( "Is value of " + attr.getName() + " really another Attribute? => " +
				toString( value ) );
		}
	
private voidcheckResultsFromGet(java.lang.String[] names, java.lang.Object[] results)

		for( int i = 0; i < results.length; ++i )
		{
			final Object	result	= results[ i ];
			
			if ( result == null )
			{
				warning( "Dotted name has null result: " + names[ i ] );
			}
			else if ( ! (result instanceof Attribute) )
			{
				warning( "Dotted name " + names[ i ] + " could not be obtained: " + result );
			}
		}
	
private voidcheckResultsFromWildGet(java.lang.Object[] results)

		for( int i = 0; i < results.length; ++i )
		{
			final Object	result	= results[ i ];
			
			if ( result == null )
			{
				warning( "null result from dottedNameGet( \"*\" )" );
			}
			else if ( ! (result instanceof Attribute) )
			{
				warning( "non-Attribute result from dottedNameGet( \"*\" ): " + result );
			}
			else
			{
				// it's an Attribute
				final Attribute attr	= (Attribute)result;
				checkAttribute( (Attribute)result );
			}
		}
	
private java.lang.String[]getAllNames(com.sun.appserv.management.base.DottedNames dottedNames)

		final Attribute[] attrs	= (Attribute[])dottedNames.dottedNameGet( "*" );
		final String[]	names	= new String[ attrs.length ];
		for( int i = 0; i < names.length; ++i )
		{
			names[ i ]	= attrs[ i ].getName();
		}
		
		return( names );
	
public voidtestConfigDottedNameSet()
Test that we can set (change) a dotted name.

		final long	start	= now();
		
		final ConfigDottedNames	dottedNames	= getDomainRoot().getConfigDottedNames();
		
		final String	target	= "domain.locale";
		final Object	result	= dottedNames.dottedNameGet( target );
		
		final Attribute	localeAttr	= (Attribute)dottedNames.dottedNameGet( target );
		checkAttribute( localeAttr );
		
		final String	locale	= (String)localeAttr.getValue();
		
		// set to a new value
		Object[]	results	= dottedNames.dottedNameSet( new String[] { target + "=dummy_locale" } );
		assert( results.length == 1 );
		checkAttribute( (Attribute)results[ 0 ] );
		
		// change back to previous value
		final String	restoreString	= target + "=" + (locale == null ? "" : locale);
		results	= dottedNames.dottedNameSet( new String[] { restoreString } );
		
		final Attribute	finalAttr	= (Attribute)dottedNames.dottedNameGet( target );
		assert( (finalAttr.getValue() == null && localeAttr.getValue() == null) ||
			finalAttr.getValue().equals( localeAttr.getValue() ) );
		printElapsed( "testConfigDottedNameSet", start );
	
public voidtestConfigRefresh()

		final long	start	= now();
		getDomainRoot().getConfigDottedNames().refresh();
		printElapsed( "testConfigRefresh", start );
	
public voidtestGetAllConfigDottedNames()

		final long	start	= now();
		final ConfigDottedNames	dottedNames	= getDomainRoot().getConfigDottedNames();
		
		final String[]	names	= getAllNames( dottedNames );
		
		final Object[] results	= dottedNames.dottedNameGet( names );
		
		checkResultsFromGet( names, results );
		printElapsed( "testGetAllConfigDottedNames", start );
	
public voidtestGetAllMonitoringDottedNames()

		if ( checkNotOffline( "testMonitoringRefresh" ) )
		{
		    final MonitoringDottedNames	dottedNames	= getDomainRoot().getMonitoringDottedNames();
    		final long	start	= now();
    		final String[]	names	= getAllNames( dottedNames );
    		
    		final Object[] results	= dottedNames.dottedNameGet( names );
    		
    		checkResultsFromGet( names, results );
    		printElapsed( "testGetAllMonitoringDottedNames", start );
		}
	
private inttestList(com.sun.appserv.management.base.DottedNames dottedNames, java.lang.String dottedName)

		final Object[]	results	= dottedNames.dottedNameList( new String[] { dottedName } );
		
		//trace( dottedName + ": " + toString( results ) );
		for( int i = 0; i < results.length; ++i )
		{
			testList( dottedNames, (String)results[ i ] );
		}

		return( results.length );
	
public voidtestMonitoringRefresh()

		if ( checkNotOffline( "testMonitoringRefresh" ) )
		{
		    final MonitoringDottedNames	dottedNames	= getDomainRoot().getMonitoringDottedNames();
		
		    final long	start	= now();
		    dottedNames.refresh();
		    printElapsed( "testMonitoringRefresh", start );
		}
	
public voidtestRecursiveConfigDottedNameList()

		final long	start	= now();
		final ConfigDottedNames	dottedNames	= getDomainRoot().getConfigDottedNames();
		
		final int	numFound	= testList( dottedNames, "domain" );
		assert( numFound >= 4 );	// should be at least 4.
		printElapsed( "testRecursiveConfigDottedNameList", start );
	
public voidtestRecursiveMonitoringDottedNameList()

		if ( checkNotOffline( "testRecursiveMonitoringDottedNameList" ) )
		{
		    final MonitoringDottedNames	dottedNames	= getDomainRoot().getMonitoringDottedNames();
		
    		final long	start	= now();
    		
    		final int	numFound	= testList( dottedNames, "server" );
    		assert( numFound >= 4 );	// should be at least 4.\
    		
    		testList( dottedNames, "*" );
    		
    		printElapsed( "testRecursiveMonitoringDottedNameList", start );
		}
	
public voidtestWildGetAllConfigDottedNames()

		final long	start	= now();
		final ConfigDottedNames	dottedNames	= getDomainRoot().getConfigDottedNames();
		
		final Attribute[] results	= (Attribute[])dottedNames.dottedNameGet( "*" );
		checkResultsFromWildGet( results );
		printElapsed( "testWildGetAllConfigDottedNames", start );
	
public voidtestWildGetAllMonitoringDottedNames()

		if ( checkNotOffline( "testMonitoringRefresh" ) )
		{
    		final long	start	= now();
    		final MonitoringDottedNames	dottedNames	= getDomainRoot().getMonitoringDottedNames();
    		final Attribute[] results	= (Attribute[])dottedNames.dottedNameGet( "*" );
    		checkResultsFromWildGet( results );
    		printElapsed( "testWildGetAllMonitoringDottedNames", start );
		}