@Override
	    public void drop(DropTargetDropEvent event) {

	        // Accept copy drops
	        event.acceptDrop(DnDConstants.ACTION_COPY);

	        // Get the transfer which can provide the dropped item data
	        Transferable transferable = event.getTransferable();

	        // Get the data formats of the dropped item
	        DataFlavor[] flavors = transferable.getTransferDataFlavors();

	        // Loop through the flavors
	        for (DataFlavor flavor : flavors) {

	            try {

	                // If the drop items are files
	                if (flavor.isFlavorJavaFileListType()) {

	                    // Get all of the dropped files
	                		
	                	
						@SuppressWarnings("unchecked")
						List<File> files =  (List<File>) transferable.getTransferData(flavor);
	                	
	                    // Loop them through
	                    for (File file : files) {

	                        // Print out the file path
	                        System.out.println("File path is '" + file.getPath() + "'.");

	                    }

	                }
	                
	            } catch (Exception e) {

	                // Print out the error stack
	                e.printStackTrace();

	            }
	        }

	        // Inform that the drop is complete
	        event.dropComplete(true);

	    }