private void updateProperties(PageTemplateRegion source, JpaPageTemplateRegion converted) { converted.setEntityId(source.getId() == null ? null : Long.parseLong(source.getId())); converted.setRenderSequence(source.getRenderSequence()); converted.setPageTemplateWidgets(source.getPageTemplateWidgets()); converted.setPageTemplate(source.getPageTemplate()); converted.setLocked(source.isLocked()); } }
@Override public void setPageTemplateRegions(List<PageTemplateRegion> pageTemplateRegions) { if(this.pageTemplateRegions == null) { this.pageTemplateRegions = new ArrayList<JpaPageTemplateRegion>(); } this.getPageTemplateRegions().clear(); if(pageTemplateRegions != null) { for(PageTemplateRegion region : pageTemplateRegions) { region.setPageTemplate(this); this.getPageTemplateRegions().add(region); } } }
/** * convertRegions: List of PageTemplateRegion, Page -> List of Regions * Converts the JpaRegion Templates of the Page Template to Regions for the page * @param pageTemplateRegions List of PageTemplateRegion * @param page Page * @return list of JpaRegion */ private List<Region> convertRegions(List<PageTemplateRegion> pageTemplateRegions, Page page){ List<Region> regions = new ArrayList<Region>(); for (PageTemplateRegion ptr : pageTemplateRegions){ JpaRegion region = new JpaRegion(); region.setRenderOrder((int) ptr.getRenderSequence()); region.setPage(page); region.setLocked(ptr.isLocked()); region.setRegionWidgets(convertWidgets(ptr.getPageTemplateWidgets(), region)); regions.add(region); } return regions; }
private void updateTemplate(Map<String, Widget> widgetsById, PageTemplate template) { setIdViaReflection(template, null); for (PageTemplateRegion region : template.getPageTemplateRegions()) { setIdViaReflection(region, null); region.setPageTemplate(template); for (PageTemplateWidget widget : region.getPageTemplateWidgets()) { Widget fromDb = widgetsById.get(widget.getWidgetId()); if (fromDb != null) { widget.setWidgetId(fromDb.getId()); } setIdViaReflection(widget, null); widget.setPageTemplateRegion(region); } } }
private JpaPageTemplateRegion createEntity(PageTemplateRegion source) { JpaPageTemplateRegion converted = null; if (source != null) { converted = source.getId() == null ? new JpaPageTemplateRegion() : manager.find(JpaPageTemplateRegion.class, Long.parseLong(source.getId())); if(converted == null) { converted = new JpaPageTemplateRegion(); } updateProperties(source, converted); } return converted; }
/** * convertRegions: List of PageTemplateRegion, Page -> List of Regions * Converts the JpaRegion Templates of the Page Template to Regions for the page * * @param pageTemplateRegions List of PageTemplateRegion * @param page Page * @param createIds * @return list of JpaRegion */ private static List<Region> convertRegions(List<PageTemplateRegion> pageTemplateRegions, Page page, boolean createIds){ List<Region> regions = new ArrayList<Region>(); int idx = 0; for (PageTemplateRegion ptr : pageTemplateRegions){ RegionImpl region = new RegionImpl(); if(createIds) { region.setId(String.valueOf(--idx)); } region.setRenderOrder((int) ptr.getRenderSequence()); region.setPage(page); region.setLocked(ptr.isLocked()); region.setRegionWidgets(convertWidgets(ptr.getPageTemplateWidgets(), region, createIds)); regions.add(region); } return regions; }