org.ocap.shared.dvr
Class ServiceRecordingSpec

java.lang.Object
  extended by org.ocap.shared.dvr.RecordingSpec
      extended by org.ocap.shared.dvr.ServiceRecordingSpec

public class ServiceRecordingSpec
extends RecordingSpec

Specifies a recording request in terms of a Service.

When instances of this class are passed to RecordingManager.record(..), the following additional failure mode shall apply - if the end time (computed as the start time + the duration) is in the past when the record method is called, the record method shall throw an IllegalArgumentException.

When an instance of this recording spec is passed in as a parameter to the RecordingRequest.reschedule(..) method, an IllegalArgumentException shall be thrown if either of the following apply;

When instances of this class are passed to RecordingManager.record(..), if the start time is in the past and either then the current time shall be used as the start time and the duration reduced accordingly. The present document does not require implementations to include already recorded content in scheduled recordings however GEM recording specifications may require this.


Constructor Summary
ServiceRecordingSpec(javax.tv.service.Service source, java.util.Date startTime, long duration, RecordingProperties properties)
          Constructor.
 
Method Summary
 long getDuration()
          Returns the duration passed as an argument to the constructor.
 javax.tv.service.Service getSource()
          Returns the source of the recording
 java.util.Date getStartTime()
          Returns the start time passed as an argument to the constructor.
 
Methods inherited from class org.ocap.shared.dvr.RecordingSpec
getProperties
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ServiceRecordingSpec

public ServiceRecordingSpec(javax.tv.service.Service source,
                            java.util.Date startTime,
                            long duration,
                            RecordingProperties properties)
                     throws java.lang.IllegalArgumentException
Constructor.

Parameters:
source - the service to be recorded
startTime - Start time of the recording. Changes to this parameter after the constructor returns shall have no effect on the actual start time of the recording.
duration - Length of time to record in milli-seconds.
properties - The definition of how the recording is to be done.
Throws:
java.lang.IllegalArgumentException - if the source is not a broadcast service or if the duration is negative
Method Detail

getSource

public javax.tv.service.Service getSource()
Returns the source of the recording

Returns:
the source passed into the constructor

getStartTime

public java.util.Date getStartTime()
Returns the start time passed as an argument to the constructor.

Returns:
a copy of the start time passed into the constructor

getDuration

public long getDuration()
Returns the duration passed as an argument to the constructor.

Returns:
the duration passed into the constructor