nl.vpro.domain.classification.ClassificationService Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of media-classification Show documentation
Show all versions of media-classification Show documentation
The classes needed for the 'classification' service used in POMS.
This os based on ClassificationScheme xml's as provided by EBU.
It at the moment is only used for genres, but it could in principle accommodate other types of classification based on
a fixed list.
package nl.vpro.domain.classification;
import java.time.Instant;
import java.util.Collection;
import java.util.List;
/**
* Access to the possible 'term ids', and {@link Term}, which is basicly used to define the possible 'genres' in POMs
*
*
* @author Michiel Meeuwissen
* @since 3.2
*/
public interface ClassificationService {
/**
* Returns the Term with the given id.
* @param termId
* @throws TermNotFoundException if no such term
*/
Term getTerm(String termId) throws TermNotFoundException;
List getTermsByReference(String reference);
boolean hasTerm(String termId);
Collection values();
Collection valuesOf(String termId);
ClassificationScheme getClassificationScheme();
Instant getLastModified();
}