Package org.apache.tools.ant.taskdefs.condition

# Class Os

java.lang.Object
org.apache.tools.ant.taskdefs.condition.Os

All Implemented Interfaces:
  `Condition`

public class Os extends Object implements Condition
Condition that tests the OS type.

Since:
  Ant 1.4

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `FAMILY_9X`
  OS family that can be tested for.
  `static final String`
  `FAMILY_DOS`
  OS family that can be tested for.
  `static final String`
  `FAMILY_MAC`
  OS family that can be tested for.
  `static final String`
  `FAMILY_NETWARE`
  OS family that can be tested for.
  `static final String`
  `FAMILY_NT`
  OS family that can be tested for.
  `static final String`
  `FAMILY_OS2`
  OS family that can be tested for.
  `static final String`
  `FAMILY_OS400`
  OS family that can be tested for.
  `static final String`
  `FAMILY_TANDEM`
  OS family that can be tested for.
  `static final String`
  `FAMILY_UNIX`
  OS family that can be tested for.
  `static final String`
  `FAMILY_VMS`
  OS family that can be tested for.
  `static final String`
  `FAMILY_WINDOWS`
  OS family that can be tested for.
  `static final String`
  `FAMILY_ZOS`
  OS family that can be tested for.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Os()`
  Default constructor
  `Os(String family)`
  Constructor that sets the family attribute

- ## Method Summary

  Modifier and Type
  Method
  Description
  `boolean`
  `eval()`
  Determines if the OS on which Ant is executing matches the type of that set in setFamily.
  `static boolean`
  `isArch(String arch)`
  Determines if the OS on which Ant is executing matches the given OS architecture.
  `static boolean`
  `isFamily(String family)`
  Determines if the OS on which Ant is executing matches the given OS family.
  `static boolean`
  `isName(String name)`
  Determines if the OS on which Ant is executing matches the given OS name.
  `static boolean`
  `isOs(String family, String name, String arch, String version)`
  Determines if the OS on which Ant is executing matches the given OS family, name, architecture and version
  `static boolean`
  `isVersion(String version)`
  Determines if the OS on which Ant is executing matches the given OS version.
  `void`
  `setArch(String arch)`
  Sets the desired OS architecture
  `void`
  `setFamily(String f)`
  Sets the desired OS family type
  `void`
  `setName(String name)`
  Sets the desired OS name
  `void`
  `setVersion(String version)`
  Sets the desired OS version

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

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

- ## Field Details

  - ### FAMILY_WINDOWS

    public static final String FAMILY_WINDOWS
    OS family that can be tested for. "windows"
    See Also:
      - Constant Field Values

  - ### FAMILY_9X

    public static final String FAMILY_9X
    OS family that can be tested for. "win9x"
    See Also:
      - Constant Field Values

  - ### FAMILY_NT

    public static final String FAMILY_NT
    OS family that can be tested for. "winnt"
    See Also:
      - Constant Field Values

  - ### FAMILY_OS2

    public static final String FAMILY_OS2
    OS family that can be tested for. "os/2"
    See Also:
      - Constant Field Values

  - ### FAMILY_NETWARE

    public static final String FAMILY_NETWARE
    OS family that can be tested for. "netware"
    See Also:
      - Constant Field Values

  - ### FAMILY_DOS

    public static final String FAMILY_DOS
    OS family that can be tested for. "dos"
    See Also:
      - Constant Field Values

  - ### FAMILY_MAC

    public static final String FAMILY_MAC
    OS family that can be tested for. "mac"
    See Also:
      - Constant Field Values

  - ### FAMILY_TANDEM

    public static final String FAMILY_TANDEM
    OS family that can be tested for. "tandem"
    See Also:
      - Constant Field Values

  - ### FAMILY_UNIX

    public static final String FAMILY_UNIX
    OS family that can be tested for. "unix"
    See Also:
      - Constant Field Values

  - ### FAMILY_VMS

    public static final String FAMILY_VMS
    OS family that can be tested for. "openvms"
    See Also:
      - Constant Field Values

  - ### FAMILY_ZOS

    public static final String FAMILY_ZOS
    OS family that can be tested for. "z/os"
    See Also:
      - Constant Field Values

  - ### FAMILY_OS400

    public static final String FAMILY_OS400
    OS family that can be tested for. "os/400"
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### Os

    public Os()
    Default constructor

  - ### Os

    public Os(String family)
    Constructor that sets the family attribute
    Parameters:
      `family` - a String value

- ## Method Details

  - ### setFamily

    public void setFamily(String f)
    Sets the desired OS family type
    Parameters:
      `f` - The OS family type desired

      Possible values:

      - dos
      - mac
      - netware
      - os/2
      - tandem
      - unix
      - windows
      - win9x
      - z/os
      - os/400

  - ### setName

    public void setName(String name)
    Sets the desired OS name
    Parameters:
      `name` - The OS name

  - ### setArch

    public void setArch(String arch)
    Sets the desired OS architecture
    Parameters:
      `arch` - The OS architecture

  - ### setVersion

    public void setVersion(String version)
    Sets the desired OS version
    Parameters:
      `version` - The OS version

  - ### eval

    public boolean eval() throws BuildException
    Determines if the OS on which Ant is executing matches the type of that set in setFamily.
    Specified by:
      `eval` in interface `Condition`
    Returns:
      true if the os matches.
    Throws:
      `BuildException` - if there is an error.
    See Also:
      - `setFamily(String)`

  - ### isFamily

    public static boolean isFamily(String family)
    Determines if the OS on which Ant is executing matches the given OS family.
    Parameters:
      `family` - the family to check for
    Returns:
      true if the OS matches
    Since:
      1.5

  - ### isName

    public static boolean isName(String name)
    Determines if the OS on which Ant is executing matches the given OS name.
    Parameters:
      `name` - the OS name to check for
    Returns:
      true if the OS matches
    Since:
      1.7

  - ### isArch

    public static boolean isArch(String arch)
    Determines if the OS on which Ant is executing matches the given OS architecture.
    Parameters:
      `arch` - the OS architecture to check for
    Returns:
      true if the OS matches
    Since:
      1.7

  - ### isVersion

    public static boolean isVersion(String version)
    Determines if the OS on which Ant is executing matches the given OS version.
    Parameters:
      `version` - the OS version to check for
    Returns:
      true if the OS matches
    Since:
      1.7

  - ### isOs

    public static boolean isOs(String family, String name, String arch, String version)
    Determines if the OS on which Ant is executing matches the given OS family, name, architecture and version
    Parameters:
      `family` - The OS family
      `name` - The OS name
      `arch` - The OS architecture
      `version` - The OS version
    Returns:
      true if the OS matches
    Since:
      1.7