util.io

## Class Mirror

- java.lang.Object
- - util.io.Mirror

-     public class Mirror
      extends java.lang.Object

  Author:
    Til Schneider, www.murfman.de

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `static int` | `DEFAULT_WEIGHT` The default weight of a mirror
    `static java.lang.String` | `MIRROR_LIST_FILE_NAME` The name extension of mirror files
    `static Localizer` | `mLocalizer` The localizer for this class.

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `Mirror(java.lang.String url)` Creates an instance with the given URL and the default weight for this mirror.
    `Mirror(java.lang.String url, int weight)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `static Mirror` | `chooseUpToDateMirror(Mirror[] mirrorArr, ProgressMonitor monitor, java.lang.String name, java.lang.String id, java.lang.Class caller, java.lang.String additionalErrorMsg)` Chooses a up to date mirror.
    `static Mirror` | `chooseWorkingMirror(Mirror[] mirrorArr, ProgressMonitor monitor, java.lang.String name, java.lang.String id, java.lang.Class caller, java.lang.String additionalErrorMsg, int timeout)` Chooses a mirror that can be connected to.
    `boolean` | `equals(java.lang.Object obj)`
    `java.lang.String` | `getUrl()` Gets the URL of this Mirror.
    `int` | `getWeight()` Gets the weight of this Mirror.
    `int` | `hashCode()`
    `static Mirror[]` | `loadMirrorList(java.io.File file, java.lang.String[] mirrorUrlArr, Mirror[] serverDefindedMirros)` Loads the mirror lists from the given file and the given server defined mirror array.
    `static Mirror[]` | `readMirrorListFromFile(java.io.File file)` Reads the mirrors in the given file.
    `static void` | `resetBannedServers()` Reset the List of banned Servers
    `void` | `setWeight(int weight)` Sets the weight of this Mirror.
    `static void` | `writeMirrorListToFile(java.io.File file, Mirror[] mirrorArr)`

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

      `clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### mLocalizer

          public static final Localizer mLocalizer

      The localizer for this class.

    - #### MIRROR_LIST_FILE_NAME

          public static final java.lang.String MIRROR_LIST_FILE_NAME

      The name extension of mirror files
      See Also:
        Constant Field Values

    - #### DEFAULT_WEIGHT

          public static final int DEFAULT_WEIGHT

      The default weight of a mirror
      See Also:
        Constant Field Values

  - ### Constructor Detail

    - #### Mirror

          public Mirror(java.lang.String url,
                int weight)

      Parameters:
        `url` -
        `weight` -

    - #### Mirror

          public Mirror(java.lang.String url)

      Creates an instance with the given URL and the default weight for this mirror.
      Parameters:
        `url` - The URL of the mirror.

  - ### Method Detail

    - #### getUrl

          public java.lang.String getUrl()

      Gets the URL of this Mirror.
      Returns:
        The URL of this Mirror.

    - #### getWeight

          public int getWeight()

      Gets the weight of this Mirror.
      Returns:
        The weight of this Mirror.

    - #### setWeight

          public void setWeight(int weight)

      Sets the weight of this Mirror.
      Parameters:
        `weight` - The new weight of this Mirror.

    - #### readMirrorListFromFile

          public static Mirror[] readMirrorListFromFile(java.io.File file)
                                                 throws java.io.IOException,
                                                        FileFormatException

      Reads the mirrors in the given file.
      Parameters:
        `file` - The file to read the mirrors from.
      Returns:
        The mirror array read from the file.
      Throws:
        `java.io.IOException` - Thrown if something went wrong.
        `FileFormatException` - Thrown if something went wrong.

    - #### writeMirrorListToFile

          public static void writeMirrorListToFile(java.io.File file,
                                   Mirror[] mirrorArr)
                                            throws java.io.IOException

      Parameters:
        `file` - The file to write the mirror array to.
        `mirrorArr` - The mirror array to write.
      Throws:
        `java.io.IOException` - Thrown if something went wrong.

    - #### hashCode

          public int hashCode()

      Overrides:
        `hashCode` in class `java.lang.Object`

    - #### equals

          public boolean equals(java.lang.Object obj)

      Overrides:
        `equals` in class `java.lang.Object`

    - #### loadMirrorList

          public static Mirror[] loadMirrorList(java.io.File file,
                                java.lang.String[] mirrorUrlArr,
                                Mirror[] serverDefindedMirros)

      Loads the mirror lists from the given file and the given server defined mirror array.
      Parameters:
        `file` - The file to load the mirrors from.
        `mirrorUrlArr` - The array with the current mirrors urls.
        `serverDefindedMirros` - The array with the server definded mirrors
      Returns:
        The load mirror array.

    - #### chooseWorkingMirror

          public static Mirror chooseWorkingMirror(Mirror[] mirrorArr,
                                   ProgressMonitor monitor,
                                   java.lang.String name,
                                   java.lang.String id,
                                   java.lang.Class caller,
                                   java.lang.String additionalErrorMsg,
                                   int timeout)
                                            throws TvBrowserException

      Chooses a mirror that can be connected to.
      Parameters:
        `mirrorArr` - The mirror array to check.
        `monitor` - The progress monitor to use.
        `name` - The name of the file to check.
        `id` - The id of the file to check.
        `caller` - The caller class.
        `additionalErrorMsg` - An additional error message value.
        `timeout` - The timeout of the check in milliseconds.
      Returns:
        The choosen mirror or `null`, if no up to date mirror was found or something went wrong.
      Throws:
        `TvBrowserException`
      Since:
        3.4.1

    - #### chooseUpToDateMirror

          public static Mirror chooseUpToDateMirror(Mirror[] mirrorArr,
                                    ProgressMonitor monitor,
                                    java.lang.String name,
                                    java.lang.String id,
                                    java.lang.Class caller,
                                    java.lang.String additionalErrorMsg)
                                             throws TvBrowserException

      Chooses a up to date mirror.
      Parameters:
        `mirrorArr` - The mirror array to check.
        `monitor` - The progress monitor to use.
        `name` - The name of the file to check.
        `id` - The id of the file to check.
        `caller` - The caller class.
        `additionalErrorMsg` - An additional error message value.
      Returns:
        The choosen mirror or `null`, if no up to date mirror was found or something went wrong.
      Throws:
        `TvBrowserException`

    - #### resetBannedServers

          public static void resetBannedServers()

      Reset the List of banned Servers

TV-Browser 3.4.3, Copyright (C) 2004-2008 TV-Browser Team (dev@tvbrowser.org)