首页 > 其他 > 详细

list<model>

时间:2021-04-22 15:33:37      阅读:9      评论:0      收藏:0      [点我收藏+]

Java

@Model(
        adaptables = {Resource.class, SlingHttpServletRequest.class},
        resourceType = HeaderNavigation.RESOURCE_TYPE,
        defaultInjectionStrategy = DefaultInjectionStrategy.OPTIONAL)
public class HeaderNavigation {
    protected static final String RESOURCE_TYPE = "xxx";
    
    @Inject
    private Page currentPage;

    @Getter
    @Setter
    private List<SubPageModel> subPages;// SubPageModel contains title, link and List<SubPageModel>

    @PostConstruct
    protected void init() {
        getSub();
    }

    public void getSub(){
        List<SubPageModel> subPage = new ArrayList<>();
        Iterator<Page> pageIterator = currentPage.listChildren();

        while(pageIterator.hasNext()){
            Page LOnePage = pageIterator.next();
            if(isHide(LOnePage))
                continue;
            Iterator<Page> LTwoList = LOnePage.listChildren();
            List<SubPageModel> sub = new ArrayList<>();

            while(LTwoList.hasNext()){
                Page LTwoPage = LTwoList.next();
                if(isHide(LTwoPage))
                    continue;
                sub.add(new SubPageModel(LTwoPage.getTitle(),LTwoPage.getPath(),null));
            }

            subPage.add(new SubPageModel(LOnePage.getTitle(),LOnePage.getPath(), sub));
        }
        setSubPages(subPage);
    }

    private boolean isHide(Page page){
        Object hideInNav = page.getContentResource().getValueMap().get("hideInNav");
        return hideInNav == null ? false : true;
    }
}

Test

        Page page = context.pageManager().getPage(destPath);
        context.registerService(Page.class, page);

list<model>

原文:https://www.cnblogs.com/lwxx/p/14689338.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!