@Override public String execute() { super.execute(); // replace organisation keys with real names lookupFacetTitles(DatasetSearchParameter.HOSTING_ORG, getOrgTitle); lookupFacetTitles(DatasetSearchParameter.OWNING_ORG, getOrgTitle); lookupFacetTitles(DatasetSearchParameter.TYPE, getDatasetTypeTitle); lookupFacetTitles(DatasetSearchParameter.PUBLISHING_COUNTRY, getCountryTitle); // populate counts for (DatasetSearchResult dsr : getSearchResponse().getResults()) { if (DatasetType.OCCURRENCE == dsr.getType()) { Long count = occurrenceCube.get(new ReadBuilder().at(OccurrenceCube.DATASET_KEY, dsr.getKey())); recordCounts.put(dsr.getKey(), count); } else if (DatasetType.CHECKLIST == dsr.getType()) { // Client response status 204 (Equal to no content) gets converted into NULL // See HttpErrorResponseInterceptor.java in gbif-common-ws for more information DatasetMetrics metrics = checklistMetricsService.get(dsr.getKey()); if (metrics != null) { recordCounts.put(dsr.getKey(), Long.valueOf(metrics.getUsagesCount())); } } } return SUCCESS; }