private Map<String, MetadataItem> getMetadataItems( EventQueryParams params )
{
Map<String, MetadataItem> metadataItemMap = AnalyticsUtils.getDimensionMetadataItemMap( params );
boolean includeDetails = params.isIncludeMetadataDetails();
if ( params.hasValueDimension() )
{
DimensionalItemObject value = params.getValue();
metadataItemMap.put( value.getUid(), new MetadataItem( value.getDisplayProperty( params.getDisplayProperty() ), includeDetails ? value.getUid() : null, value.getCode() ) );
}
params.getItemLegends().forEach( legend -> {
metadataItemMap.put( legend.getUid(), new MetadataItem( legend.getDisplayName(), includeDetails ? legend.getUid() : null, legend.getCode() ) );
} );
params.getItemOptions().forEach( option -> {
metadataItemMap.put( option.getUid(), new MetadataItem( option.getDisplayName(), includeDetails ? option.getUid() : null, option.getCode() ) );
} );
params.getItemsAndItemFilters().forEach( item -> {
metadataItemMap.put( item.getItemId(), new MetadataItem( item.getItem().getDisplayName(), includeDetails ? item.getItem() : null ) );
} );
return metadataItemMap;
}