private void removeContentHomeIfThisSectionIs( final ContentEntity content, final MenuItemEntity section) { final ContentHomeEntity contentHome = content.getContentHome(section.getSite().getKey()); if (contentHome != null && contentHome.getMenuItem() == null) { content.removeContentHome(section.getSite().getKey()); contentHomeDao.delete(contentHome); } else if (contentHome != null && section.getKey() == contentHome.getMenuItem().getKey()) { content.removeContentHome(section.getSite().getKey()); contentHomeDao.delete(contentHome); } contentHomeDao .getHibernateTemplate() .getSessionFactory() .evictCollection(ContentEntity.class.getName() + ".contentHomes", content.getKey()); }
private void doSetContentHome( final ContentEntity content, final MenuItemEntity section, final PageTemplateEntity pageTemplate) { final ContentHomeEntity existingHome = content.getContentHome(section.getSite().getKey()); if (existingHome != null) { existingHome.setMenuItem(section); existingHome.setPageTemplate(pageTemplate); } else { final ContentHomeEntity newContentHome = new ContentHomeEntity(); newContentHome.setKey(new ContentHomeKey(section.getSite().getKey(), content.getKey())); newContentHome.setSite(section.getSite()); newContentHome.setContent(content); newContentHome.setMenuItem(section); newContentHome.setPageTemplate(pageTemplate); contentHomeDao.storeNew(newContentHome); content.addContentHome(newContentHome); } indexTransactionService.registerUpdate(content.getKey(), true); }