super.deleteDomainObject();
    public void delete() {        ISection superiorSection = this.getSuperiorSection();        ISite sectionSite = this.getSite();        Integer sectionToDeleteOrder = this.getSectionOrder();        // Delete Associated Items        if (this.getAssociatedItemsCount() != 0) {            List<IItem> items = new ArrayList();            items.addAll(this.getAssociatedItems());            for (IItem item : items) {                item.delete();            }        }        // Delete Associated Sections        if (this.getAssociatedSectionsCount() != 0) {            List<ISection> sections = new ArrayList();            sections.addAll(this.getAssociatedSections());            for (ISection section : sections) {                section.delete();            }        }        // Delete Associations with Superior Section if exists        if (superiorSection != null) {            this.setSuperiorSection(null);        }        // Delete Associations with Site        this.setSite(null);        // ReOrder Sections        List<ISection> sectionsReordered = getSections(superiorSection, sectionSite);        for (ISection section : sectionsReordered) {            Integer sectionOrder = section.getSectionOrder();            if (sectionOrder.intValue() > sectionToDeleteOrder.intValue()) {                section.setSectionOrder(new Integer(sectionOrder.intValue() - 1));            }        }    }