net.fortuna.ical4j.model.component
Class VTimeZone

java.lang.Object
  extended bynet.fortuna.ical4j.model.Component
      extended bynet.fortuna.ical4j.model.component.CalendarComponent
          extended bynet.fortuna.ical4j.model.component.VTimeZone
All Implemented Interfaces:
Serializable

public class VTimeZone
extends CalendarComponent

Defines an iCalendar VTIMEZONE component.

    4.6.5 Time Zone Component
    
       Component Name: VTIMEZONE
    
       Purpose: Provide a grouping of component properties that defines a
       time zone.
    
       Formal Definition: A "VTIMEZONE" calendar component is defined by the
       following notation:
    
         timezonec  = "BEGIN" ":" "VTIMEZONE" CRLF
    
                      2*(
    
                      ; 'tzid' is required, but MUST NOT occur more
                      ; than once
    
                    tzid /
    
                      ; 'last-mod' and 'tzurl' are optional,
                    but MUST NOT occur more than once
    
                    last-mod / tzurl /
    
                      ; one of 'standardc' or 'daylightc' MUST occur
                    ..; and each MAY occur more than once.
    
                    standardc / daylightc /
    
                    ; the following is optional,
                    ; and MAY occur more than once
    
                      x-prop
    
                      )
    
                      "END" ":" "VTIMEZONE" CRLF
    
         standardc  = "BEGIN" ":" "STANDARD" CRLF
    
                      tzprop
    
                      "END" ":" "STANDARD" CRLF
    
         daylightc  = "BEGIN" ":" "DAYLIGHT" CRLF
    
                      tzprop
    
                      "END" ":" "DAYLIGHT" CRLF
    
         tzprop     = 3*(
    
                    ; the following are each REQUIRED,
                    ; but MUST NOT occur more than once
    
                    dtstart / tzoffsetto / tzoffsetfrom /
    
                    ; the following are optional,
                    ; and MAY occur more than once
    
                    comment / rdate / rrule / tzname / x-prop
    
                    )
 

Author:
Ben Fortuna
See Also:
Serialized Form

Field Summary
 
Fields inherited from class net.fortuna.ical4j.model.Component
BEGIN, END, EXPERIMENTAL_PREFIX, VALARM, VEVENT, VFREEBUSY, VJOURNAL, VTIMEZONE, VTODO
 
Constructor Summary
VTimeZone()
          Default constructor.
VTimeZone(ComponentList observances)
          Constructs a new vtimezone component with no properties and the specified list of type components.
VTimeZone(PropertyList properties)
          Constructs a new instance containing the specified properties.
VTimeZone(PropertyList properties, ComponentList observances)
          Constructor.
 
Method Summary
 Observance getApplicableObservance(Date date)
          Returns the latest applicable timezone observance for the specified date.
 LastModified getLastModified()
           
 ComponentList getObservances()
           
 TzId getTimeZoneId()
           
 TzUrl getTimeZoneUrl()
           
 String toString()
           
 void validate(boolean recurse)
          Perform validation on a component.
 
Methods inherited from class net.fortuna.ical4j.model.Component
equals, getName, getProperties, getProperties, getProperty, hashCode, validate, validateProperties
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

VTimeZone

public VTimeZone()
Default constructor.


VTimeZone

public VTimeZone(PropertyList properties)
Constructs a new instance containing the specified properties.

Parameters:
properties - a list of properties

VTimeZone

public VTimeZone(ComponentList observances)
Constructs a new vtimezone component with no properties and the specified list of type components.

Parameters:
observances - a list of type components

VTimeZone

public VTimeZone(PropertyList properties,
                 ComponentList observances)
Constructor.

Parameters:
properties - a list of properties
observances - a list of timezone types
Method Detail

toString

public final String toString()
Overrides:
toString in class Component
See Also:
Object.toString()

validate

public final void validate(boolean recurse)
                    throws ValidationException
Description copied from class: Component
Perform validation on a component.

Specified by:
validate in class Component
Parameters:
recurse - indicates whether to validate the component's properties
Throws:
ValidationException - where the component is not in a valid state

getObservances

public final ComponentList getObservances()
Returns:
Returns the types.

getApplicableObservance

public final Observance getApplicableObservance(Date date)
Returns the latest applicable timezone observance for the specified date.

Parameters:
date - the latest possible date for a timezone observance onset
Returns:
the latest applicable timezone observance for the specified date or null if there are no applicable observances

getTimeZoneId

public final TzId getTimeZoneId()
Returns:
the mandatory timezone identifier property

getLastModified

public final LastModified getLastModified()
Returns:
the optional last-modified property

getTimeZoneUrl

public final TzUrl getTimeZoneUrl()
Returns:
the optional timezone url property