use of org.apereo.portal.events.aggr.portletlayout.PortletLayoutAggregationDiscriminator in project uPortal by Jasig.
the class BasePortletLayoutStatisticsController method createColumnDiscriminatorMap.
protected Map<PortletLayoutAggregationDiscriminator, SortedSet<PortletLayoutAggregation>> createColumnDiscriminatorMap(F form) {
//Collections used to track the queried groups and the results
final Map<PortletLayoutAggregationDiscriminator, SortedSet<PortletLayoutAggregation>> groupedAggregations = new TreeMap<PortletLayoutAggregationDiscriminator, SortedSet<PortletLayoutAggregation>>(PortletLayoutAggregationDiscriminatorImpl.Comparator.INSTANCE);
//Get concrete group mapping objects that are being queried for
List<Long> groups = form.getGroups();
Set<String> portletFNames = form.getPortlets();
for (final Long queryGroupId : groups) {
AggregatedGroupMapping groupMapping = this.aggregatedGroupLookupDao.getGroupMapping(queryGroupId);
for (final String portletFName : portletFNames) {
AggregatedPortletMapping tabMapping = this.aggregatedPortletLookupDao.getMappedPortletForFname(portletFName);
final PortletLayoutAggregationDiscriminator mapping = new PortletLayoutAggregationDiscriminatorImpl(groupMapping, tabMapping);
//Create the set the aggregations for this report column will be stored in, sorted chronologically
final SortedSet<PortletLayoutAggregation> aggregations = new TreeSet<PortletLayoutAggregation>(BaseAggregationDateTimeComparator.INSTANCE);
//Map the group to the set
groupedAggregations.put(mapping, aggregations);
}
}
return groupedAggregations;
}
use of org.apereo.portal.events.aggr.portletlayout.PortletLayoutAggregationDiscriminator in project uPortal by Jasig.
the class BasePortletLayoutStatisticsController method createAggregationsQueryKeyset.
@Override
protected Set<PortletLayoutAggregationKey> createAggregationsQueryKeyset(Set<PortletLayoutAggregationDiscriminator> columnDiscriminators, F form) {
// Create keys (that exclude the temporal date/time information) from the interval
// and the data in the column discriminators.
final AggregationInterval interval = form.getInterval();
final HashSet<PortletLayoutAggregationKey> keys = new HashSet<PortletLayoutAggregationKey>();
for (PortletLayoutAggregationDiscriminator discriminator : columnDiscriminators) {
keys.add(new PortletLayoutAggregationKeyImpl(interval, discriminator.getAggregatedGroup(), discriminator.getPortletMapping()));
}
return keys;
}
Aggregations