Class DefineSet

  • All Implemented Interfaces:
    java.lang.Cloneable

    public class DefineSet
    extends org.apache.tools.ant.types.DataType
    Set of preprocessor macro defines and undefines.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.util.Vector defineList  
      private java.lang.String ifCond  
      private java.lang.String unlessCond  
      • Fields inherited from class org.apache.tools.ant.types.DataType

        checked, ref
      • Fields inherited from class org.apache.tools.ant.ProjectComponent

        description, location, project
    • Constructor Summary

      Constructors 
      Constructor Description
      DefineSet()  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void addDefine​(DefineArgument arg)
      Adds a define element.
      private void addDefines​(java.lang.String[] defs, boolean isDefine)
      Adds defines/undefines.
      void addUndefine​(UndefineArgument arg)
      Adds an undefine element.
      void execute()  
      UndefineArgument[] getDefines()
      Returns the defines and undefines in this set.
      boolean isActive()
      Returns true if the define's if and unless conditions (if any) are satisfied.
      void setDefine​(CUtil.StringArrayBuilder defList)
      A comma-separated list of preprocessor macros to define.
      void setDescription​(java.lang.String desc)
      Sets a description of the current data type.
      void setId​(java.lang.String id)
      Sets an id that can be used to reference this element.
      void setIf​(java.lang.String propName)
      Sets the property name for the 'if' condition.
      void setRefid​(org.apache.tools.ant.types.Reference r)
      Specifies that this element should behave as if the content of the element with the matching id attribute was inserted at this location.
      void setUndefine​(CUtil.StringArrayBuilder undefList)
      A comma-separated list of preprocessor macros to undefine.
      void setUnless​(java.lang.String propName)
      Set the property name for the 'unless' condition.
      • Methods inherited from class org.apache.tools.ant.types.DataType

        checkAttributesAllowed, checkChildrenAllowed, circularReference, clone, dieOnCircularReference, dieOnCircularReference, dieOnCircularReference, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getCheckedRef, getDataTypeName, getRefid, invokeCircularReferenceCheck, isChecked, isReference, noChildrenAllowed, pushAndInvokeCircularReferenceCheck, setChecked, tooManyAttributes, toString
      • Methods inherited from class org.apache.tools.ant.ProjectComponent

        getDescription, getLocation, getProject, log, log, setLocation, setProject
      • Methods inherited from class java.lang.Object

        equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • defineList

        private java.util.Vector defineList
      • ifCond

        private java.lang.String ifCond
      • unlessCond

        private java.lang.String unlessCond
    • Constructor Detail

      • DefineSet

        public DefineSet()
    • Method Detail

      • addDefine

        public void addDefine​(DefineArgument arg)
                       throws org.apache.tools.ant.BuildException
        Adds a define element.
        Throws:
        org.apache.tools.ant.BuildException - if reference
      • addDefines

        private void addDefines​(java.lang.String[] defs,
                                boolean isDefine)
        Adds defines/undefines.
      • addUndefine

        public void addUndefine​(UndefineArgument arg)
                         throws org.apache.tools.ant.BuildException
        Adds an undefine element.
        Throws:
        org.apache.tools.ant.BuildException - if reference
      • execute

        public void execute()
                     throws org.apache.tools.ant.BuildException
        Throws:
        org.apache.tools.ant.BuildException
      • getDefines

        public UndefineArgument[] getDefines()
                                      throws org.apache.tools.ant.BuildException
        Returns the defines and undefines in this set.
        Throws:
        org.apache.tools.ant.BuildException
      • isActive

        public final boolean isActive()
                               throws org.apache.tools.ant.BuildException
        Returns true if the define's if and unless conditions (if any) are satisfied.
        Throws:
        org.apache.tools.ant.BuildException - throws build exception if name is not set
      • setDefine

        public void setDefine​(CUtil.StringArrayBuilder defList)
                       throws org.apache.tools.ant.BuildException
        A comma-separated list of preprocessor macros to define. Use nested define elements to define macro values.
        Parameters:
        defList - comma-separated list of preprocessor macros
        Throws:
        org.apache.tools.ant.BuildException - throw if defineset is a reference
      • setDescription

        public void setDescription​(java.lang.String desc)
        Sets a description of the current data type.
        Overrides:
        setDescription in class org.apache.tools.ant.ProjectComponent
      • setId

        public void setId​(java.lang.String id)
        Sets an id that can be used to reference this element.
        Parameters:
        id - id
      • setIf

        public final void setIf​(java.lang.String propName)
        Sets the property name for the 'if' condition. The define will be ignored unless the property is defined. The value of the property is insignificant, but values that would imply misinterpretation ("false", "no") will throw an exception when evaluated.
        Parameters:
        propName - property name
      • setRefid

        public void setRefid​(org.apache.tools.ant.types.Reference r)
                      throws org.apache.tools.ant.BuildException
        Specifies that this element should behave as if the content of the element with the matching id attribute was inserted at this location. If specified, no other attributes or child content should be specified, other than "description".
        Overrides:
        setRefid in class org.apache.tools.ant.types.DataType
        Throws:
        org.apache.tools.ant.BuildException
      • setUndefine

        public void setUndefine​(CUtil.StringArrayBuilder undefList)
                         throws org.apache.tools.ant.BuildException
        A comma-separated list of preprocessor macros to undefine.
        Parameters:
        undefList - comma-separated list of preprocessor macros
        Throws:
        org.apache.tools.ant.BuildException - throw if defineset is a reference
      • setUnless

        public final void setUnless​(java.lang.String propName)
        Set the property name for the 'unless' condition. If named property is set, the define will be ignored. The value of the property is insignificant, but values that would imply misinterpretation ("false", "no") of the behavior will throw an exception when evaluated.
        Parameters:
        propName - name of property