Use is subject to License Terms. Your use of this web site or any of its content or software indicates your agreement to be bound by these License Terms.

Copyright © 2006 Sun Microsystems, Inc. All rights reserved.

JSR-927 (Maintenance Release)

javax.tv.service
Interface Service


public interface Service

The Service interface represents an abstract view on what is generally referred to as a television "service" or "channel". It may represent an MPEG-2 program, DVB service, an ATSC virtual channel, SCTE virtual channel, etc. It represents the basic information associated with a service, such as its name or number, which is guaranteed to be available on the receiver.

Internal to the receiver, each service is uniquely identified by information that may include system type, network ID, transport stream ID, service number, service number, or other information. This identification is encapsulated by the Locator object.

Note that a Service object may represent multiple instances of the same content delivered over different media (e.g., the same service may be delivered over a terrestrial and cable network). A ServiceDetails object represents a specific instance of such content which is bound to a specific delivery mechanism.

The information available through this object, i.e., the service name, service number, etc., represents information that is stored in the receiver and is not necessarily the same as what is broadcast in any broadcast service information protocol. For example, a receiver implementation may let the end user edit this information according to the user's preferences.

A Service object may optionally implement an interface that supports service numbers. Each Service object must provide either a service name (via the getName method) or a service number (via the ServiceNumber interface).

See Also:
getName(), ServiceNumber, ServiceDetails, Optionally implemented interfaces

Method Summary
 boolean equals(java.lang.Object obj)
          Tests two Service objects for equality.
 Locator getLocator()
          Reports the Locator of this Service.
 java.lang.String getName()
          Returns a short service name or acronym.
 ServiceType getServiceType()
          Returns the type of this service, (for example, "digital television", "digital radio", "NVOD", etc.) These values can be mapped to the ATSC service type in the VCT table and the DVB service type in the service descriptor.
 int hashCode()
          Reports the hash code value of this Service.
 boolean hasMultipleInstances()
          This method indicates whether the service represented by this Service object is available on multiple transports, (e.g., the same content delivered over terrestrial and cable network).
 SIRequest retrieveDetails(SIRequestor requestor)
          This method retrieves additional information about the Service.
 

Method Detail

retrieveDetails

public SIRequest retrieveDetails(SIRequestor requestor)
This method retrieves additional information about the Service. This information is retrieved from the broadcast service information.

Note that if the content represented by this Service is delivered on multiple transport-dependent streams there may be multiple ServiceDetails for it. This method retrieves one of them based on availability or user preferences. If access to all possible ServiceDetails is required, the service Locator can be transformed to transport-dependent Locator instances and ServiceDetails can be retrieved for each.

This method returns data asynchronously.

Parameters:
requestor - The SIRequestor to be notified when this retrieval operation completes.
Returns:
An SIRequest object identifying this asynchronous retrieval request.
See Also:
Locator, ServiceDetails

getName

public java.lang.String getName()
Returns a short service name or acronym. For example, in ATSC systems the service name is provided by the the PSIP VCT; in DVB systems, this information is provided by the DVB Service Descriptor or the Multilingual Service Name Descriptor. The service name may also be user-defined.

Returns:
A string representing this service's short name. If the short name is unavailable, the string representation of the service number is returned.

hasMultipleInstances

public boolean hasMultipleInstances()
This method indicates whether the service represented by this Service object is available on multiple transports, (e.g., the same content delivered over terrestrial and cable network).

Returns:
true if multiple transports carry the same content identified by this Service object; false if there is only one instance of this service.

getServiceType

public ServiceType getServiceType()
Returns the type of this service, (for example, "digital television", "digital radio", "NVOD", etc.) These values can be mapped to the ATSC service type in the VCT table and the DVB service type in the service descriptor.

Returns:
Service type of this Service.

getLocator

public Locator getLocator()
Reports the Locator of this Service. Note that if the resulting locator is transport-dependent, it will also correspond to a ServiceDetails object.

Returns:
A locator referencing this Service.
See Also:
ServiceDetails

equals

public boolean equals(java.lang.Object obj)
Tests two Service objects for equality. Returns true if and only if:

Parameters:
obj - The object against which to test for equality.
Returns:
true if the two Service objects are equal; false otherwise.

hashCode

public int hashCode()
Reports the hash code value of this Service. Two Service objects that are equal will have identical hash codes.

Returns:
The hash code value of this Service.

JSR-927 (Maintenance Release)

Copyright © 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to License Terms. Your use of this web site or any of its content or software indicates your agreement to be bound by these License Terms.

For more information, please consult the JSR 927 specification.