/* * Copyright 2000-2013 Enonic AS * http://www.enonic.com/license */ package com.enonic.cms.core.search.result; import java.util.Map; import org.jdom.Element; public class TermFacetResultSetXmlCreator extends AbstractFacetResultXmlCreator { Element create( final TermsFacetResultSet facet ) { final Element termFacetRoot = createFacetRootElement( "terms", facet ); setFacetResultMetaData( facet, termFacetRoot ); final Map<String, Integer> resultMap = facet.getResults(); for ( String result : resultMap.keySet() ) { final Integer count = resultMap.get( result ); Element resultEl = new Element( "term" ); addAttributeIfNotNull( resultEl, "hits", count ); resultEl.addContent( result ); termFacetRoot.addContent( resultEl ); } return termFacetRoot; } private void setFacetResultMetaData( final TermsFacetResultSet facet, final Element facetEl ) { final Long missing = facet.getMissing(); final Long total = facet.getTotal(); final Long other = facet.getOther(); addAttributeIfNotNull( facetEl, "total", total ); addAttributeIfNotNull( facetEl, "missing", missing ); addAttributeIfNotNull( facetEl, "other", other ); } }