/** * Generates a pretty column name based on the given display property of the * argument objects. Null arguments are ignored in the name. */ public static String getPrettyColumnName( List<DimensionalItemObject> objects, DisplayProperty displayProperty ) { StringBuilder builder = new StringBuilder(); for ( DimensionalItemObject object : objects ) { builder.append( object != null ? ( object.getDisplayProperty( displayProperty ) + SPACE ) : EMPTY ); } return builder.length() > 0 ? builder.substring( 0, builder.lastIndexOf( SPACE ) ) : TOTAL_COLUMN_PRETTY_NAME; }
/** * Returns a mapping between identifiers and display properties for the given * list of query items. * * @param queryItems the list of query items. * @param displayProperty the display property to use. * @return a mapping between identifiers and display properties. */ public static Map<String, String> getUidDisplayPropertyMap( List<QueryItem> queryItems, DisplayProperty displayProperty ) { Map<String, String> map = new HashMap<>(); for ( QueryItem item : queryItems ) { map.put( item.getItem().getUid(), item.getItem().getDisplayProperty( displayProperty ) ); } return map; }
/** * Returns a map of metadata item identifiers and {@link MetadataItem}. * * @param params the data query parameters. * @return a map. */ 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; }
map.put( item.getDimensionItem(), item.getDisplayProperty( params.getDisplayProperty() ) );
grid.addValue( object.getDisplayProperty( displayProperty ) ); grid.addValue( object.getCode() ); grid.addValue( object.getDisplayDescription() );
map.put( item.getDimensionItem(), new MetadataItem( item.getDisplayProperty( params.getDisplayProperty() ), includeMetadataDetails ? item : null ) );