git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@270679 13f79535-47bb-0310-9956-ffa450edef68master
@@ -0,0 +1,86 @@ | |||
/* | |||
* Copyright (C) The Apache Software Foundation. All rights reserved. | |||
* | |||
* This software is published under the terms of the Apache Software License | |||
* version 1.1, a copy of which has been included with this distribution in | |||
* the LICENSE.txt file. | |||
*/ | |||
package org.apache.tools.ant.taskdefs.condition; | |||
import java.util.Locale; | |||
import org.apache.aut.nativelib.Os; | |||
import org.apache.myrmidon.api.TaskException; | |||
/** | |||
* Condition to check the current OS.</p> | |||
* | |||
* @author <a href="mailto:stefan.bodewig@epost.de">Stefan Bodewig</a> | |||
* @version $Revision$ | |||
*/ | |||
public class OsCondition | |||
extends ConditionBase | |||
implements Condition | |||
{ | |||
private String m_family; | |||
private String m_name; | |||
private String m_version; | |||
private String m_arch; | |||
/** | |||
* Sets the desired OS family type | |||
* | |||
* @param f The OS family type desired<br /> | |||
* Possible values:<br /> | |||
* <ul><li>dos</li> | |||
* <li>mac</li> | |||
* <li>netware</li> | |||
* <li>os/2</li> | |||
* <li>unix</li> | |||
* <li>windows</li></ul> | |||
*/ | |||
public void setFamily( final String family ) | |||
{ | |||
m_family = family.toLowerCase( Locale.US ); | |||
} | |||
/** | |||
* Sets the desired OS name | |||
* | |||
* @param name The OS name | |||
*/ | |||
public void setName( final String name ) | |||
{ | |||
m_name = name.toLowerCase( Locale.US ); | |||
} | |||
/** | |||
* Sets the desired OS architecture | |||
* | |||
* @param arch The OS architecture | |||
*/ | |||
public void setArch( final String arch ) | |||
{ | |||
m_arch = arch.toLowerCase( Locale.US ); | |||
} | |||
/** | |||
* Sets the desired OS version | |||
* | |||
* @param version The OS version | |||
*/ | |||
public void setVersion( String version ) | |||
{ | |||
this.m_version = version.toLowerCase( Locale.US ); | |||
} | |||
/** | |||
* Determines if the OS on which Ant is executing matches the type of | |||
* that set in setFamily. | |||
* @see Os#setFamily(String) | |||
*/ | |||
public boolean eval() | |||
throws TaskException | |||
{ | |||
return Os.isOs( m_family, m_name, m_arch, m_version ); | |||
} | |||
} |
@@ -0,0 +1,86 @@ | |||
/* | |||
* Copyright (C) The Apache Software Foundation. All rights reserved. | |||
* | |||
* This software is published under the terms of the Apache Software License | |||
* version 1.1, a copy of which has been included with this distribution in | |||
* the LICENSE.txt file. | |||
*/ | |||
package org.apache.tools.ant.taskdefs.condition; | |||
import java.util.Locale; | |||
import org.apache.aut.nativelib.Os; | |||
import org.apache.myrmidon.api.TaskException; | |||
/** | |||
* Condition to check the current OS.</p> | |||
* | |||
* @author <a href="mailto:stefan.bodewig@epost.de">Stefan Bodewig</a> | |||
* @version $Revision$ | |||
*/ | |||
public class OsCondition | |||
extends ConditionBase | |||
implements Condition | |||
{ | |||
private String m_family; | |||
private String m_name; | |||
private String m_version; | |||
private String m_arch; | |||
/** | |||
* Sets the desired OS family type | |||
* | |||
* @param f The OS family type desired<br /> | |||
* Possible values:<br /> | |||
* <ul><li>dos</li> | |||
* <li>mac</li> | |||
* <li>netware</li> | |||
* <li>os/2</li> | |||
* <li>unix</li> | |||
* <li>windows</li></ul> | |||
*/ | |||
public void setFamily( final String family ) | |||
{ | |||
m_family = family.toLowerCase( Locale.US ); | |||
} | |||
/** | |||
* Sets the desired OS name | |||
* | |||
* @param name The OS name | |||
*/ | |||
public void setName( final String name ) | |||
{ | |||
m_name = name.toLowerCase( Locale.US ); | |||
} | |||
/** | |||
* Sets the desired OS architecture | |||
* | |||
* @param arch The OS architecture | |||
*/ | |||
public void setArch( final String arch ) | |||
{ | |||
m_arch = arch.toLowerCase( Locale.US ); | |||
} | |||
/** | |||
* Sets the desired OS version | |||
* | |||
* @param version The OS version | |||
*/ | |||
public void setVersion( String version ) | |||
{ | |||
this.m_version = version.toLowerCase( Locale.US ); | |||
} | |||
/** | |||
* Determines if the OS on which Ant is executing matches the type of | |||
* that set in setFamily. | |||
* @see Os#setFamily(String) | |||
*/ | |||
public boolean eval() | |||
throws TaskException | |||
{ | |||
return Os.isOs( m_family, m_name, m_arch, m_version ); | |||
} | |||
} |