de.unihalle.informatik.Alida.dataio.provider.swing
Class ALDCollectionDataIOSwing

java.lang.Object
  extended by de.unihalle.informatik.Alida.dataio.provider.swing.ALDCollectionDataIOSwing
All Implemented Interfaces:
ALDDataIO, ALDDataIOSwing

@ALDDataIOProvider
public class ALDCollectionDataIOSwing
extends java.lang.Object
implements ALDDataIOSwing

Class for generic loading/saving of collections from/to GUI in Alida.

Author:
moeller

Nested Class Summary
private  class ALDCollectionDataIOSwing.CollectionConfigButton
          GUI element for configuring collections.
(package private)  class ALDCollectionDataIOSwing.CollectionConfigWindow
          Collection configuration window.
private  class ALDCollectionDataIOSwing.CollectionShowButton
          GUI element for displaying collections.
 
Constructor Summary
ALDCollectionDataIOSwing()
           
 
Method Summary
 javax.swing.JComponent createGUIElement(java.lang.reflect.Field field, java.lang.Class<?> cl, java.lang.Object obj)
          Generic reading of collections.
 java.util.Collection<java.lang.Class<?>> providedClasses()
          Interface method to announce class for which IO is provided for.
 java.lang.Object readData(java.lang.reflect.Field field, java.lang.Class<?> cl, javax.swing.JComponent guiElement)
          Interface method for getting parameter values via a GUI element.
 void setValue(java.lang.reflect.Field field, java.lang.Class<?> cl, javax.swing.JComponent guiElement, java.lang.Object value)
          Interface method for setting new parameter values in GUI.
 javax.swing.JComponent writeData(java.lang.Object obj)
          Interface method for displaying an object in the GUI.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ALDCollectionDataIOSwing

public ALDCollectionDataIOSwing()
Method Detail

createGUIElement

public javax.swing.JComponent createGUIElement(java.lang.reflect.Field field,
                                               java.lang.Class<?> cl,
                                               java.lang.Object obj)
Generic reading of collections.

Specified by:
createGUIElement in interface ALDDataIOSwing
cl - Class of object to be returned.
obj - The value of this object to be set as inital value
Returns:
GUI component to input values.

providedClasses

public java.util.Collection<java.lang.Class<?>> providedClasses()
Interface method to announce class for which IO is provided for.

Specified by:
providedClasses in interface ALDDataIO
Returns:
Collection of classes provided.

readData

public java.lang.Object readData(java.lang.reflect.Field field,
                                 java.lang.Class<?> cl,
                                 javax.swing.JComponent guiElement)
                          throws ALDDataIOProviderException
Description copied from interface: ALDDataIOSwing
Interface method for getting parameter values via a GUI element.

Specified by:
readData in interface ALDDataIOSwing
Parameters:
field - Field associated with object to be returned.
cl - Class of object to be returned.
guiElement - Component from where to read data.
Returns:
Object read from source, might be null.
Throws:
ALDDataIOProviderException

setValue

public void setValue(java.lang.reflect.Field field,
                     java.lang.Class<?> cl,
                     javax.swing.JComponent guiElement,
                     java.lang.Object value)
              throws ALDDataIOProviderException
Description copied from interface: ALDDataIOSwing
Interface method for setting new parameter values in GUI.

Specified by:
setValue in interface ALDDataIOSwing
Parameters:
field - Field of parameter object to be handled.
cl - Class of parameter object to be handled.
guiElement - Corresponding GUI element.
value - New value of the parameter.
Throws:
ALDDataIOProviderException

writeData

public javax.swing.JComponent writeData(java.lang.Object obj)
                                 throws ALDDataIOProviderException
Description copied from interface: ALDDataIOSwing
Interface method for displaying an object in the GUI.

Specified by:
writeData in interface ALDDataIOSwing
Parameters:
obj - Object to be displayed or saved.
Throws:
ALDDataIOProviderException