
javax.tv.service.guide.ContentRatingAdvisory Maven / Gradle / Ivy
/*
* @(#)ContentRatingAdvisory.java 1.31 00/10/09
*
* Copyright 1998-2000 by Sun Microsystems, Inc.,
* 901 San Antonio Road, Palo Alto, California, 94303, U.S.A.
* All rights reserved.
*
* This software is the confidential and proprietary information
* of Sun Microsystems, Inc. ("Confidential Information"). You
* shall not disclose such Confidential Information and shall use
* it only in accordance with the terms of the license agreement
* you entered into with Sun.
*/
package javax.tv.service.guide;
import javax.tv.service.SIException;
/**
* ContentRatingAdvisory indicates, for a given program event, ratings
* for any or all of the rating dimensions defined in the content
* rating system for the local rating region. A program event without
* a content advisory indicates that the rating value for any rating
* dimension is zero. The absence of ratings for a specific dimension
* is equivalent to having a zero-valued rating for such a
* dimension. The absence of ratings for a specific region implies the
* absence of ratings for all the dimensions in the region.
*
* For example, this information may be obtained in the ATSC Content
* Advisory Descriptor or the DVB Parental Rating Descriptor. Note
* that the DVB rating system is based on age only. It can be easily
* mapped to this rating system as one of the dimensions.
*
* @see javax.tv.service.guide.ProgramEvent */
public interface ContentRatingAdvisory {
/**
* Returns a list of names of all dimensions in this rating
* region by which the ProgramEvent
is rated.
*
* @return An array of strings representing all rated dimensions in this
* rating region for the ProgramEvent
.
*
* @see javax.tv.service.RatingDimension
*/
public abstract String[] getDimensionNames();
/**
* Returns a number representing the rating level in the specified
* RatingDimension
associated with this rating region
* for the related ProgramEvent
.
*
* @param dimensionName The name of the RatingDimension
* for which to obtain the rating level.
*
* @return A number representing the rating level. The meaning is
* dependent on the associated rating dimension.
*
* @throws SIException If dimensionName
is not a valid
* name of a RatingDimension
for the ProgramEvent.
*
* @see javax.tv.service.RatingDimension#getDimensionName */
public abstract short getRatingLevel(String dimensionName)
throws SIException;
/**
* Returns the rating level display string for the specified
* dimension. The string is identical to
* d.getRatingLevelDescription(getRatingLevel(dimensionName))[1]
,
* where d
is the RatingDimension
obtained
* by
* javax.tv.service.SIManager.getRatingDimension(dimensionName)
.
*
* @param dimensionName The name of the RatingDimension
* for which to obtain the rating level text.
*
* @return A string representing the textual value of this rating level.
*
* @throws SIException If dimensionName is not a valid
* RatingDimension
name for the ProgramEvent
.
*
* @see javax.tv.service.RatingDimension#getDimensionName
* @see javax.tv.service.RatingDimension#getRatingLevelDescription
*/
public abstract String getRatingLevelText(String dimensionName)
throws SIException;
/**
* Provides a single string representing textual rating values for all
* dimensions in which the program event is rated.
* The result will be a representation of the strings obtained via
* d.getRatingLevelDescription(getRatingLevel(d.getDimensionName()))[0]
,
* for all dimensions d
obtained through
* javax.tv.service.SIManager.getRatingDimension(n)
,
* for all dimension names n
obtained from
* getDimensionNames()
.
*
* @return A string representing the rating level values for all
* dimensions in which this program event is rated. The format of
* the string may be implementation-specific.
*
* @see #getDimensionNames
* @see javax.tv.service.RatingDimension#getRatingLevelDescription
*/
public String getDisplayText();
/**
* Compares the current rating value with the system rating
* ceiling. The rating ceiling is set in a system-dependent manner.
* Content that exceeds the rating ceiling cannot be displayed.
*
* @return true
if the rating exceeds the current
* system rating ceiling; false
otherwise. */
public boolean exceeds();
}