List of usage examples for org.apache.commons.collections4 MultiValuedMap asMap
Map<K, Collection<V>> asMap();
From source file:de.tud.inf.db.sparqlytics.repository.AbstractRepository.java
@Override public MetricRegistry getStatistics() { MetricRegistry registry = new MetricRegistry(); final Set<Cube> cubes = getCubes(); registry.register("#cubes", new Gauge<Integer>() { @Override//w ww .ja v a2 s .com public Integer getValue() { return cubes.size(); } }); final Set<Dimension> allDimensions = getDimensions(); registry.register("#dimensions", new Gauge<Integer>() { @Override public Integer getValue() { return allDimensions.size(); } }); final Set<Measure> allMeasures = getMeasures(); registry.register("#measures", new Gauge<Integer>() { @Override public Integer getValue() { return allMeasures.size(); } }); Histogram levelsPerDimension = registry.register("levels/dimension", new Histogram(new SlidingWindowReservoir(cubes.size()))); for (Dimension dimension : getDimensions()) { levelsPerDimension.update(dimension.getLevels().size() - 1); } Histogram dimensionsPerCube = registry.register("dimensions/cube", new Histogram(new SlidingWindowReservoir(cubes.size()))); Histogram measuresPerCube = registry.register("measures/cube", new Histogram(new SlidingWindowReservoir(cubes.size()))); MultiValuedMap<Dimension, Cube> dimensionMap = new ArrayListValuedHashMap<>(); MultiValuedMap<Measure, Cube> measureMap = new ArrayListValuedHashMap<>(); for (Cube cube : cubes) { Set<Dimension> dimensions = cube.getDimensions(); dimensionsPerCube.update(dimensions.size()); for (Dimension dimension : dimensions) { dimensionMap.put(dimension, cube); } Set<Measure> measures = cube.getMeasures(); measuresPerCube.update(measures.size()); for (Measure measure : measures) { measureMap.put(measure, cube); } } Histogram cubesPerDimension = registry.register("cubes/dimension", new Histogram(new SlidingWindowReservoir(cubes.size()))); for (Collection<Cube> values : dimensionMap.asMap().values()) { cubesPerDimension.update(values.size()); } Histogram cubesPerMeasure = registry.register("cubes/measure", new Histogram(new SlidingWindowReservoir(cubes.size()))); for (Collection<Cube> values : measureMap.asMap().values()) { cubesPerMeasure.update(values.size()); } return registry; }
From source file:fr.cph.chicago.connection.CtaConnect.java
/** * Connect//from w ww. j a v a 2 s . c om * * @param requestType the type of request * @param params the params * @return a string * @throws ConnectException */ @NonNull public final InputStream connect(@NonNull final CtaRequestType requestType, @NonNull final MultiValuedMap<String, String> params) throws ConnectException { final StringBuilder address; switch (requestType) { case TRAIN_ARRIVALS: address = new StringBuilder(TRAINS_ARRIVALS_URL + "?key=" + ctaTrainKey); break; case TRAIN_FOLLOW: address = new StringBuilder(TRAINS_FOLLOW_URL + "?key=" + ctaTrainKey); break; case TRAIN_LOCATION: address = new StringBuilder(TRAINS_LOCATION_URL + "?key=" + ctaTrainKey); break; case BUS_ROUTES: address = new StringBuilder(BUSES_ROUTES_URL + "?key=" + ctaBusKey); break; case BUS_DIRECTION: address = new StringBuilder(BUSES_DIRECTION_URL + "?key=" + ctaBusKey); break; case BUS_STOP_LIST: address = new StringBuilder(BUSES_STOP_URL + "?key=" + ctaBusKey); break; case BUS_VEHICLES: address = new StringBuilder(BUSES_VEHICLES_URL + "?key=" + ctaBusKey); break; case BUS_ARRIVALS: address = new StringBuilder(BUSES_ARRIVAL_URL + "?key=" + ctaBusKey); break; case BUS_PATTERN: address = new StringBuilder(BUSES_PATTERN_URL + "?key=" + ctaBusKey); break; default: address = new StringBuilder(); } Stream.of(params.asMap().entrySet()).flatMap(entry -> { final String key = entry.getKey(); return Stream.of(entry.getValue()) .map(value -> new StringBuilder().append("&").append(key).append("=").append(value)); }).forEach(address::append); return connectUrl(address.toString()); }
From source file:org.phenotips.vocabulary.AbstractCSVAnnotationsExtension.java
@Override public void extendTerm(VocabularyInputTerm term, Vocabulary vocabulary) { MultiValuedMap<String, String> termData = this.data.get(term.getId()); if (termData == null || termData.isEmpty()) { return;/*from w ww. java 2 s.c om*/ } for (Map.Entry<String, Collection<String>> datum : termData.asMap().entrySet()) { if (!datum.getValue().isEmpty()) { term.set(datum.getKey(), datum.getValue()); } } }