01 /**
02 *
03 */
04 package gate.gui.ontology;
05
06 import gate.creole.ontology.OResource;
07
08 import java.awt.datatransfer.DataFlavor;
09 import java.awt.datatransfer.Transferable;
10 import java.awt.datatransfer.UnsupportedFlavorException;
11 import java.io.IOException;
12
13 /**
14 * @author niraj
15 *
16 */
17 public class OResourceNode implements Transferable {
18
19 /** flavor used for drag and drop */
20 final public static DataFlavor ORESOURCE_NODE_FLAVOR = new DataFlavor(
21 OResourceNode.class, "OResource Node");
22
23 static DataFlavor flavors[] = {ORESOURCE_NODE_FLAVOR};
24
25 private OResource resource;
26
27 public OResourceNode(OResource resource) {
28 super();
29 this.resource = resource;
30 }
31
32 /*
33 * (non-Javadoc)
34 *
35 * @see java.awt.datatransfer.Transferable#getTransferDataFlavors()
36 */
37 public DataFlavor[] getTransferDataFlavors() {
38 return flavors;
39 }
40
41 /*
42 * (non-Javadoc)
43 *
44 * @see java.awt.datatransfer.Transferable#isDataFlavorSupported(java.awt.datatransfer.DataFlavor)
45 */
46 public boolean isDataFlavorSupported(DataFlavor df) {
47 return df.equals(ORESOURCE_NODE_FLAVOR);
48 }
49
50 /*
51 * (non-Javadoc)
52 *
53 * @see java.awt.datatransfer.Transferable#getTransferData(java.awt.datatransfer.DataFlavor)
54 */
55 public Object getTransferData(DataFlavor df)
56 throws UnsupportedFlavorException, IOException {
57 if(df.equals(ORESOURCE_NODE_FLAVOR)) {
58 return this;
59 }
60 else throw new UnsupportedFlavorException(df);
61 }
62
63 public OResource getResource() {
64 return resource;
65 }
66
67 }
|