Package opennlp.tools.util

## Class DownloadUtil

- java.lang.Object
- - opennlp.tools.util.DownloadUtil

-     public class DownloadUtil
      extends Object

  This class facilitates the downloading of pretrained OpenNLP models.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static class` | `DownloadUtil.ModelType` | The type of model.

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `static Map<String,​Map<DownloadUtil.ModelType,​String>>` | `available_models` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `DownloadUtil()` |

  - ### Method Summary

    All Methods Static Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static <T extends BaseModel> T` | `downloadModel​(String language, DownloadUtil.ModelType modelType, Class<T> type)` | Triggers a download for the specified `DownloadUtil.ModelType`.
    `static <T extends BaseModel> T` | `downloadModel​(URL url, Class<T> type)` | Downloads a model from a `URL`.

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### available_models

          public static final Map<String,​Map<DownloadUtil.ModelType,​String>> available_models

  - ### Constructor Detail

    - #### DownloadUtil

          public DownloadUtil()

  - ### Method Detail

    - #### downloadModel

          public static <T extends BaseModel> T downloadModel​(String language,
                                                              DownloadUtil.ModelType modelType,
                                                              Class<T> type)
                                                       throws IOException

      Triggers a download for the specified `DownloadUtil.ModelType`.
      Type Parameters:
        `T` - The generic type which is a subclass of `BaseModel`.
      Parameters:
        `language` - The ISO language code of the requested model.
        `modelType` - The `type` of model.
        `type` - The class of the resulting model.
      Returns:
        A model instance of type `DownloadUtil`.
      Throws:
        `IOException` - Thrown if IO errors occurred or the model is invalid.

    - #### downloadModel

          public static <T extends BaseModel> T downloadModel​(URL url,
                                                              Class<T> type)
                                                       throws IOException

      Downloads a model from a `URL`.

      The model is saved to an `.opennlp/` directory located in the user's home directory. This directory will be created if it does not already exist. If a model to be downloaded already exists in that directory, the model will not be re-downloaded.

      Type Parameters:
        `T` - The generic type which is a subclass of `BaseModel`.
      Parameters:
        `url` - The model's `URL`.
        `type` - The class of the resulting model `DownloadUtil`.
      Returns:
        A model instance of type `DownloadUtil`.
      Throws:
        `IOException` - Thrown if the model cannot be downloaded.