@Nullable
  public static <T> T getData(Transferable transferable, Class<T> dataClass) {
    try {
      for (DataFlavor dataFlavor : transferable.getTransferDataFlavors()) {
        if (transferable.isDataFlavorSupported(dataFlavor)) {
          Object transferData = transferable.getTransferData(dataFlavor);
          if (dataClass.isInstance(transferData)) {
            return (T)transferData;
          }
        }
      }
    }
    catch (IOException e) {
    }
    catch (Exception e) {
      LOG.error(e);
    }
    return null;
  }
@Nullable
  public static <T> T getData(Transferable transferable, Class<T> dataClass)