Class AddOrUpdateChild<P>


  • public class AddOrUpdateChild<P>
    extends XmlVisitor<P>
    • Constructor Detail

      • AddOrUpdateChild

        public AddOrUpdateChild()
    • Method Detail

      • addOrUpdateChild

        public static Xml.Tag addOrUpdateChild​(Xml.Tag parent,
                                               Xml.Tag child,
                                               org.openrewrite.Cursor parentCursor)
        Add the specified child tag to the parent tag's children. If a tag with the same name as the new child tag already exists within the parent tag's children it is replaced. If no tag with the same name exists, the child tag is added.
        Parameters:
        parent - the tag to add 'child' to.
        child - the tag to add to the children of 'parent'.
        parentCursor - A cursor pointing one level above 'parent'. Determines the final indentation of 'child'.
        Returns:
        'parent' with 'child' among its direct child tags.
      • addOrUpdateChild

        public static Xml.Tag addOrUpdateChild​(Xml.Tag parentScope,
                                               Xml.Tag parent,
                                               Xml.Tag child,
                                               org.openrewrite.Cursor parentCursor)
        Add the specified child tag to the parent tag's children. If a tag with the same name as the new child tag already exists within the parent tag's children it is replaced. If no tag with the same name exists, the child tag is added.
        Parameters:
        parentScope - a tag which contains 'parent' as a direct or transitive child element.
        parent - the tag to add 'child' to.
        child - the tag to add to the children of 'parent'.
        parentCursor - A cursor pointing one level above 'parent'. Determines the final indentation of 'child'.
        Returns:
        'parentScope' which somewhere contains 'parent' with 'child' among its direct child tags.