net.fortuna.ical4j.model.component

## Class VJournal

- java.lang.Object
- - net.fortuna.ical4j.model.Component
  - - net.fortuna.ical4j.model.component.CalendarComponent
    - - net.fortuna.ical4j.model.component.VJournal

All Implemented Interfaces:
  Serializable

    public class VJournal
    extends CalendarComponent

$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.."));

Author:
  Ben Fortuna
See Also:
  Serialized Form

### Field Summary

### Fields inherited from class net.fortuna.ical4j.model.component.CalendarComponent

`EMPTY_VALIDATOR`

### Fields inherited from class net.fortuna.ical4j.model.Component

`AVAILABLE, BEGIN, END, EXPERIMENTAL_PREFIX, VALARM, VAVAILABILITY, VEVENT, VFREEBUSY, VJOURNAL, VTIMEZONE, VTODO, VVENUE`

### Constructor Summary

Constructors
Constructor and Description
`VJournal()` Default constructor.
`VJournal(Date start, String summary)` Constructs a new VJOURNAL instance associated with the specified time with the specified summary.
`VJournal(PropertyList properties)` Constructor.

### Method Summary

Methods
`Clazz` `getClassification()`
`Created` `getCreated()`
`DtStamp` `getDateStamp()`
`Description` `getDescription()`
`LastModified` `getLastModified()`
`Organizer` `getOrganizer()`
`RecurrenceId` `getRecurrenceId()`
`Sequence` `getSequence()`
`DtStart` `getStartDate()` Convenience method to pull the DTSTART out of the property list.
`Status` `getStatus()`
`Summary` `getSummary()`
`Uid` `getUid()` Returns the UID property of this component if available.
`Url` `getUrl()`
`protected Validator` `getValidator(Method method)`
`void` `validate(boolean recurse)` Perform validation on a component.

### Methods inherited from class net.fortuna.ical4j.model.component.CalendarComponent

`validate, validateAdd, validateCancel, validateCounter, validateDeclineCounter, validatePublish, validateRefresh, validateReply, validateRequest`

### Methods inherited from class net.fortuna.ical4j.model.Component

`calculateRecurrenceSet, copy, equals, getName, getProperties, getProperties, getProperty, hashCode, toString, validate, validateProperties`

### Methods inherited from class java.lang.Object

`clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### VJournal

    public VJournal()

Default constructor.

#### 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 Detail

#### validate

    public final void 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

#### 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