public void init(final CMSSiteModel site, final SiteMapPageEnum siteMapPageEnum) { final String currentUrlEncodingPattern = getUrlEncoderService().getCurrentUrlEncodingPattern(); this.put( BASE_URL, getSiteBaseUrlResolutionService() .getWebsiteUrlForSite(site, currentUrlEncodingPattern, false, "")); this.put(MEDIA_URL, getSiteBaseUrlResolutionService().getMediaUrlForSite(site, false, "")); final Collection<SiteMapPageModel> siteMapPages = site.getSiteMapConfig().getSiteMapPages(); final SiteMapPageModel siteMapPageModel = (SiteMapPageModel) CollectionUtils.find( siteMapPages, new Predicate() { @Override public boolean evaluate(final Object o) { return ((SiteMapPageModel) o).getCode().equals(siteMapPageEnum); } }); if (siteMapPageModel != null) { this.put(CHANGE_FREQ, siteMapPageModel.getFrequency().getCode()); this.put(PRIORITY, siteMapPageModel.getPriority()); } else { this.put(CHANGE_FREQ, SiteMapChangeFrequencyEnum.DAILY.getCode()); this.put(PRIORITY, Double.valueOf(0.5D)); } }