org.openbp.jaspira.gui.interaction
Class MultiTransferable

java.lang.Object
  extended by org.openbp.jaspira.gui.interaction.MultiTransferable
All Implemented Interfaces:
java.awt.datatransfer.Transferable

public class MultiTransferable
extends java.lang.Object
implements java.awt.datatransfer.Transferable

A multi transferable represents the composition of various transferables into a single transferable.

Author:
Stephan Moritz

Constructor Summary
MultiTransferable()
          Generates an empty MultiTransferable.
MultiTransferable(java.util.Collection transferables)
          Generates a new MultiTransferable from a collection of transferables.
MultiTransferable(java.awt.datatransfer.Transferable[] transferables)
          Generates a new MultiTransferable out from an array of transferables.
 
Method Summary
 void addTransferable(java.awt.datatransfer.Transferable transferable)
          Adds the given transferable to the structure.
 java.lang.Object getSafeTransferData(java.awt.datatransfer.DataFlavor flavor)
          Gets the transfer data in the desired format (convenience method that supresses exceptions).
 java.lang.Object getTransferData(java.awt.datatransfer.DataFlavor flavor)
          Returns an object which represents the data to be transferred.
 java.awt.datatransfer.DataFlavor[] getTransferDataFlavors()
          Returns an array of DataFlavor objects indicating the flavors the data can be provided in.
 boolean isDataFlavorSupported(java.awt.datatransfer.DataFlavor flavor)
          Returns whether or not the specified data flavor is supported for this object.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MultiTransferable

public MultiTransferable()
Generates an empty MultiTransferable.


MultiTransferable

public MultiTransferable(java.util.Collection transferables)
Generates a new MultiTransferable from a collection of transferables.

Parameters:
transferables - Transferables to be added

MultiTransferable

public MultiTransferable(java.awt.datatransfer.Transferable[] transferables)
Generates a new MultiTransferable out from an array of transferables.

Parameters:
transferables - Transferables to be added
Method Detail

addTransferable

public void addTransferable(java.awt.datatransfer.Transferable transferable)
Adds the given transferable to the structure.

Parameters:
transferable - Transferable to be added

getTransferDataFlavors

public java.awt.datatransfer.DataFlavor[] getTransferDataFlavors()
Returns an array of DataFlavor objects indicating the flavors the data can be provided in. The array should be ordered according to preference for providing the data (from most richly descriptive to least descriptive).

Specified by:
getTransferDataFlavors in interface java.awt.datatransfer.Transferable
Returns:
An array of data flavors in which this data can be transferred

isDataFlavorSupported

public boolean isDataFlavorSupported(java.awt.datatransfer.DataFlavor flavor)
Returns whether or not the specified data flavor is supported for this object.

Specified by:
isDataFlavorSupported in interface java.awt.datatransfer.Transferable
Parameters:
flavor - Requested flavor for the data
Returns:
Boolean indicating whether or not the data flavor is supported

getTransferData

public java.lang.Object getTransferData(java.awt.datatransfer.DataFlavor flavor)
                                 throws java.awt.datatransfer.UnsupportedFlavorException,
                                        java.io.IOException
Returns an object which represents the data to be transferred. The class of the object returned is defined by the representation class of the flavor.

Specified by:
getTransferData in interface java.awt.datatransfer.Transferable
Parameters:
flavor - requested flavor for the data; see DataFlavor#getRepresentationClass
Throws:
java.io.IOException - If the data is no longer available in the requested flavor
java.awt.datatransfer.UnsupportedFlavorException - If the requested data flavor is not supported

getSafeTransferData

public java.lang.Object getSafeTransferData(java.awt.datatransfer.DataFlavor flavor)
Gets the transfer data in the desired format (convenience method that supresses exceptions). You should call this method only if have previously checked if the flavor is supported by calling isDataFlavorSupported(java.awt.datatransfer.DataFlavor).

Parameters:
flavor - Flavor to get
Returns:
The desired object or null if the flavor is not supported or an i/o error has occurred. In the latter case, the method prints a stack trace to stderr.


Copyright © 2011. All Rights Reserved.