private List<Item> buildActionMenuItems(final DataRetentionRule rule) {

        final boolean isDefaultRule = isDefaultRule(rule);
        return MenuBuilder.builder()
//                .withSimpleMenuItem(itemBuilder ->
//                        itemBuilder.withText(rule.getRuleNumber() + ". " + rule.getName()))
//                .withSeparator()
                .withIconMenuItem(itemBuilder ->
                        itemBuilder
                                .icon(SvgImage.ADD_ABOVE)
                                .text("Add new rule above")
                                .command(() ->
                                        addNewRule(rule.getRuleNumber() - 1)))
                .withIconMenuItemIf(!isDefaultRule, itemBuilder ->
                        itemBuilder
                                .icon(SvgImage.ADD_BELOW)
                                .text("Add new rule below")
                                .command(() ->
                                        addNewRule(rule.getRuleNumber())))
                .withIconMenuItemIf(!isDefaultRule, itemBuilder ->
                        itemBuilder
                                .icon(SvgImage.EDIT)
                                .text("Edit Rule")
                                .command(() ->
                                        editRule(rule)))
                .withIconMenuItem(itemBuilder ->
                        itemBuilder
                                .icon(SvgImage.COPY)
                                .text("Copy Rule")
                                .command(() ->
                                        copyRule(rule)))
                .withIconMenuItemIf(!isDefaultRule, itemBuilder ->
                        itemBuilder
                                .icon(SvgImage.DELETE)
                                .text("Delete Rule")
                                .command(() ->
                                        deleteRule(rule)))
                .withIconMenuItemIf(!isDefaultRule && rule.getRuleNumber() > 0, itemBuilder ->
                        itemBuilder
                                .icon(SvgImage.UP)
                                .text("Move Rule Up")
                                .command(() ->
                                        moveRuleUp(rule)))
                .withIconMenuItemIf(rule.getRuleNumber() < visibleRules.size() - 1, itemBuilder ->
                        itemBuilder
                                .icon(SvgImage.DOWN)
                                .text("Move Rule Down")
                                .command(() ->
                                        moveRuleDown(rule)))
                .build();
    }
@return The rules created by the users, ignoring the default retain all rule
stroom-core-client/src/main/java/stroom/receive/rules/client/presenter/DataRetentionPolicyPresenter.java