@Override public Metric metric(CanonicalPath metric) { Query query = Query.path().with(With.path(metric), With.type(Metric.class)).get(); Page<Metric> page = inventory.execute(query, Metric.class, Pager.unlimited(Order.unspecified())); List<Metric> metrics = page.toList(); return metrics.isEmpty() ? null : metrics.get(0); }
@Override public Set<Metric> metricsOfType(CanonicalPath metricType) { Query query = Query.path() .with(With.path(metricType)) .with(Related.by(Relationships.WellKnown.defines)) .with(With.type(Metric.class)) .get(); Page<Metric> page = inventory.execute(query, Metric.class, Pager.unlimited(Order.unspecified())); List<Metric> metrics = page.toList(); return new HashSet<>(metrics); }