@Override
 public void onFailure(Throwable caught) {
   final SafeHtml message =
       SafeHtmlUtils.fromTrustedString(
           appearance.diskResourceDoesNotExist(value.getDisplayValue()));
   announcer.schedule(new ErrorAnnouncementConfig(message, true, 3000));
 }
  @Override
  public void onAnalysisParamValueSelected(AnalysisParamValueSelectedEvent event) {
    final AnalysisParameter value = event.getValue();

    if (!((Input.equals(value.getType())
        || FileInput.equals(value.getType())
        || FolderInput.equals(value.getType())
        || FileFolderInput.equals(value.getType())
        || MultiFileSelector.equals(value.getType())))) {
      return;
    }
    String infoType = value.getInfoType();
    if (infoType.equalsIgnoreCase("ReferenceGenome")
        || infoType.equalsIgnoreCase("ReferenceSequence")
        || infoType.equalsIgnoreCase("ReferenceAnnotation")) {
      return;
    }

    final File hasPath = factory.file().as();
    hasPath.setPath(value.getDisplayValue());
    final FastMap<TYPE> typeFastMap =
        diskResourceUtil.asStringPathTypeMap(Lists.newArrayList(hasPath), TYPE.FILE);
    diskResourceServiceAsyncProvider.get(
        new AsyncCallback<DiskResourceServiceFacade>() {
          @Override
          public void onFailure(Throwable caught) {
            ErrorHandler.post(caught);
          }

          @Override
          public void onSuccess(DiskResourceServiceFacade service) {
            service.getStat(
                typeFastMap, new GetStatCallback(value, eventBus, announcer, appearance));
          }
        });
  }
 @Override
 public void onSuccess(FastMap<DiskResource> result) {
   eventBus.fireEvent(
       new ShowFilePreviewEvent((File) result.get(value.getDisplayValue()), null));
 }
 @Override
 public String getKey(AnalysisParameter item) {
   return item.getId() + item.getDisplayValue();
 }