public RecordResource (final @Nonnull Record record) { this.id = record.getId().stringValue(); this.displayName = record.as(Displayable).getDisplayName(); this.diskCount = record.getDiskCount(); this.diskNumber = record.getDiskNumber(); this.trackCount = record.getTrackCount(); this.source = record.getSource().map(Id::toString); this.asin = record.getAsin(); this.gtin = record.getGtin(); this.details = resourceUri("record", record); } }
@Override @Nonnull public TrackFinder findChildren() { return record.findTracks(); } }
records.forEach(record -> pw.printf(" %s - %d tracks - %s%n", displayNameOf(record), record.findTracks().count(), record.getSource().orElse(new Id("unknown")))); pw.printf(" COUNT OF ALL RECORDS RETRIEVED BY %d QUERIES%n", recordCountQueryCount); pw.printf(" ALL RECORDS RETRIEVED BY %d QUERIES%n", getLatestQueryCount()); pw.printf("%nRECORDS OF %s (%d):%n", displayNameOf(artist), recordFinder.count()); recordFinder.stream().forEach(record -> pw.printf(" %s%n", displayNameOf(record))); recordFinder.stream().forEach(record -> assertEquals(record.getSource(), artist.getSource())); pw.printf(" RETRIEVED BY %d QUERIES%n", getLatestQueryCount()); }); pw.printf(" SOURCE: %s%n", record.getSource().orElse(new Id("unknown"))); record.getAsin().ifPresent(asin -> pw.printf(" ASIN: %s%n", asin)); record.getGtin().ifPresent(gtin -> pw.printf(" BARCODE: %s%n", gtin)); final TrackFinder recordTrackFinder = record.findTracks(); pw.printf(" TRACKS (%d / %s):%n", recordTrackFinder.count(), record.getTrackCount()); .map(this::displayNameOf) .collect(joining("\n : ", " : ", "")))); assertEquals(track.getSource(), record.getSource()); });
/******************************************************************************************************************* * * Constrains the search to tracks contained in the given record. * * @param record the record * @return the {@code Finder}, in fluent fashion * ******************************************************************************************************************/ @Nonnull public default TrackFinder inRecord (final @Nonnull Record record) { return inRecord(record.getId()); } }
trackMetadata.get(TRACK_NUMBER).ifPresent(item::setOriginalTrackNumber); datum.getRecord().flatMap(record -> record.asOptional(Displayable)) .map(d -> d.getDisplayName()) .ifPresent(item::setAlbum);
/******************************************************************************************************************* * * {@inheritDoc} * ******************************************************************************************************************/ @Override @Nonnull protected QueryAndParameters prepareQuery() { return QueryAndParameters.withSparql(QUERY_RECORD_IMAGE) .withParameter("record", iriFor(record.getId())); } }