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.navigation
Interface ServiceDetails

All Superinterfaces:
CAIdentification, SIElement, SIRetrievable

public interface ServiceDetails
extends SIElement, CAIdentification

This interface provides access to service meta-data. It provides more information about a Service object and represents a specific instance of a service bound to a transport stream.

A ServiceDetails object may optionally implement the ServiceNumber interface to report service numbers as assigned by the broadcaster of the service.

A ServiceDetails object may optionally implement the ServiceProviderInformation interface to report information concerning the service provider.

See Also:
Service, ServiceNumber, ServiceProviderInformation, Optionally implemented interfaces

Method Summary
 void addServiceComponentChangeListener(ServiceComponentChangeListener listener)
          Registers a ServiceComponentChangeListener to be notified of changes to a ServiceComponent that is part of this ServiceDetails.
 DeliverySystemType getDeliverySystemType()
          Reports the type of mechanism by which this service was delivered.
 java.lang.String getLongName()
          Called to obtain a full service name.
 ProgramSchedule getProgramSchedule()
          Returns a schedule of program events associated with this service.
 Service getService()
          Returns the Service this ServiceDetails object is associated with.
 ServiceType getServiceType()
          Returns the type of this service, for example, "digital television", "digital radio", "NVOD", etc.
 void removeServiceComponentChangeListener(ServiceComponentChangeListener listener)
          Called to unregister an ServiceComponentChangeListener.
 SIRequest retrieveComponents(SIRequestor requestor)
          Retrieves an array of elementary components which are part of this service.
 SIRequest retrieveServiceDescription(SIRequestor requestor)
          Retrieves a textual description of this service if available.
 
Methods inherited from interface javax.tv.service.SIElement
equals, getLocator, getServiceInformationType, hashCode
 
Methods inherited from interface javax.tv.service.SIRetrievable
getUpdateTime
 
Methods inherited from interface javax.tv.service.navigation.CAIdentification
getCASystemIDs, isFree
 

Method Detail

retrieveServiceDescription

public SIRequest retrieveServiceDescription(SIRequestor requestor)
Retrieves a textual description of this service if available. This method delivers its results asynchronously.

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

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.

retrieveComponents

public SIRequest retrieveComponents(SIRequestor requestor)
Retrieves an array of elementary components which are part of this service. The array will only contain ServiceComponent instances c for which the caller has javax.tv.service.ReadPermission(c.getLocator()). If no ServiceComponent instances meet this criteria, this method will result in an SIRequestFailureType of DATA_UNAVAILABLE. This method delivers its results asynchronously.

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

getProgramSchedule

public ProgramSchedule getProgramSchedule()
Returns a schedule of program events associated with this service.

Returns:
The program schedule for this service, or null if no schedule is available.

getLongName

public java.lang.String getLongName()
Called to obtain a full service name. For example, this information may be delivered in the ATSC Extended Channel Name Descriptor, the DVB Service Descriptor or the DVB Multilingual Service Name Descriptor.

Returns:
A string representing the full service name, or an empty string if the name is not available.

getService

public Service getService()
Returns the Service this ServiceDetails object is associated with.

Returns:
The Service to which this ServiceDetails belongs.

addServiceComponentChangeListener

public void addServiceComponentChangeListener(ServiceComponentChangeListener listener)
Registers a ServiceComponentChangeListener to be notified of changes to a ServiceComponent that is part of this ServiceDetails. Subsequent notification is made via ServiceComponentChangeEvent with this ServiceDetails instance as the event source and an SIChangeType of ADD, REMOVE or MODIFY. Only changes to ServiceComponent instances c for which the caller has javax.tv.service.ReadPermission(c.getLocator()) will be reported.

This method is only a request for notification. No guarantee is provided that the SI database will detect all, or even any, SI changes or whether such changes will be detected in a timely fashion.

If the specified ServiceComponentChangeListener is already registered, no action is performed.

Parameters:
listener - A ServiceComponentChangeListener to be notified about changes related to a ServiceComponent in this ServiceDetails.
See Also:
ServiceComponentChangeEvent, ReadPermission

removeServiceComponentChangeListener

public void removeServiceComponentChangeListener(ServiceComponentChangeListener listener)
Called to unregister an ServiceComponentChangeListener. If the specified ServiceComponentChangeListener is not registered, no action is performed.

Parameters:
listener - A previously registered listener.

getDeliverySystemType

public DeliverySystemType getDeliverySystemType()
Reports the type of mechanism by which this service was delivered.

Returns:
The delivery system type 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.