@Override public WebSitesData loadWebSitesByDomain(String domain) { Page page = new Page(0,1); Conjunction c = Filter.conjunction(); c.add(Filter.eq(WebSitesData.DOMAIN, domain)); page.setFilterable(c); return findUnique(page); } }
@Override public RoleData findRole(String roleName, String webId) { Page page = new Page(0, 0); Conjunction filterable = Filter.conjunction(); SimpleExpression<Comparable<? extends Serializable>> filter = Filter.eq(RoleData.NAME).setValue(roleName); filterable.add(filter); filter = Filter.eq(RoleData.WEB_ID).setValue(webId); page.setFilterable(filterable); return securityRoleDao.findUnique(page); }
@Override public WebSitesData getPrimaryWebSite(String webId, String locale) { Page page = new Page(0,1); Conjunction c = Filter.conjunction(); c.add(Filter.eq(HasWebId.WEB_ID, webId)); c.add(Filter.eq(HasLanguage.LANGUAGE, locale)); c.add(Filter.eq(WebSitesData.TYPE, SiteType.PRIMARY)); page.setFilterable(c); return webSitesDao.findUnique(page); }
@Override public void deleteWebSites(String webId, String domain) { Page page = new Page(); Conjunction c = Filter.conjunction(); c.add(Filter.eq(WebSitesData.DOMAIN, domain)); c.add(Filter.eq(WebSitesData.WEB_ID, webId)); page.setFilterable(c); PagedResult<List<WebSitesData>> all = webSitesDao.findAll(page); for(WebSitesData webSite : all.getResult()) { webSitesDao.remove(webSite); } } }
@Override public PagedResult<List<HierarchyPermissionData>> findAll(String webId, Page page) { SimpleExpression<Comparable<? extends Serializable>> eq = Filter.eq(HierarchyPermissionData.WEB_ID); eq.setValue(webId); if (page.getFilterable() != null) { Conjunction filterable = Filter.conjunction(); filterable.add(page.getFilterable()); filterable.add(eq); page.setFilterable(filterable); } else { page.setFilterable(eq); } return securityPermissionDao.findAll(page); }
@Override public List<HierarchyPermissionData> findSecurityPermissions(Integer parentId, String webId) { Page page = new Page(0, 0); if (null == parentId) { Conjunction filterable = Filter.conjunction(); filterable.add(Filter.isNull(HierarchyPermissionData.PARENT)); SimpleExpression<Comparable<? extends Serializable>> eq = Filter.eq(HierarchyPermissionData.WEB_ID); eq.setValue(webId); filterable.add(eq); page.setFilterable(filterable); } else { Conjunction filterable = Filter.conjunction(); //FIXME, interface inheritance SimpleExpression<Comparable<? extends Serializable>> eq = Filter.eq(HierarchyPermissionData.PARENT + ".id"); eq.setValue(parentId); filterable.add(eq); eq = Filter.eq(HierarchyPermissionData.WEB_ID); eq.setValue(webId); filterable.add(eq); page.setFilterable(filterable); } return securityPermissionDao.findAll(page).getResult(); } }