@Override
  public DLEditFileEntryDisplayContext getDLEditFileEntryDisplayContext(
      HttpServletRequest request, HttpServletResponse response, FileEntry fileEntry) {

    DLEditFileEntryDisplayContext dlEditFileEntryDisplayContext =
        new DefaultDLEditFileEntryDisplayContext(request, response, fileEntry);

    for (DLDisplayContextFactory dlDisplayContextFactory : getDisplayContextFactories()) {

      dlEditFileEntryDisplayContext =
          dlDisplayContextFactory.getDLEditFileEntryDisplayContext(
              dlEditFileEntryDisplayContext, request, response, fileEntry);
    }

    return dlEditFileEntryDisplayContext;
  }
  @Override
  public DLViewFileVersionDisplayContext getDLViewFileVersionDisplayContext(
      HttpServletRequest request, HttpServletResponse response, FileVersion fileVersion) {

    DLViewFileVersionDisplayContext dlViewFileVersionDisplayContext =
        new DefaultDLViewFileVersionDisplayContext(request, response, fileVersion);

    if (fileVersion == null) {
      return dlViewFileVersionDisplayContext;
    }

    for (DLDisplayContextFactory dlDisplayContextFactory : getDisplayContextFactories()) {

      dlViewFileVersionDisplayContext =
          dlDisplayContextFactory.getDLViewFileVersionDisplayContext(
              dlViewFileVersionDisplayContext, request, response, fileVersion);
    }

    return dlViewFileVersionDisplayContext;
  }
  @Override
  public DLViewFileVersionDisplayContext getDLViewFileVersionDisplayContext(
      HttpServletRequest request, HttpServletResponse response, FileShortcut fileShortcut) {

    try {
      DLViewFileVersionDisplayContext dlViewFileVersionDisplayContext =
          new DefaultDLViewFileVersionDisplayContext(request, response, fileShortcut);

      if (fileShortcut == null) {
        return dlViewFileVersionDisplayContext;
      }

      for (DLDisplayContextFactory dlDisplayContextFactory : getDisplayContextFactories()) {

        dlViewFileVersionDisplayContext =
            dlDisplayContextFactory.getDLViewFileVersionDisplayContext(
                dlViewFileVersionDisplayContext, request, response, fileShortcut);
      }

      return dlViewFileVersionDisplayContext;
    } catch (PortalException pe) {
      throw new SystemException(pe);
    }
  }