Class VJournal

All Implemented Interfaces:
Serializable, ComponentContainer<Component>, FluentComponent, PropertyContainer, RecurrenceSupport<VJournal>

public class VJournal extends CalendarComponent implements ComponentContainer<Component>, RecurrenceSupport<VJournal>
$Id$ [Apr 5, 2004] Defines an iCalendar VJOURNAL component.
    4.6.3 Journal Component

       Component Name: VJOURNAL

       Purpose: Provide a grouping of component properties that describe a
       journal entry.

       Formal Definition: A "VJOURNAL" calendar component is defined by the
       following notation:

         journalc   = "BEGIN" ":" "VJOURNAL" CRLF
                      jourprop
                      "END" ":" "VJOURNAL" CRLF

         jourprop   = *(

                    ; the following are optional,
                    ; but MUST NOT occur more than once

                    class / created / description / dtstart / dtstamp /
                    last-mod / organizer / recurid / seq / status /
                    summary / uid / url /

                    ; the following are optional,
                    ; and MAY occur more than once

                    attach / attendee / categories / comment /
                    contact / exdate / exrule / related / rdate /
                    rrule / rstatus / x-prop

                    )
 
Example 1 - Creating a journal associated with an event:

 DtStart meetingDate = (DtStart) meeting.getProperties().getProperty(
         Property.DTSTART);

 VJournal minutes = new VJournal(meetingDate.getTime(),
         "Progress Meeting - Minutes");

 // add timezone information..
 TzId tzParam = meetingDate.getParameters().getParmaeter(Parameter.TZID);
 minutes.getProperties().getProperty(Property.DTSTART).getParameters().add(
         tzParam);

 // add description..
 minutes.getProperties().add(new Description("1. Agenda.., 2. Action Items.."));
 
See Also:
  • Constructor Details

    • VJournal

      public VJournal()
      Default constructor.
    • VJournal

      public VJournal(boolean initialise)
    • VJournal

      public VJournal(PropertyList properties)
      Constructor.
      Parameters:
      properties - a list of properties
    • VJournal

      public VJournal(Date start, String summary)
      Constructs a new VJOURNAL instance associated with the specified time with the specified summary.
      Parameters:
      start - the date the journal entry is associated with
      summary - the journal summary
  • Method Details

    • validate

      public ValidationResult validate(boolean recurse) throws ValidationException
      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
    • getValidator

      protected Validator getValidator(Method method)
      Specified by:
      getValidator in class CalendarComponent
      Parameters:
      method - a method to validate on
      Returns:
      a validator for the specified method or null if the method is not supported
    • getComponents

      public ComponentList<Component> getComponents()
      Specified by:
      getComponents in interface ComponentContainer<Component>
    • getClassification

      public final Clazz getClassification()
      Returns:
      the optional access classification property for a journal entry
    • getCreated

      public final Created getCreated()
      Returns:
      the optional creation-time property for a journal entry
    • getDescription

      public final Description getDescription()
      Returns:
      the optional description property for a journal entry
    • getStartDate

      public final DtStart getStartDate()
      Convenience method to pull the DTSTART out of the property list.
      Returns:
      The DtStart object representation of the start Date
    • getLastModified

      public final LastModified getLastModified()
      Returns:
      the optional last-modified property for a journal entry
    • getOrganizer

      public final Organizer getOrganizer()
      Returns:
      the optional organizer property for a journal entry
    • getDateStamp

      public final DtStamp getDateStamp()
      Returns:
      the optional date-stamp property
    • getSequence

      public final Sequence getSequence()
      Returns:
      the optional sequence number property for a journal entry
    • getStatus

      public final Status getStatus()
      Returns:
      the optional status property for a journal entry
    • getSummary

      public final Summary getSummary()
      Returns:
      the optional summary property for a journal entry
    • getUrl

      public final Url getUrl()
      Returns:
      the optional URL property for a journal entry
    • getRecurrenceId

      public final RecurrenceId getRecurrenceId()
      Returns:
      the optional recurrence identifier property for a journal entry
    • getUid

      public final Uid getUid()
      Returns the UID property of this component if available.
      Returns:
      a Uid instance, or null if no UID property exists