Class Filedownload


  • public class Filedownload
    extends org.zkoss.zul.Filedownload
    More filedownload utilities, such as resumable filedownload.

    Available in ZK EE

    Resumable Download

    By resumable we mean the user can bookmark the URL and download it later (and even resume the download in the middle). On the other hand, the download URL of Filedownload becomes obsolete as soon as the desktop (or session) is gone.

    Since the resumable download can be used in any session or without any session, or with a different client (such flashget), you might want to limit the download under certain condition.

    First, there are two library properties that can control the number of allowed resumable downloads.

    org.zkoss.zk.download.resumable.lifetime
    Specifies when the download URL will be expired (unit: second).
    Default: 14400 (i.e., 4 hours).
    org.zkoss.zk.download.resumable.maxsize
    Specifies the maximal allowed number of resumable downloads.
    Default: 4096.

    Second, you can have more control by implementing FiledownloadListener and specify it as a library property called org.zkoss.zkmax.zul.FiledownloadListener.class. For example, you can specify the following in zk.xml:

    <library-property>
      <name>org.zkoss.zkmax.zul.FiledownloadListener.class</name>
      <value>com.foo.MyDownloadListener</value>
    </library-property>
    
    Since:
    3.5.0
    Author:
    tomyeh
    See Also:
    FiledownloadListener, Library.setProperty(java.lang.String, java.lang.String)
    • Nested Class Summary

      • Nested classes/interfaces inherited from class org.zkoss.zul.Filedownload

        org.zkoss.zul.Filedownload.DownloadItem
    • Constructor Summary

      Constructors 
      Constructor Description
      Filedownload()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static void saveResumable​(java.io.File file, java.lang.String contentType, java.lang.String data)
      Open a download dialog to save the specified file at the client.
      static void saveResumable​(java.lang.String path, java.lang.String contentType, java.lang.String data)
      Open a download dialog to save the resource of the specified path at the client.
      static void saveResumable​(java.net.URL url, java.lang.String contentType, java.lang.String data)
      Open a download dialog to save the resource of the specified URL at the client.
      • Methods inherited from class org.zkoss.zul.Filedownload

        save, save, save, save, save, save, save, save, save, saveAsZip, saveAsZip, saveAsZip, saveMultiple, saveMultiple, saveMultiple
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Filedownload

        public Filedownload()
    • Method Detail

      • saveResumable

        public static void saveResumable​(java.io.File file,
                                         java.lang.String contentType,
                                         java.lang.String data)
        Open a download dialog to save the specified file at the client. Unlike Filedownload.save(File,String), the download URL is resumable.
        Parameters:
        file - the file to download to the client
        contentType - the content type, e.g., application/pdf. Unlike other save methods, it is optional. If null, the file name's extension is used to determine the content type.
        data - the application-specific data to be passed to FiledownloadListener.onDownload(org.zkoss.util.media.Media, java.lang.Object, java.lang.String).
      • saveResumable

        public static void saveResumable​(java.net.URL url,
                                         java.lang.String contentType,
                                         java.lang.String data)
        Open a download dialog to save the resource of the specified URL at the client. Unlike Filedownload.save(File,String), the download URL is resumable.
        Parameters:
        url - the URL to get the resource
        contentType - the content type, e.g., application/pdf. Unlike other save methods, it is optional. If null, the file name's extension is used to determine the content type.
        data - the application-specific data to be passed to FiledownloadListener.onDownload(org.zkoss.util.media.Media, java.lang.Object, java.lang.String).
      • saveResumable

        public static void saveResumable​(java.lang.String path,
                                         java.lang.String contentType,
                                         java.lang.String data)
        Open a download dialog to save the resource of the specified path at the client. Unlike Filedownload.save(File,String), the download URL is resumable.
        Parameters:
        path - the path of the resource. It must be retrievable by use of WebApp.getResource(java.lang.String).
        contentType - the content type, e.g., application/pdf. Unlike other save methods, it is optional. If null, the file name's extension is used to determine the content type.
        data - the application-specific data to be passed to FiledownloadListener.onDownload(org.zkoss.util.media.Media, java.lang.Object, java.lang.String).