Interface Record

  • All Superinterfaces:
    it.tidalwave.util.As, Dumpable, Entity, it.tidalwave.role.Identifiable, SourceAware

    public interface Record
    extends Entity, SourceAware, it.tidalwave.role.Identifiable
    Represents a record made of audio tracks. Maps the homonymous concept from the Music Ontology.
    Author:
    Fabrizio Giudici
    Stereotype:
    Datum
    • Nested Class Summary

      • Nested classes/interfaces inherited from interface it.tidalwave.util.As

        it.tidalwave.util.As.Defaults, it.tidalwave.util.As.NotFoundBehaviour<T extends java.lang.Object>
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.Class<Record> _Record_  
      • Fields inherited from interface it.tidalwave.role.Identifiable

        _Identifiable_
    • Method Summary

      All Methods Instance Methods Abstract Methods 
      Modifier and Type Method Description
      TrackFinder findTracks()
      Finds the Tracks in this record.
      java.util.Optional<java.lang.String> getAsin()
      Returns the Amazon ASIN of this record.
      java.util.Optional<java.lang.Integer> getDiskCount()
      If this record is part of a multiple record release, return the count of disks in the release.
      java.util.Optional<java.lang.Integer> getDiskNumber()
      If this record is part of a multiple record release, return its disk number.
      java.util.Optional<java.lang.String> getGtin()
      Returns the bar code of this record.
      java.util.Optional<java.net.URL> getImageUrl()
      Returns the cover image URL of this record.
      java.util.Optional<java.lang.Integer> getTrackCount()
      Returns the number of tracks in this record, if available.
      • Methods inherited from interface it.tidalwave.util.As

        as, as, asMany, asOptional, maybeAs
      • Methods inherited from interface it.tidalwave.role.Identifiable

        getId
    • Field Detail

      • _Record_

        static final java.lang.Class<Record> _Record_
    • Method Detail

      • getDiskNumber

        @Nonnull
        java.util.Optional<java.lang.Integer> getDiskNumber()
        If this record is part of a multiple record release, return its disk number.
        Returns:
        the disk number
      • getDiskCount

        @Nonnull
        java.util.Optional<java.lang.Integer> getDiskCount()
        If this record is part of a multiple record release, return the count of disks in the release.
        Returns:
        the disk count
      • getTrackCount

        @Nonnull
        java.util.Optional<java.lang.Integer> getTrackCount()
        Returns the number of tracks in this record, if available. Note that this value is the number of tracks contained in the release, and might differ from findTracks().count() if only a subset of tracks is available in the catalog (for instance, if not all of them have been bought/imported).
        Returns:
        the track count
        See Also:
        findTracks()
      • getAsin

        @Nonnull
        java.util.Optional<java.lang.String> getAsin()
        Returns the Amazon ASIN of this record.
        Returns:
        the Amazon ASIN
      • getGtin

        @Nonnull
        java.util.Optional<java.lang.String> getGtin()
        Returns the bar code of this record.
        Returns:
        the bar code
      • getImageUrl

        @Nonnull
        java.util.Optional<java.net.URL> getImageUrl()
        Returns the cover image URL of this record.
        Returns:
        the cover image URL