Package org.apache.catalina.ant.jmx
Class JMXAccessorCondition
- java.lang.Object
-
- org.apache.tools.ant.ProjectComponent
-
- org.apache.catalina.ant.jmx.JMXAccessorConditionBase
-
- org.apache.catalina.ant.jmx.JMXAccessorCondition
-
- All Implemented Interfaces:
java.lang.Cloneable,org.apache.tools.ant.taskdefs.condition.Condition
public class JMXAccessorCondition extends JMXAccessorConditionBase
Definition:<path id="catalina_ant"> <fileset dir="${catalina.home}/server/lib"> <include name="catalina-ant.jar"/> </fileset> </path> <typedef name="jmxCondition" classname="org.apache.catalina.ant.jmx.JMXAccessorCondition" classpathref="catalina_ant"/> <taskdef name="jmxOpen" classname="org.apache.catalina.ant.jmx.JMXAccessorTask" classpathref="catalina_ant"/>Usage: Wait for start backup node<target name="wait"> <jmxOpen host="${jmx.host}" port="${jmx.port}" username="${jmx.username}" password="${jmx.password}" /> <waitfor maxwait="${maxwait}" maxwaitunit="second" timeoutproperty="server.timeout" > <and> <socket server="${server.name}" port="${server.port}"/> <http url="${url}"/> <jmxCondition name="Catalina:type=IDataSender,host=localhost,senderAddress=192.168.111.1,senderPort=9025" operation="==" attribute="connected" value="true" /> <jmxCondition operation="<" name="Catalina:j2eeType=WebModule,name=//${tomcat.application.host}${tomcat.application.path},J2EEApplication=none,J2EEServer=none" attribute="startupTime" value="250" /> </and> </waitfor> <fail if="server.timeout" message="Server ${url} don't answer inside ${maxwait} sec" /> <echo message="Server ${url} alive" /> </target>Allowed operation between jmx attribute and reference value:- == equals
- != not equals
- > greater than (>)
- >= greater than or equals (>=)
- < lesser than (<)
- <= lesser than or equals (<=)
As type we currently support long and double.- Since:
- 5.5.10
-
-
Constructor Summary
Constructors Constructor Description JMXAccessorCondition()Constructs a new JMXAccessorCondition.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleaneval()This method evaluates the condition It support for operation ">,>=,<,<=" the typeslonganddouble.java.lang.StringgetIf()Get the if condition property name.java.lang.StringgetOperation()Get the comparison operation.java.lang.StringgetType()Get the data type for comparison.java.lang.StringgetUnless()Get the unless condition property name.voidsetIf(java.lang.String c)Only execute if a property of the given name exists in the current project.voidsetOperation(java.lang.String operation)Set the comparison operation.voidsetType(java.lang.String type)Set the data type for comparison.voidsetUnless(java.lang.String c)Only execute if a property of the given name does not exist in the current project.protected booleantestIfCondition()test the if conditionprotected booleantestUnlessCondition()test the unless condition-
Methods inherited from class org.apache.catalina.ant.jmx.JMXAccessorConditionBase
accessJMXValue, getAttribute, getHost, getJMXConnection, getName, getPassword, getPort, getRef, getUrl, getUsername, getValue, setAttribute, setHost, setName, setPassword, setPort, setRef, setUrl, setUsername, setValue
-
-
-
-
Method Detail
-
getOperation
public java.lang.String getOperation()
Get the comparison operation.- Returns:
- the operation
-
setOperation
public void setOperation(java.lang.String operation)
Set the comparison operation.- Parameters:
operation- the operation to set
-
getType
public java.lang.String getType()
Get the data type for comparison.- Returns:
- the type
-
setType
public void setType(java.lang.String type)
Set the data type for comparison.- Parameters:
type- the type to set
-
getIf
public java.lang.String getIf()
Get the if condition property name.- Returns:
- the if condition property name
-
setIf
public void setIf(java.lang.String c)
Only execute if a property of the given name exists in the current project.- Parameters:
c- property name
-
getUnless
public java.lang.String getUnless()
Get the unless condition property name.- Returns:
- the unless condition property name
-
setUnless
public void setUnless(java.lang.String c)
Only execute if a property of the given name does not exist in the current project.- Parameters:
c- property name
-
testIfCondition
protected boolean testIfCondition()
test the if condition- Returns:
- true if there is no if condition, or the named property exists
-
testUnlessCondition
protected boolean testUnlessCondition()
test the unless condition- Returns:
- true if there is no unless condition, or there is a named property but it doesn't exist
-
eval
public boolean eval()
This method evaluates the condition It support for operation ">,>=,<,<=" the typeslonganddouble.- Returns:
- expression jmxValue operation value
-
-