com.gargoylesoftware.base.gui
Class DefaultComponentLoader

java.lang.Object
  extended by com.gargoylesoftware.base.gui.DefaultComponentLoader
All Implemented Interfaces:
ComponentLoader

public class DefaultComponentLoader
extends java.lang.Object
implements ComponentLoader

A default implementation of ComponentLoader that uses reflection to instantiate components.

Version:
$Revision: 1.6 $
Author:
Mike Bowler

Field Summary
private  java.lang.Class clazz_
           
private  boolean wrapInJScrollPane_
           
 
Constructor Summary
DefaultComponentLoader(java.lang.Class clazz)
          Create a new loader.
DefaultComponentLoader(java.lang.Class clazz, boolean wrapInJScrollPane)
          Create a new loader.
DefaultComponentLoader(java.lang.String className)
          Create a new loader.
 
Method Summary
protected  void assertNotNull(java.lang.String fieldName, java.lang.Object object)
          Throw an Exception if the specified object is null.
 java.awt.Component loadComponent()
          Load the component.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

clazz_

private final java.lang.Class clazz_

wrapInJScrollPane_

private final boolean wrapInJScrollPane_
Constructor Detail

DefaultComponentLoader

public DefaultComponentLoader(java.lang.String className)
                       throws java.lang.ClassNotFoundException
Create a new loader.

Parameters:
className - The name of the class that will be used to create the new object. This class must have a public no-arg constructor and must be an instance of java.awt.Component.
Throws:
java.lang.ClassNotFoundException - If the class cannot be found.

DefaultComponentLoader

public DefaultComponentLoader(java.lang.Class clazz)
Create a new loader.

Parameters:
clazz - The class that will be used to create the new object. This class must have a public no-arg constructor and must be an instance of java.awt.Component.

DefaultComponentLoader

public DefaultComponentLoader(java.lang.Class clazz,
                              boolean wrapInJScrollPane)
Create a new loader.

Parameters:
clazz - The class that will be used to create the new object. This class must have a public no-arg constructor and must be an instance of java.awt.Component.
wrapInJScrollPane - If true then the returned component will be a JScrollPane which contains the loaded component.
Method Detail

loadComponent

public java.awt.Component loadComponent()
                                 throws java.lang.Exception
Load the component.

Specified by:
loadComponent in interface ComponentLoader
Returns:
the loaded component.
Throws:
java.lang.Exception - If something went wrong during the creation of the component.

assertNotNull

protected final void assertNotNull(java.lang.String fieldName,
                                   java.lang.Object object)
Throw an Exception if the specified object is null.

Parameters:
fieldName - The name of the field that we are checking.
object - The value of the field that we are checking