Class DslAddOn

  • All Implemented Interfaces:
    Comparable<DslAddOn>

    public class DslAddOn
    extends Object
    implements Comparable<DslAddOn>
    Extends other dsl extensions. Used as mixin.

    This is a DTO class parsed from XML file.

    Example XML file:

    
     <dsl-add-on kind="buildStep">
       <extends>
         <dsl type="Ant"/>
       </extends>
       <params>
         <param name="param.name" dslName="theDslName" type="string">
           <description>The param description</description>
         </param>
       </params>
       <!-- Other params... -->
       <types>
         <enum name="EnumNameInPascalCase">
           <description> Enum description </description>
           <option name="Any" value=""/>
           <option name="Linux" value="linux"/>
           <!-- Other enum options... -->
         </enum>
       </types>
     </dsl-add-on>
     
    • Method Detail

      • getKind

        @NotNull
        public ExtensionKind getKind()
        Returns kind of dsl extensions this add-on extends
        Returns:
        see above
      • getExtensionTypes

        @NotNull
        public Set<String> getExtensionTypes()
        Returns types of dsl extensions this add-on modifies
        Returns:
        see above
      • getParams

        @NotNull
        public List<KotlinDslParam> getParams()
        Returns parameters this add-on adds to other extensions
        Returns:
        see above
      • getEnums

        @NotNull
        public List<KotlinDslEnum> getEnums()
        Returns enums this add-on adds to other extensions
        Returns:
        see above
      • isApplicable

        public boolean isApplicable​(@NotNull
                                    String dslExtensionType,
                                    @Nullable
                                    String dslExtensionPredicate)